keywordgraph-mcp-server 1.7.4 → 1.8.5

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 (161) hide show
  1. package/README.md +73 -8
  2. package/dist/api/client.d.ts +3 -1
  3. package/dist/api/client.d.ts.map +1 -1
  4. package/dist/api/client.js +2 -1
  5. package/dist/api/client.js.map +1 -1
  6. package/dist/api/config-store.d.ts +11 -0
  7. package/dist/api/config-store.d.ts.map +1 -1
  8. package/dist/api/config-store.js +7 -0
  9. package/dist/api/config-store.js.map +1 -1
  10. package/dist/config/brand.d.ts.map +1 -1
  11. package/dist/config/brand.js +11 -0
  12. package/dist/config/brand.js.map +1 -1
  13. package/dist/index.d.ts.map +1 -1
  14. package/dist/index.js +83 -6
  15. package/dist/index.js.map +1 -1
  16. package/dist/instructions.d.ts.map +1 -1
  17. package/dist/instructions.js +10 -3
  18. package/dist/instructions.js.map +1 -1
  19. package/dist/prompts/index.d.ts.map +1 -1
  20. package/dist/prompts/index.js +32 -0
  21. package/dist/prompts/index.js.map +1 -1
  22. package/dist/resources/about.d.ts.map +1 -1
  23. package/dist/resources/about.js +9 -1
  24. package/dist/resources/about.js.map +1 -1
  25. package/dist/schemas/index.d.ts +466 -63
  26. package/dist/schemas/index.d.ts.map +1 -1
  27. package/dist/schemas/index.js +435 -34
  28. package/dist/schemas/index.js.map +1 -1
  29. package/dist/tools/addMemory.d.ts +1 -0
  30. package/dist/tools/addMemory.d.ts.map +1 -1
  31. package/dist/tools/addProjectLearnings.d.ts +30 -0
  32. package/dist/tools/addProjectLearnings.d.ts.map +1 -0
  33. package/dist/tools/addProjectLearnings.js +197 -0
  34. package/dist/tools/addProjectLearnings.js.map +1 -0
  35. package/dist/tools/analyzeLlmResults.d.ts +1 -1
  36. package/dist/tools/analyzeLlmResults.d.ts.map +1 -1
  37. package/dist/tools/analyzeLlmResults.js +5 -2
  38. package/dist/tools/analyzeLlmResults.js.map +1 -1
  39. package/dist/tools/analyzeText.d.ts +1 -0
  40. package/dist/tools/analyzeText.d.ts.map +1 -1
  41. package/dist/tools/analyzeTextSignature.d.ts +38 -0
  42. package/dist/tools/analyzeTextSignature.d.ts.map +1 -0
  43. package/dist/tools/analyzeTextSignature.js +82 -0
  44. package/dist/tools/analyzeTextSignature.js.map +1 -0
  45. package/dist/tools/createKnowledgeGraph.d.ts +1 -0
  46. package/dist/tools/createKnowledgeGraph.d.ts.map +1 -1
  47. package/dist/tools/deleteGraph.d.ts +43 -0
  48. package/dist/tools/deleteGraph.d.ts.map +1 -0
  49. package/dist/tools/deleteGraph.js +145 -0
  50. package/dist/tools/deleteGraph.js.map +1 -0
  51. package/dist/tools/deleteStatements.d.ts +106 -0
  52. package/dist/tools/deleteStatements.d.ts.map +1 -0
  53. package/dist/tools/deleteStatements.js +288 -0
  54. package/dist/tools/deleteStatements.js.map +1 -0
  55. package/dist/tools/developConceptualBridges.d.ts +2 -1
  56. package/dist/tools/developConceptualBridges.d.ts.map +1 -1
  57. package/dist/tools/developLatentTopics.d.ts +2 -1
  58. package/dist/tools/developLatentTopics.d.ts.map +1 -1
  59. package/dist/tools/developTextTool.d.ts +2 -1
  60. package/dist/tools/developTextTool.d.ts.map +1 -1
  61. package/dist/tools/enableProjectLearnings.d.ts +27 -0
  62. package/dist/tools/enableProjectLearnings.d.ts.map +1 -0
  63. package/dist/tools/enableProjectLearnings.js +68 -0
  64. package/dist/tools/enableProjectLearnings.js.map +1 -0
  65. package/dist/tools/generateContentGaps.d.ts +1 -0
  66. package/dist/tools/generateContentGaps.d.ts.map +1 -1
  67. package/dist/tools/generateContextualHint.d.ts +1 -0
  68. package/dist/tools/generateContextualHint.d.ts.map +1 -1
  69. package/dist/tools/generateDifferenceGraphFromTexts.d.ts +1 -0
  70. package/dist/tools/generateDifferenceGraphFromTexts.d.ts.map +1 -1
  71. package/dist/tools/generateDifferenceGraphFromTexts.js +1 -1
  72. package/dist/tools/generateDifferenceGraphFromTexts.js.map +1 -1
  73. package/dist/tools/generateKnowledgeGraph.d.ts +1 -0
  74. package/dist/tools/generateKnowledgeGraph.d.ts.map +1 -1
  75. package/dist/tools/generateMergedGraphFromTexts.d.ts +1 -0
  76. package/dist/tools/generateMergedGraphFromTexts.d.ts.map +1 -1
  77. package/dist/tools/generateMergedGraphFromTexts.js +1 -1
  78. package/dist/tools/generateMergedGraphFromTexts.js.map +1 -1
  79. package/dist/tools/generateOntologyGraph.d.ts +10 -3
  80. package/dist/tools/generateOntologyGraph.d.ts.map +1 -1
  81. package/dist/tools/generateOntologyGraph.js +142 -34
  82. package/dist/tools/generateOntologyGraph.js.map +1 -1
  83. package/dist/tools/generateOverlapGraphFromTexts.d.ts +1 -0
  84. package/dist/tools/generateOverlapGraphFromTexts.d.ts.map +1 -1
  85. package/dist/tools/generateOverlapGraphFromTexts.js +1 -1
  86. package/dist/tools/generateOverlapGraphFromTexts.js.map +1 -1
  87. package/dist/tools/generateResearchIdeas.d.ts +2 -1
  88. package/dist/tools/generateResearchIdeas.d.ts.map +1 -1
  89. package/dist/tools/generateResearchQuestions.d.ts +2 -1
  90. package/dist/tools/generateResearchQuestions.d.ts.map +1 -1
  91. package/dist/tools/generateResponses.d.ts +2 -1
  92. package/dist/tools/generateResponses.d.ts.map +1 -1
  93. package/dist/tools/generateSEOGraphTool.d.ts +1 -0
  94. package/dist/tools/generateSEOGraphTool.d.ts.map +1 -1
  95. package/dist/tools/generateSEOGraphTool.js +1 -1
  96. package/dist/tools/generateSEOGraphTool.js.map +1 -1
  97. package/dist/tools/generateTopicalClusters.d.ts +1 -0
  98. package/dist/tools/generateTopicalClusters.d.ts.map +1 -1
  99. package/dist/tools/getProjectLearnings.d.ts +30 -0
  100. package/dist/tools/getProjectLearnings.d.ts.map +1 -0
  101. package/dist/tools/getProjectLearnings.js +151 -0
  102. package/dist/tools/getProjectLearnings.js.map +1 -0
  103. package/dist/tools/index.d.ts +8 -0
  104. package/dist/tools/index.d.ts.map +1 -1
  105. package/dist/tools/index.js +8 -0
  106. package/dist/tools/index.js.map +1 -1
  107. package/dist/tools/optimizeKnowledgeBase.d.ts +41 -0
  108. package/dist/tools/optimizeKnowledgeBase.d.ts.map +1 -0
  109. package/dist/tools/optimizeKnowledgeBase.js +230 -0
  110. package/dist/tools/optimizeKnowledgeBase.js.map +1 -0
  111. package/dist/tools/optimizeReasoning.d.ts +2 -1
  112. package/dist/tools/optimizeReasoning.d.ts.map +1 -1
  113. package/dist/tools/optimizeTextStructure.d.ts +2 -1
  114. package/dist/tools/optimizeTextStructure.d.ts.map +1 -1
  115. package/dist/tools/submitWorkflowFeedback.d.ts +35 -0
  116. package/dist/tools/submitWorkflowFeedback.d.ts.map +1 -0
  117. package/dist/tools/submitWorkflowFeedback.js +62 -0
  118. package/dist/tools/submitWorkflowFeedback.js.map +1 -0
  119. package/dist/tools/updateStatements.d.ts +134 -0
  120. package/dist/tools/updateStatements.d.ts.map +1 -0
  121. package/dist/tools/updateStatements.js +378 -0
  122. package/dist/tools/updateStatements.js.map +1 -0
  123. package/dist/types/index.d.ts +30 -0
  124. package/dist/types/index.d.ts.map +1 -1
  125. package/dist/utils/callTracking.d.ts +29 -0
  126. package/dist/utils/callTracking.d.ts.map +1 -0
  127. package/dist/utils/callTracking.js +88 -0
  128. package/dist/utils/callTracking.js.map +1 -0
  129. package/dist/utils/feedback.d.ts +63 -0
  130. package/dist/utils/feedback.d.ts.map +1 -0
  131. package/dist/utils/feedback.js +115 -0
  132. package/dist/utils/feedback.js.map +1 -0
  133. package/dist/utils/graphInput.d.ts +6 -1
  134. package/dist/utils/graphInput.d.ts.map +1 -1
  135. package/dist/utils/graphInput.js +5 -4
  136. package/dist/utils/graphInput.js.map +1 -1
  137. package/dist/utils/graphLookup.d.ts +29 -0
  138. package/dist/utils/graphLookup.d.ts.map +1 -0
  139. package/dist/utils/graphLookup.js +57 -0
  140. package/dist/utils/graphLookup.js.map +1 -0
  141. package/dist/utils/knowledgeBase.d.ts +21 -0
  142. package/dist/utils/knowledgeBase.d.ts.map +1 -0
  143. package/dist/utils/knowledgeBase.js +110 -0
  144. package/dist/utils/knowledgeBase.js.map +1 -0
  145. package/dist/utils/learnings.d.ts +121 -0
  146. package/dist/utils/learnings.d.ts.map +1 -0
  147. package/dist/utils/learnings.js +339 -0
  148. package/dist/utils/learnings.js.map +1 -0
  149. package/dist/utils/textSignature.d.ts +231 -0
  150. package/dist/utils/textSignature.d.ts.map +1 -0
  151. package/dist/utils/textSignature.js +738 -0
  152. package/dist/utils/textSignature.js.map +1 -0
  153. package/dist/utils/wikilinksMode.d.ts +12 -2
  154. package/dist/utils/wikilinksMode.d.ts.map +1 -1
  155. package/dist/utils/wikilinksMode.js +18 -5
  156. package/dist/utils/wikilinksMode.js.map +1 -1
  157. package/llms-full.infranodus.txt +39 -1
  158. package/llms-full.txt +39 -1
  159. package/llms.infranodus.txt +2 -0
  160. package/llms.txt +2 -0
  161. package/package.json +4 -2
@@ -0,0 +1 @@
1
+ {"version":3,"file":"textSignature.js","sourceRoot":"","sources":["../../src/utils/textSignature.ts"],"names":[],"mappings":"AAgBA,OAAO,EAAE,sBAAsB,EAAE,MAAM,mBAAmB,CAAC;AAyB3D,8EAA8E;AAC9E,mBAAmB;AACnB,8EAA8E;AAE9E,MAAM,KAAK,GAAG,CAAC,KAAoB,EAAE,MAAM,GAAG,CAAC,EAAiB,EAAE,CACjE,KAAK,IAAI,IAAI,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC;AAEjF,MAAM,IAAI,GAAG,CAAC,MAAgB,EAAU,EAAE,CACzC,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC,GAAG,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,GAAG,CAAC;AAEzE,MAAM,GAAG,GAAG,CAAC,MAAgB,EAAU,EAAE;IACxC,IAAI,MAAM,CAAC,MAAM,GAAG,CAAC;QAAE,OAAO,GAAG,CAAC;IAClC,MAAM,CAAC,GAAG,IAAI,CAAC,MAAM,CAAC,CAAC;IACvB,OAAO,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;AAC9D,CAAC,CAAC;AAEF,MAAM,QAAQ,GAAG,CAAC,MAAgB,EAAE,CAAS,EAAU,EAAE;IACxD,IAAI,CAAC,MAAM,CAAC,MAAM;QAAE,OAAO,GAAG,CAAC;IAC/B,MAAM,MAAM,GAAG,CAAC,GAAG,MAAM,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC;IACjD,MAAM,GAAG,GAAG,CAAC,MAAM,CAAC,MAAM,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC;IACpC,MAAM,EAAE,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;IAC3B,MAAM,EAAE,GAAG,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;IAC1B,OAAO,MAAM,CAAC,EAAE,CAAC,GAAG,CAAC,MAAM,CAAC,EAAE,CAAC,GAAG,MAAM,CAAC,EAAE,CAAC,CAAC,GAAG,CAAC,GAAG,GAAG,EAAE,CAAC,CAAC;AAC5D,CAAC,CAAC;AAEF,4EAA4E;AAC5E,MAAM,mBAAmB,GAAG,CAAC,MAAgB,EAAiB,EAAE;IAC/D,IAAI,MAAM,CAAC,MAAM,GAAG,CAAC;QAAE,OAAO,IAAI,CAAC;IACnC,MAAM,CAAC,GAAG,IAAI,CAAC,MAAM,CAAC,CAAC;IACvB,IAAI,GAAG,GAAG,CAAC,CAAC;IACZ,IAAI,GAAG,GAAG,CAAC,CAAC;IACZ,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,MAAM,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;QACxC,GAAG,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,CAAC;QAC5B,IAAI,CAAC,GAAG,CAAC,GAAG,MAAM,CAAC,MAAM;YAAE,GAAG,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC;IACzE,CAAC;IACD,OAAO,GAAG,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,GAAG,GAAG,CAAC,CAAC,CAAC,IAAI,CAAC;AACnC,CAAC,CAAC;AAEF,MAAM,aAAa,GAAG,CAAC,CAAU,EAA6C,EAAE,CAC/E,CAAC,IAAI,IAAI;IACT,OAAO,CAAC,KAAK,QAAQ;IACrB,MAAM,CAAC,QAAQ,CAAE,CAAqB,CAAC,CAAC,CAAC;IACzC,MAAM,CAAC,QAAQ,CAAE,CAAqB,CAAC,CAAC,CAAC,CAAC;AAE3C,MAAM,OAAO,GAAG,CAAC,CAAuC,EAAS,EAAE,CAAC,CAAC;IACpE,CAAC,EAAE,CAAC,CAAC,CAAC;IACN,CAAC,EAAE,CAAC,CAAC,CAAC;IACN,CAAC,EAAE,MAAM,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAE,CAAC,CAAC,CAAY,CAAC,CAAC,CAAC,CAAC;CAC7C,CAAC,CAAC;AAEH,MAAM,QAAQ,GAAG,CAAC,CAAQ,EAAE,CAAQ,EAAU,EAAE,CAC/C,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC;AAEnE,MAAM,QAAQ,GAAG,CAAC,MAAe,EAAS,EAAE,CAAC,CAAC;IAC7C,CAAC,EAAE,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;IAC/B,CAAC,EAAE,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;IAC/B,CAAC,EAAE,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;CAC/B,CAAC,CAAC;AAEH,uEAAuE;AACvE,MAAM,SAAS,GAAG,CAAC,GAAW,EAAU,EAAE,CAAC,CAAC,GAAG,CAAC,UAAU,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC;AA+BtF,kFAAkF;AAClF,MAAM,UAAU,WAAW,CAAC,KAAgB;IAC3C,MAAM,MAAM,GAAG,KAAK;SAClB,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,UAAU,CAAC;SACxB,MAAM,CAAC,aAAa,CAAC;SACrB,GAAG,CAAC,OAAO,CAAC,CAAC;IACf,IAAI,MAAM,CAAC,MAAM,GAAG,CAAC;QAAE,OAAO,IAAI,CAAC;IACnC,MAAM,CAAC,GAAG,QAAQ,CAAC,MAAM,CAAC,CAAC;IAC3B,MAAM,MAAM,GAAG,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,QAAQ,CAAC,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC;IACvE,OAAO,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,IAAI,CAAC;AACnC,CAAC;AAED,SAAS,eAAe,CAAC,IAAiB,EAAE,MAAqB;IAChE,IAAI,IAAI,CAAC,MAAM,GAAG,CAAC,IAAI,CAAC,MAAM;QAAE,OAAO,IAAI,CAAC;IAC5C,MAAM,MAAM,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC;IACxC,MAAM,KAAK,GAAa,EAAE,CAAC;IAC3B,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,CAAC,GAAG,MAAM,CAAC,MAAM,EAAE,CAAC,EAAE;QAAE,KAAK,CAAC,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,MAAM,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,MAAM,CAAC,CAAC;IACpG,MAAM,CAAC,GAAG,QAAQ,CAAC,MAAM,CAAC,CAAC;IAC3B,MAAM,MAAM,GAAG,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,QAAQ,CAAC,CAAC,EAAE,CAAC,CAAC,GAAG,MAAM,CAAC,CAAC;IAE1D,0EAA0E;IAC1E,IAAI,SAAS,GAAoB,EAAE,CAAC;IACpC,IAAI,KAAK,GAAG,CAAC,CAAC;IACd,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,CAAC,GAAG,IAAI,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;QAC1C,MAAM,CAAC,GAAG,IAAI,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;QAC5B,MAAM,CAAC,GAAG,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,SAAS,CAAC;QAChC,IAAI,CAAC,IAAI,IAAI,IAAI,CAAC,IAAI,IAAI;YAAE,SAAS;QACrC,KAAK,EAAE,CAAC;QACR,IAAI,CAAC,KAAK,CAAC;YAAE,SAAS,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAChC,CAAC;IACD,IAAI,KAAK,GAAG,KAAK,CAAC,MAAM,GAAG,CAAC;QAAE,SAAS,GAAG,IAAI,CAAC;IAC/C,MAAM,IAAI,GAAa,EAAE,CAAC;IAC1B,IAAI,SAAS;QAAE,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,SAAS,CAAC,MAAM,EAAE,CAAC,EAAE;YAAE,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,GAAG,SAAS,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;IAErG,MAAM,QAAQ,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC;IAC7B,MAAM,UAAU,GAAG,IAAI,CAAC,MAAM,CAAC,CAAC;IAChC,OAAO;QACN,CAAC,EAAE,KAAK,CAAC,MAAM;QACf,QAAQ,EAAE,KAAK,CAAC,QAAQ,CAAC;QACzB,UAAU,EAAE,KAAK,CAAC,QAAQ,CAAC,KAAK,EAAE,GAAG,CAAC,CAAC;QACvC,OAAO,EAAE,KAAK,CAAC,QAAQ,CAAC,KAAK,EAAE,IAAI,CAAC,CAAC;QACrC,MAAM,EAAE,QAAQ,GAAG,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,GAAG,CAAC,KAAK,CAAC,GAAG,QAAQ,CAAC,CAAC,CAAC,CAAC,IAAI;QAC1D,mBAAmB,EAAE,KAAK,CAAC,mBAAmB,CAAC,KAAK,CAAC,CAAC;QACtD,iBAAiB,EAAE,SAAS,CAAC,CAAC,CAAC,KAAK,CAAC,SAAS,CAAC,MAAM,GAAG,KAAK,CAAC,CAAC,CAAC,CAAC,IAAI;QACrE,iBAAiB,EAAE,IAAI,CAAC,MAAM,IAAI,CAAC,IAAI,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,GAAG,CAAC,IAAI,CAAC,GAAG,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI;QAC5F,UAAU,EAAE,KAAK,CAAC,UAAU,CAAC;QAC7B,QAAQ,EAAE,UAAU,GAAG,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,GAAG,CAAC,MAAM,CAAC,GAAG,UAAU,CAAC,CAAC,CAAC,CAAC,IAAI;KACjE,CAAC;AACH,CAAC;AAQD;;;;GAIG;AACH,MAAM,UAAU,gBAAgB,CAAC,KAAgB,EAAE,UAA0B;IAC5E,MAAM,MAAM,GAAG,WAAW,CAAC,KAAK,CAAC,CAAC;IAClC,MAAM,SAAS,GAAG,IAAI,GAAG,EAAmB,CAAC;IAC7C,KAAK,MAAM,IAAI,IAAI,KAAK;QAAE,SAAS,CAAC,GAAG,CAAC,IAAI,CAAC,GAAG,EAAE,IAAI,CAAC,CAAC;IAExD,MAAM,OAAO,GAAG,CAAC,GAAG,UAAU,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,MAAM,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,MAAM,IAAI,CAAC,CAAC,CAAC,CAAC;IAElF,MAAM,aAAa,GAAgB,EAAE,CAAC;IACtC,MAAM,QAAQ,GAAgB,EAAE,CAAC;IACjC,KAAK,MAAM,SAAS,IAAI,OAAO,EAAE,CAAC;QACjC,IAAI,aAAa,CAAC,SAAS,CAAC,gBAAgB,CAAC,EAAE,CAAC;YAC/C,aAAa,CAAC,IAAI,CAAC;gBAClB,KAAK,EAAE,OAAO,CAAC,SAAS,CAAC,gBAAgB,CAAC;gBAC1C,SAAS,EAAE,SAAS,CAAC,qBAAqB,IAAI,IAAI,CAAC,CAAC,CAAC,MAAM,CAAC,SAAS,CAAC,qBAAqB,CAAC,CAAC,CAAC,CAAC,IAAI;aACnG,CAAC,CAAC;QACJ,CAAC;QACD,KAAK,MAAM,GAAG,IAAI,SAAS,CAAC,iBAAiB,IAAI,EAAE,EAAE,CAAC;YACrD,MAAM,UAAU,GAAG,SAAS,CAAC,GAAG,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC,EAAE,UAAU,CAAC;YAC7D,MAAM,SAAS,GAAG,UAAU,EAAE,SAAS,CAAC;YACxC,IAAI,CAAC,UAAU,IAAI,CAAC,aAAa,CAAC,UAAU,CAAC;gBAAE,SAAS;YACxD,QAAQ,CAAC,IAAI,CAAC;gBACb,KAAK,EAAE,OAAO,CAAC,UAAU,CAAC;gBAC1B,SAAS,EAAE,SAAS,IAAI,IAAI,CAAC,CAAC,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,IAAI;aACvD,CAAC,CAAC;QACJ,CAAC;IACF,CAAC;IAED,OAAO;QACN,WAAW,EAAE,KAAK,CAAC,MAAM,CAAC;QAC1B,UAAU,EAAE,eAAe,CAAC,aAAa,EAAE,MAAM,CAAC;QAClD,KAAK,EAAE,eAAe,CAAC,QAAQ,EAAE,MAAM,CAAC;KACxC,CAAC;AACH,CAAC;AAsBD,MAAM,cAAc,GAAG,yBAAyB,CAAC;AACjD,MAAM,aAAa,GAAG,2DAA2D,CAAC;AAElF,uFAAuF;AACvF,MAAM,UAAU,cAAc,CAAC,IAAY;IAC1C,MAAM,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,cAAc,CAAC,CAAC;IAC1C,MAAM,GAAG,GAAa,EAAE,CAAC;IACzB,KAAK,MAAM,KAAK,IAAI,MAAM,EAAE,CAAC;QAC5B,MAAM,OAAO,GAAG,KAAK,CAAC,IAAI,EAAE,CAAC;QAC7B,IAAI,CAAC,OAAO;YAAE,SAAS;QACvB,IAAI,GAAG,CAAC,MAAM,IAAI,aAAa,CAAC,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC;YAAE,GAAG,CAAC,GAAG,CAAC,MAAM,GAAG,CAAC,CAAC,IAAI,GAAG,GAAG,OAAO,CAAC;;YAC3F,GAAG,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;IACxB,CAAC;IACD,OAAO,GAAG,CAAC;AACZ,CAAC;AAED,MAAM,SAAS,GAAG,CAAC,IAAY,EAAU,EAAE,CAAC,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,eAAe,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC;AAE5G,wEAAwE;AACxE,2EAA2E;AAC3E,0EAA0E;AAC1E,gBAAgB;AAChB,MAAM,CAAC,MAAM,eAAe,GAAG,EAAE,CAAC;AAElC,MAAM,UAAU,qBAAqB,CAAC,UAA0B;IAC/D,MAAM,OAAO,GAAG,CAAC,GAAG,UAAU,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,MAAM,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,MAAM,IAAI,CAAC,CAAC,CAAC,CAAC;IAClF,MAAM,OAAO,GAAa,EAAE,CAAC;IAC7B,MAAM,gBAAgB,GAAa,EAAE,CAAC;IACtC,IAAI,OAAO,GAAG,CAAC,CAAC;IAChB,KAAK,MAAM,SAAS,IAAI,OAAO,EAAE,CAAC;QACjC,MAAM,OAAO,GAAG,SAAS,CAAC,OAAO,EAAE,IAAI,EAAE,CAAC;QAC1C,IAAI,CAAC,OAAO;YAAE,SAAS;QACvB,MAAM,KAAK,GAAG,SAAS,CAAC,OAAO,CAAC,CAAC;QACjC,IAAI,KAAK,GAAG,eAAe,EAAE,CAAC;YAC7B,OAAO,EAAE,CAAC;YACV,SAAS;QACV,CAAC;QACD,gBAAgB,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;QAC7B,KAAK,MAAM,QAAQ,IAAI,cAAc,CAAC,OAAO,CAAC,EAAE,CAAC;YAChD,MAAM,CAAC,GAAG,SAAS,CAAC,QAAQ,CAAC,CAAC;YAC9B,IAAI,CAAC,GAAG,CAAC;gBAAE,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QAC5B,CAAC;IACF,CAAC;IACD,MAAM,CAAC,GAAG,IAAI,CAAC,OAAO,CAAC,CAAC;IACxB,MAAM,EAAE,GAAG,IAAI,CAAC,gBAAgB,CAAC,CAAC;IAClC,OAAO;QACN,SAAS,EAAE,OAAO,CAAC,MAAM;QACzB,gBAAgB,EAAE,OAAO;QACzB,UAAU,EAAE,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC;QACvB,QAAQ,EAAE,OAAO,CAAC,MAAM,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,GAAG,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI;QACvE,mBAAmB,EAAE,KAAK,CAAC,mBAAmB,CAAC,OAAO,CAAC,CAAC;QACxD,UAAU,EAAE,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,IAAI;QAC/F,SAAS,EAAE,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,GAAG,EAAE,CAAC,CAAC,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,IAAI;QAC/F,UAAU,EAAE;YACX,CAAC,EAAE,gBAAgB,CAAC,MAAM;YAC1B,UAAU,EAAE,KAAK,CAAC,EAAE,EAAE,CAAC,CAAC;YACxB,QAAQ,EAAE,gBAAgB,CAAC,MAAM,IAAI,CAAC,IAAI,EAAE,GAAG,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,GAAG,CAAC,gBAAgB,CAAC,GAAG,EAAE,CAAC,CAAC,CAAC,CAAC,IAAI;SAC3F;KACD,CAAC;AACH,CAAC;AAQD,mFAAmF;AACnF,MAAM,UAAU,UAAU,CAAC,KAAgC;IAC1D,IAAI,KAAK,IAAI,IAAI,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,KAAK,CAAC;QAAE,OAAO,IAAI,CAAC;IAC1D,IAAI,KAAK,GAAG,IAAI;QAAE,OAAO,aAAa,CAAC;IACvC,IAAI,KAAK,GAAG,GAAG;QAAE,OAAO,QAAQ,CAAC;IACjC,IAAI,KAAK,IAAI,GAAG;QAAE,OAAO,SAAS,CAAC;IACnC,IAAI,KAAK,GAAG,GAAG;QAAE,OAAO,YAAY,CAAC;IACrC,OAAO,QAAQ,CAAC;AACjB,CAAC;AAED,MAAM,aAAa,GAA+B;IACjD,WAAW,EAAE,sGAAsG;IACnH,MAAM,EAAE,sFAAsF;IAC9F,OAAO,EAAE,gGAAgG;IACzG,UAAU,EAAE,qGAAqG;IACjH,MAAM,EAAE,6FAA6F;CACrG,CAAC;AAEF,MAAM,UAAU,aAAa,CAAC,KAAgC;IAC7D,MAAM,IAAI,GAAG,UAAU,CAAC,KAAK,CAAC,CAAC;IAC/B,OAAO,IAAI,CAAC,CAAC,CAAC,aAAa,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC;AAC1C,CAAC;AAED,MAAM,UAAU,eAAe,CAAC,KAAgC;IAC/D,MAAM,IAAI,GAAG,UAAU,CAAC,KAAK,CAAC,CAAC;IAC/B,IAAI,CAAC,IAAI;QAAE,OAAO,IAAI,CAAC;IACvB,QAAQ,IAAI,EAAE,CAAC;QACd,KAAK,aAAa;YACjB,OAAO,oEAAoE,CAAC;QAC7E,KAAK,QAAQ;YACZ,OAAO,uGAAuG,CAAC;QAChH,KAAK,SAAS,CAAC;QACf,KAAK,YAAY;YAChB,OAAO,kEAAkE,CAAC;QAC3E,KAAK,QAAQ;YACZ,OAAO,iEAAiE,CAAC;IAC3E,CAAC;AACF,CAAC;AAED,MAAM,UAAU,UAAU,CAAC,MAAyC;IACnE,IAAI,CAAC,MAAM,IAAI,MAAM,CAAC,MAAM,IAAI,IAAI,IAAI,MAAM,CAAC,MAAM,IAAI,IAAI;QAAE,OAAO,IAAI,CAAC;IAC3E,MAAM,KAAK,GAAG,UAAU,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;IACxC,MAAM,IAAI,GAAG,UAAU,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;IACvC,IAAI,CAAC,KAAK,IAAI,CAAC,IAAI;QAAE,OAAO,IAAI,CAAC;IACjC,MAAM,aAAa,GAAG,KAAK,KAAK,SAAS,IAAI,KAAK,KAAK,YAAY,IAAI,KAAK,KAAK,QAAQ,CAAC;IAC1F,MAAM,YAAY,GAAG,IAAI,KAAK,SAAS,IAAI,IAAI,KAAK,YAAY,IAAI,IAAI,KAAK,QAAQ,CAAC;IACtF,IAAI,aAAa,IAAI,CAAC,YAAY;QAAE,OAAO,iFAAiF,CAAC;IAC7H,IAAI,CAAC,aAAa,IAAI,YAAY;QAAE,OAAO,wDAAwD,CAAC;IACpG,IAAI,aAAa,IAAI,YAAY;QAAE,OAAO,wDAAwD,CAAC;IACnG,OAAO,8DAA8D,CAAC;AACvE,CAAC;AAED,MAAM,UAAU,gBAAgB,CAAC,MAAyC;IACzE,MAAM,EAAE,GAAG,MAAM,EAAE,YAAY,CAAC;IAChC,IAAI,CAAC,EAAE;QAAE,OAAO,IAAI,CAAC;IACrB,IAAI,EAAE,CAAC,WAAW,KAAK,KAAK;QAAE,OAAO,4FAA4F,CAAC;IAClI,QAAQ,EAAE,CAAC,KAAK,EAAE,CAAC;QAClB,KAAK,cAAc;YAClB,OAAO,EAAE,CAAC,MAAM,KAAK,cAAc;gBAClC,CAAC,CAAC,oEAAoE;gBACtE,CAAC,CAAC,+CAA+C,CAAC;QACpD,KAAK,MAAM;YACV,OAAO,qEAAqE,CAAC;QAC9E,KAAK,aAAa;YACjB,OAAO,kCAAkC,CAAC;QAC3C;YACC,OAAO,IAAI,CAAC;IACd,CAAC;AACF,CAAC;AAID,+CAA+C;AAC/C,MAAM,UAAU,aAAa,CAAC,CAA4B;IACzD,IAAI,CAAC,IAAI,IAAI,IAAI,CAAC,GAAG,EAAE;QAAE,OAAO,MAAM,CAAC;IACvC,IAAI,CAAC,GAAG,GAAG;QAAE,OAAO,YAAY,CAAC;IACjC,IAAI,CAAC,GAAG,GAAG;QAAE,OAAO,QAAQ,CAAC;IAC7B,OAAO,UAAU,CAAC;AACnB,CAAC;AAUD,MAAM,UAAU,SAAS,CAAC,KAAuC;IAChE,IAAI,CAAC,KAAK,IAAI,CAAC,CAAC,KAAK,CAAC,YAAY,IAAI,CAAC,KAAK,CAAC,gBAAgB,CAAC;QAAE,OAAO,IAAI,CAAC;IAC5E,MAAM,IAAI,GAAG,KAAK,CAAC,YAAY,CAAC;IAChC,OAAO;QACN,UAAU,EAAE,aAAa,CAAC,IAAI,EAAE,YAAY,CAAC;QAC7C,cAAc,EAAE,eAAe,CAAC,KAAK,CAAC,gBAAgB,EAAE,YAAY,CAAC;QACrE,MAAM,EAAE,UAAU,CAAC,IAAI,CAAC;QACxB,YAAY,EAAE,gBAAgB,CAAC,IAAI,CAAC;QACpC,UAAU,EAAE,aAAa,CAAC,IAAI,EAAE,CAAC,IAAI,KAAK,CAAC,gBAAgB,EAAE,CAAC,CAAC;KAC/D,CAAC;AACH,CAAC;AAED,yEAAyE;AACzE,iDAAiD;AACjD,MAAM,uBAAuB,GAA+B;IAC3D,WAAW,EAAE,uDAAuD;IACpE,MAAM,EAAE,2FAA2F;IACnG,OAAO,EAAE,yFAAyF;IAClG,UAAU,EAAE,kFAAkF;IAC9F,MAAM,EAAE,yEAAyE;CACjF,CAAC;AAEF,MAAM,UAAU,iBAAiB,CAAC,KAAgC;IACjE,MAAM,IAAI,GAAG,UAAU,CAAC,KAAK,CAAC,CAAC;IAC/B,OAAO,IAAI,CAAC,CAAC,CAAC,uBAAuB,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC;AACpD,CAAC;AAiBD,+GAA+G;AAC/G,MAAM,UAAU,wBAAwB,CACvC,OAA8C;IAE9C,MAAM,MAAM,GAAG,OAAO,EAAE,cAAc,EAAE,OAAO,CAAC;IAChD,IAAI,CAAC,MAAM;QAAE,OAAO,IAAI,CAAC;IACzB,MAAM,KAAK,GAAG,UAAU,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;IACxC,MAAM,IAAI,GAAG,UAAU,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;IACvC,IAAI,MAAM,GAAkB,IAAI,CAAC;IACjC,IAAI,KAAK,IAAI,IAAI,IAAI,KAAK,KAAK,IAAI,EAAE,CAAC;QACrC,MAAM,QAAQ,GAAG,CAAC,CAAa,EAAE,EAAE,CAAC,CAAC,KAAK,SAAS,IAAI,CAAC,KAAK,YAAY,IAAI,CAAC,KAAK,QAAQ,CAAC;QAC5F,IAAI,QAAQ,CAAC,KAAK,CAAC,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC;YAAE,MAAM,GAAG,kFAAkF,CAAC;aAC/H,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,IAAI,QAAQ,CAAC,IAAI,CAAC;YAAE,MAAM,GAAG,0FAA0F,CAAC;IAClJ,CAAC;IACD,OAAO;QACN,CAAC,EAAE,MAAM,CAAC,CAAC;QACX,YAAY,EAAE,MAAM,CAAC,YAAY;QACjC,UAAU,EAAE,MAAM,CAAC,UAAU;QAC7B,MAAM,EAAE,MAAM,CAAC,MAAM,IAAI,IAAI;QAC7B,MAAM,EAAE,MAAM,CAAC,MAAM,IAAI,IAAI;QAC7B,iBAAiB,EAAE,MAAM,CAAC,YAAY,EAAE,KAAK,IAAI,IAAI;QACrD,QAAQ,EAAE;YACT,KAAK,EAAE,iBAAiB,CAAC,MAAM,CAAC,YAAY,CAAC;YAC7C,MAAM;YACN,YAAY,EAAE,gBAAgB,CAAC,MAAM,CAAC;YACtC,UAAU,EAAE,aAAa,CAAC,MAAM,CAAC,CAAC,CAAC;SACnC;KACD,CAAC;AACH,CAAC;AAED,2EAA2E;AAC3E,uDAAuD;AACvD,MAAM,kBAAkB,GAA+B;IACtD,WAAW,EAAE,qFAAqF;IAClG,MAAM,EAAE,oEAAoE;IAC5E,OAAO,EAAE,4EAA4E;IACrF,UAAU,EAAE,gFAAgF;IAC5F,MAAM,EAAE,gHAAgH;CACxH,CAAC;AAEF,MAAM,UAAU,kBAAkB,CAAC,KAAgC;IAClE,MAAM,IAAI,GAAG,UAAU,CAAC,KAAK,CAAC,CAAC;IAC/B,OAAO,IAAI,CAAC,CAAC,CAAC,kBAAkB,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC;AAC/C,CAAC;AASD,MAAM,UAAU,aAAa,CAAC,OAA8C;IAC3E,MAAM,MAAM,GAAG,OAAO,EAAE,SAAS,EAAE,iBAAiB,CAAC;IACrD,IAAI,CAAC,MAAM;QAAE,OAAO,IAAI,CAAC;IACzB,OAAO;QACN,iBAAiB,EAAE,kBAAkB,CAAC,MAAM,CAAC,YAAY,CAAC;QAC1D,MAAM,EAAE,UAAU,CAAC,MAAM,CAAC;QAC1B,YAAY,EAAE,gBAAgB,CAAC,MAAM,CAAC;QACtC,UAAU,EAAE,aAAa,CAAC,MAAM,CAAC,CAAC,CAAC;KACnC,CAAC;AACH,CAAC;AAED,oGAAoG;AACpG,MAAM,UAAU,sBAAsB,CAAC,YAAmD;IACzF,IAAI,CAAC,YAAY;QAAE,OAAO,IAAI,CAAC;IAC/B,MAAM,GAAG,GAAkC,EAAE,CAAC;IAC9C,IAAI,OAAO,YAAY,CAAC,IAAI,KAAK,QAAQ,EAAE,CAAC;QAC3C,GAAG,CAAC,IAAI;YACP,YAAY,CAAC,IAAI,GAAG,GAAG;gBACtB,CAAC,CAAC,oDAAoD;gBACtD,CAAC,CAAC,YAAY,CAAC,IAAI,IAAI,GAAG;oBACzB,CAAC,CAAC,4FAA4F;oBAC9F,CAAC,CAAC,kDAAkD,CAAC;IACzD,CAAC;IACD,GAAG,CAAC,IAAI,GAAG,YAAY,CAAC,IAAI;QAC3B,CAAC,CAAC,WAAW,YAAY,CAAC,IAAI,CAAC,CAAC,qBAAqB,YAAY,CAAC,IAAI,CAAC,IAAI,gDAAgD,YAAY,CAAC,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,oGAAoG;QACjQ,CAAC,CAAC,mDAAmD,CAAC;IACvD,IAAI,OAAO,YAAY,CAAC,KAAK,KAAK,QAAQ,EAAE,CAAC;QAC5C,GAAG,CAAC,KAAK,GAAG,uCAAuC,YAAY,CAAC,KAAK,gCAAgC,CAAC;IACvG,CAAC;IACD,OAAO,GAAG,CAAC;AACZ,CAAC;AAED,MAAM,UAAU,aAAa,CAAC,KAA4B;IACzD,IAAI,CAAC,KAAK;QAAE,OAAO,IAAI,CAAC;IACxB,MAAM,GAAG,GAAkC,EAAE,CAAC;IAC9C,IAAI,KAAK,CAAC,QAAQ,IAAI,IAAI,EAAE,CAAC;QAC5B,GAAG,CAAC,QAAQ;YACX,KAAK,CAAC,QAAQ,GAAG,GAAG;gBACnB,CAAC,CAAC,8DAA8D;gBAChE,CAAC,CAAC,KAAK,CAAC,QAAQ,GAAG,GAAG;oBACrB,CAAC,CAAC,yEAAyE;oBAC3E,CAAC,CAAC,mEAAmE,CAAC;IAC1E,CAAC;IACD,IAAI,KAAK,CAAC,MAAM,IAAI,IAAI,EAAE,CAAC;QAC1B,GAAG,CAAC,MAAM;YACT,KAAK,CAAC,MAAM,GAAG,GAAG;gBACjB,CAAC,CAAC,sEAAsE;gBACxE,CAAC,CAAC,KAAK,CAAC,MAAM,IAAI,GAAG;oBACpB,CAAC,CAAC,6DAA6D;oBAC/D,CAAC,CAAC,gEAAgE,CAAC;IACvE,CAAC;IACD,IAAI,KAAK,CAAC,mBAAmB,IAAI,IAAI,EAAE,CAAC;QACvC,GAAG,CAAC,mBAAmB;YACtB,KAAK,CAAC,mBAAmB,GAAG,IAAI;gBAC/B,CAAC,CAAC,iGAAiG;gBACnG,CAAC,CAAC,KAAK,CAAC,mBAAmB,GAAG,CAAC,IAAI;oBAClC,CAAC,CAAC,+EAA+E;oBACjF,CAAC,CAAC,kDAAkD,CAAC;IACzD,CAAC;IACD,IAAI,KAAK,CAAC,iBAAiB,IAAI,IAAI,EAAE,CAAC;QACrC,MAAM,KAAK,GAAG,KAAK,CAAC,iBAAiB,CAAC;QACtC,GAAG,CAAC,iBAAiB;YACpB,KAAK,KAAK,CAAC;gBACV,CAAC,CAAC,gDAAgD;gBAClD,CAAC,CAAC,KAAK,GAAG,GAAG;oBACZ,CAAC,CAAC,eAAe,IAAI,CAAC,KAAK,CAAC,KAAK,GAAG,GAAG,CAAC,kCAAkC;oBAC1E,CAAC,CAAC,qBAAqB,IAAI,CAAC,KAAK,CAAC,CAAC,GAAG,KAAK,CAAC,kCAAkC,CAAC;IACnF,CAAC;IACD,IAAI,KAAK,CAAC,iBAAiB,IAAI,IAAI,EAAE,CAAC;QACrC,GAAG,CAAC,iBAAiB;YACpB,KAAK,CAAC,iBAAiB,GAAG,GAAG;gBAC5B,CAAC,CAAC,oEAAoE;gBACtE,CAAC,CAAC,KAAK,CAAC,iBAAiB,IAAI,GAAG;oBAC/B,CAAC,CAAC,4DAA4D;oBAC9D,CAAC,CAAC,mEAAmE,CAAC;IAC1E,CAAC;IACD,IAAI,KAAK,CAAC,QAAQ,IAAI,IAAI,EAAE,CAAC;QAC5B,GAAG,CAAC,QAAQ;YACX,KAAK,CAAC,QAAQ,GAAG,GAAG;gBACnB,CAAC,CAAC,uDAAuD;gBACzD,CAAC,CAAC,2DAA2D,CAAC;IACjE,CAAC;IACD,OAAO,GAAG,CAAC;AACZ,CAAC;AAED,MAAM,UAAU,kBAAkB,CAAC,MAAsB;IACxD,MAAM,GAAG,GAAkC,EAAE,CAAC;IAC9C,IAAI,MAAM,CAAC,QAAQ,IAAI,IAAI,EAAE,CAAC;QAC7B,GAAG,CAAC,QAAQ;YACX,MAAM,CAAC,QAAQ,GAAG,IAAI;gBACrB,CAAC,CAAC,8DAA8D;gBAChE,CAAC,CAAC,MAAM,CAAC,QAAQ,GAAG,IAAI;oBACvB,CAAC,CAAC,oCAAoC;oBACtC,CAAC,CAAC,kEAAkE,CAAC;IACzE,CAAC;IACD,IAAI,MAAM,CAAC,UAAU,IAAI,IAAI,EAAE,CAAC;QAC/B,GAAG,CAAC,UAAU;YACb,MAAM,CAAC,UAAU,GAAG,IAAI;gBACvB,CAAC,CAAC,4BAA4B;gBAC9B,CAAC,CAAC,MAAM,CAAC,UAAU,GAAG,GAAG;oBACxB,CAAC,CAAC,uBAAuB;oBACzB,CAAC,CAAC,uBAAuB,CAAC;IAC9B,CAAC;IACD,IAAI,MAAM,CAAC,mBAAmB,IAAI,IAAI,EAAE,CAAC;QACxC,GAAG,CAAC,mBAAmB;YACtB,MAAM,CAAC,mBAAmB,GAAG,IAAI;gBAChC,CAAC,CAAC,wDAAwD;gBAC1D,CAAC,CAAC,MAAM,CAAC,mBAAmB,GAAG,CAAC,IAAI;oBACnC,CAAC,CAAC,qCAAqC;oBACvC,CAAC,CAAC,4DAA4D,CAAC;IACnE,CAAC;IACD,OAAO,GAAG,CAAC;AACZ,CAAC;AAkBD,MAAM,kBAAkB,GAA2B;IAClD,MAAM,EAAE,oEAAoE;IAC5E,OAAO,EAAE,0DAA0D;IACnE,WAAW,EAAE,iFAAiF;IAC9F,SAAS,EAAE,gFAAgF;CAC3F,CAAC;AAEF,MAAM,UAAU,aAAa,CAAC,KAAwC;IACrE,IAAI,CAAC,KAAK;QAAE,OAAO,IAAI,CAAC;IACxB,MAAM,GAAG,GAAkC,EAAE,CAAC;IAC9C,MAAM,KAAK,GAAG,KAAK,CAAC,eAAe,EAAE,WAAW,EAAE,CAAC;IACnD,GAAG,CAAC,SAAS,GAAG,CAAC,KAAK,IAAI,kBAAkB,CAAC,KAAK,CAAC,CAAC,IAAI,IAAI,CAAC;IAC7D,IAAI,KAAK,CAAC,iBAAiB,IAAI,IAAI,EAAE,CAAC;QACrC,GAAG,CAAC,eAAe;YAClB,KAAK,CAAC,iBAAiB,IAAI,GAAG;gBAC7B,CAAC,CAAC,2CAA2C;gBAC7C,CAAC,CAAC,KAAK,CAAC,iBAAiB,IAAI,GAAG;oBAC/B,CAAC,CAAC,6CAA6C;oBAC/C,CAAC,CAAC,6CAA6C,CAAC;IACpD,CAAC;IACD,IAAI,KAAK,CAAC,6CAA6C,IAAI,IAAI,IAAI,KAAK,CAAC,yBAAyB,EAAE,CAAC;QACpG,MAAM,KAAK,GAAG,KAAK,CAAC,6CAA6C,GAAG,KAAK,CAAC,yBAAyB,CAAC;QACpG,GAAG,CAAC,gBAAgB;YACnB,KAAK,IAAI,GAAG;gBACX,CAAC,CAAC,mCAAmC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,oCAAoC;gBACzF,CAAC,CAAC,KAAK,IAAI,GAAG;oBACb,CAAC,CAAC,mCAAmC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,gEAAgE;oBACrH,CAAC,CAAC,+CAA+C,CAAC;IACtD,CAAC;IACD,OAAO,GAAG,CAAC;AACZ,CAAC;AASD,MAAM,cAAc,GAAkD;IACrE,MAAM,EAAE,EAAE,WAAW,EAAE,gBAAgB,EAAE,MAAM,EAAE,aAAa,EAAE,OAAO,EAAE,WAAW,EAAE,MAAM,EAAE,WAAW,EAAE;IAC3G,OAAO,EAAE,EAAE,WAAW,EAAE,YAAY,EAAE,MAAM,EAAE,QAAQ,EAAE,OAAO,EAAE,OAAO,EAAE,MAAM,EAAE,UAAU,EAAE;IAC9F,WAAW,EAAE,EAAE,WAAW,EAAE,UAAU,EAAE,MAAM,EAAE,QAAQ,EAAE,OAAO,EAAE,WAAW,EAAE,MAAM,EAAE,WAAW,EAAE;IACrG,SAAS,EAAE,EAAE,WAAW,EAAE,WAAW,EAAE,MAAM,EAAE,OAAO,EAAE,OAAO,EAAE,yBAAyB,EAAE,MAAM,EAAE,OAAO,EAAE;CAC7G,CAAC;AAEF,MAAM,mBAAmB,GAA2B;IACnD,gBAAgB,EAAE,0CAA0C;IAC5D,WAAW,EAAE,yCAAyC;IACtD,WAAW,EAAE,0DAA0D;IACvE,SAAS,EAAE,sDAAsD;IACjE,UAAU,EAAE,yDAAyD;IACrE,MAAM,EAAE,uDAAuD;IAC/D,KAAK,EAAE,oEAAoE;IAC3E,QAAQ,EAAE,sEAAsE;IAChF,QAAQ,EAAE,qDAAqD;IAC/D,MAAM,EAAE,qEAAqE;IAC7E,SAAS,EAAE,4DAA4D;IACvE,SAAS,EAAE,6DAA6D;IACxE,WAAW,EAAE,qDAAqD;IAClE,KAAK,EAAE,kDAAkD;IACzD,yBAAyB,EAAE,2DAA2D;IACtF,KAAK,EAAE,0DAA0D;CACjE,CAAC;AAWF,mFAAmF;AACnF,MAAM,UAAU,cAAc,CAAC,OAA8C;IAI5E,IAAI,OAAO,EAAE,UAAU,EAAE,YAAY,IAAI,aAAa,CAAC,OAAO,CAAC,UAAU,CAAC,YAAY,CAAC,CAAC,CAAC,KAAK,YAAY;QACzG,OAAO,EAAE,KAAK,EAAE,YAAY,EAAE,MAAM,EAAE,OAAO,CAAC,UAAU,CAAC,YAAY,EAAE,CAAC;IACzE,IAAI,OAAO,EAAE,KAAK,EAAE,YAAY;QAAE,OAAO,EAAE,KAAK,EAAE,OAAO,EAAE,MAAM,EAAE,OAAO,CAAC,KAAK,CAAC,YAAY,EAAE,CAAC;IAChG,IAAI,OAAO,EAAE,UAAU,EAAE,YAAY;QAAE,OAAO,EAAE,KAAK,EAAE,YAAY,EAAE,MAAM,EAAE,OAAO,CAAC,UAAU,CAAC,YAAY,EAAE,CAAC;IAC/G,OAAO,EAAE,KAAK,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,CAAC;AACtC,CAAC;AAED,MAAM,UAAU,gBAAgB,CAC/B,SAA4C,EAC5C,OAA8C;IAE9C,MAAM,KAAK,GAAG,SAAS,EAAE,eAAe,EAAE,WAAW,EAAE,CAAC;IACxD,MAAM,SAAS,GAAG,CAAC,KAAK,IAAI,KAAK,IAAI,cAAc,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,CAAqB,CAAC;IACxF,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,GAAG,cAAc,CAAC,OAAO,CAAC,CAAC;IAClD,MAAM,IAAI,GAAG,UAAU,CAAC,MAAM,EAAE,YAAY,CAAC,CAAC;IAC9C,MAAM,MAAM,GAAsB,IAAI,KAAK,YAAY,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC;IAC3E,MAAM,KAAK,GAAG,SAAS,IAAI,MAAM,CAAC,CAAC,CAAC,cAAc,CAAC,SAAS,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC;IAC7E,OAAO;QACN,KAAK;QACL,SAAS;QACT,MAAM;QACN,YAAY,EAAE,KAAK;QACnB,OAAO,EAAE,KAAK,CAAC,CAAC,CAAC,mBAAmB,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,IAAI;KAClD,CAAC;AACH,CAAC;AAwBD,MAAM,OAAO,GAAG;IACf,6HAA6H;IAC7H,2OAA2O;IAC3O,kJAAkJ;IAClJ,0HAA0H;CAC1H,CAAC;AAEF,MAAM,UAAU,kBAAkB,CAAC,KAIlC;IACA,MAAM,QAAQ,GAAe,EAAE,CAAC;IAChC,MAAM,EAAE,cAAc,EAAE,SAAS,EAAE,OAAO,EAAE,GAAG,KAAK,CAAC;IAErD,kDAAkD;IAClD,IAAI,cAAc,CAAC,QAAQ,IAAI,IAAI,IAAI,cAAc,CAAC,SAAS,IAAI,EAAE,EAAE,CAAC;QACvE,MAAM,EAAE,GAAG,cAAc,CAAC,QAAQ,CAAC;QACnC,MAAM,SAAS,GAAG,EAAE,GAAG,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,GAAG,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,GAAG,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;QACxE,QAAQ,CAAC,IAAI,CAAC;YACb,MAAM,EAAE,kCAAkC;YAC1C,KAAK,EAAE,EAAE;YACT,SAAS;YACT,MAAM,EAAE,CAAC;YACT,OAAO,EACN,SAAS,GAAG,CAAC;gBACZ,CAAC,CAAC,sEAAsE;gBACxE,CAAC,CAAC,oEAAoE;SACxE,CAAC,CAAC;IACJ,CAAC;IACD,IAAI,cAAc,CAAC,UAAU,IAAI,IAAI,IAAI,cAAc,CAAC,SAAS,IAAI,EAAE,EAAE,CAAC;QACzE,MAAM,KAAK,GAAG,cAAc,CAAC,UAAU,CAAC;QACxC,MAAM,SAAS,GAAG,KAAK,GAAG,IAAI,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,KAAK,GAAG,IAAI,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC;QAC/D,IAAI,SAAS,KAAK,CAAC;YAClB,QAAQ,CAAC,IAAI,CAAC;gBACb,MAAM,EAAE,0BAA0B;gBAClC,KAAK,EAAE,KAAK;gBACZ,SAAS;gBACT,MAAM,EAAE,GAAG;gBACX,OAAO,EAAE,SAAS,GAAG,CAAC,CAAC,CAAC,CAAC,4BAA4B,CAAC,CAAC,CAAC,kCAAkC;aAC1F,CAAC,CAAC;IACL,CAAC;IAED,wEAAwE;IACxE,yEAAyE;IACzE,2EAA2E;IAC3E,MAAM,cAAc,GAAG,OAAO,EAAE,cAAc,EAAE,OAAO,CAAC;IACxD,IAAI,cAAc,IAAI,aAAa,CAAC,cAAc,CAAC,CAAC,CAAC,KAAK,MAAM,IAAI,aAAa,CAAC,cAAc,CAAC,CAAC,CAAC,KAAK,YAAY,EAAE,CAAC;QACtH,MAAM,IAAI,GAAG,UAAU,CAAC,cAAc,CAAC,YAAY,CAAC,CAAC;QACrD,MAAM,SAAS,GAAG,IAAI,KAAK,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,KAAK,SAAS,IAAI,IAAI,KAAK,YAAY,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC;QAC7G,IAAI,SAAS,KAAK,CAAC;YAClB,QAAQ,CAAC,IAAI,CAAC;gBACb,MAAM,EAAE,kDAAkD;gBAC1D,KAAK,EAAE,cAAc,CAAC,YAAY;gBAClC,SAAS;gBACT,MAAM,EAAE,CAAC;gBACT,OAAO,EACN,SAAS,GAAG,CAAC;oBACZ,CAAC,CAAC,wDAAwD;oBAC1D,CAAC,CAAC,oEAAoE;aACxE,CAAC,CAAC;IACL,CAAC;IAED,4EAA4E;IAC5E,0EAA0E;IAC1E,wEAAwE;IACxE,6BAA6B;IAC7B,MAAM,MAAM,GAAuE;QAClF,CAAC,YAAY,EAAE,OAAO,EAAE,UAAU,EAAE,YAAY,CAAC;QACjD,CAAC,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE,YAAY,CAAC;KACvC,CAAC;IACF,KAAK,MAAM,CAAC,KAAK,EAAE,MAAM,CAAC,IAAI,MAAM,EAAE,CAAC;QACtC,IAAI,CAAC,MAAM,IAAI,aAAa,CAAC,MAAM,CAAC,CAAC,CAAC,KAAK,MAAM,IAAI,aAAa,CAAC,MAAM,CAAC,CAAC,CAAC,KAAK,YAAY;YAAE,SAAS;QACxG,MAAM,IAAI,GAAG,UAAU,CAAC,MAAM,CAAC,YAAY,CAAC,CAAC;QAC7C,IAAI,CAAC,IAAI;YAAE,SAAS;QACpB,MAAM,SAAS,GAAG,IAAI,KAAK,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,KAAK,SAAS,IAAI,IAAI,KAAK,YAAY,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;QAC/F,IAAI,SAAS,KAAK,CAAC;YAAE,SAAS;QAC9B,QAAQ,CAAC,IAAI,CAAC;YACb,MAAM,EAAE,GAAG,KAAK,sCAAsC;YACtD,KAAK,EAAE,MAAM,CAAC,YAAY;YAC1B,SAAS;YACT,MAAM,EAAE,CAAC;YACT,OAAO,EACN,SAAS,GAAG,CAAC;gBACZ,CAAC,CAAC,mEAAmE;gBACrE,CAAC,CAAC,yEAAyE;SAC7E,CAAC,CAAC;IACJ,CAAC;IAED,gFAAgF;IAChF,MAAM,EAAE,GAAG,OAAO,EAAE,KAAK,EAAE,YAAY,EAAE,YAAY,CAAC;IACtD,IAAI,EAAE,IAAI,CAAC,OAAO,EAAE,KAAK,EAAE,YAAY,EAAE,CAAC,IAAI,CAAC,CAAC,IAAI,GAAG,IAAI,EAAE,CAAC,WAAW,IAAI,IAAI,EAAE,CAAC;QACnF,MAAM,SAAS,GAAG,EAAE,CAAC,WAAW,IAAI,EAAE,CAAC,KAAK,KAAK,cAAc,IAAI,EAAE,CAAC,MAAM,KAAK,cAAc,CAAC;QAChG,MAAM,SAAS,GAAG,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,KAAK,KAAK,aAAa,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC;QACxE,IAAI,SAAS,KAAK,CAAC;YAClB,QAAQ,CAAC,IAAI,CAAC;gBACb,MAAM,EAAE,mCAAmC;gBAC3C,KAAK,EAAE,EAAE,CAAC,KAAK;gBACf,SAAS;gBACT,MAAM,EAAE,IAAI;gBACZ,OAAO,EAAE,SAAS;oBACjB,CAAC,CAAC,4FAA4F;oBAC9F,CAAC,CAAC,8CAA8C;aACjD,CAAC,CAAC;IACL,CAAC;IAED,4EAA4E;IAC5E,MAAM,KAAK,GAAG,SAAS,CAAC,KAAK,CAAC;IAC9B,IAAI,KAAK,IAAI,KAAK,CAAC,CAAC,IAAI,GAAG,EAAE,CAAC;QAC7B,IAAI,KAAK,CAAC,MAAM,IAAI,IAAI,EAAE,CAAC;YAC1B,MAAM,SAAS,GAAG,KAAK,CAAC,MAAM,GAAG,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,KAAK,CAAC,MAAM,GAAG,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC;YAC3E,IAAI,SAAS,KAAK,CAAC;gBAClB,QAAQ,CAAC,IAAI,CAAC;oBACb,MAAM,EAAE,gDAAgD;oBACxD,KAAK,EAAE,KAAK,CAAC,MAAM;oBACnB,SAAS;oBACT,MAAM,EAAE,GAAG;oBACX,OAAO,EACN,SAAS,GAAG,CAAC;wBACZ,CAAC,CAAC,kDAAkD;wBACpD,CAAC,CAAC,gDAAgD;iBACpD,CAAC,CAAC;QACL,CAAC;QACD,IAAI,KAAK,CAAC,iBAAiB,IAAI,IAAI,EAAE,CAAC;YACrC,MAAM,SAAS,GAAG,KAAK,CAAC,iBAAiB,GAAG,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,iBAAiB,GAAG,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC;YAC/F,IAAI,SAAS,KAAK,CAAC;gBAClB,QAAQ,CAAC,IAAI,CAAC;oBACb,MAAM,EAAE,6BAA6B;oBACrC,KAAK,EAAE,KAAK,CAAC,iBAAiB;oBAC9B,SAAS;oBACT,MAAM,EAAE,GAAG;oBACX,OAAO,EACN,SAAS,GAAG,CAAC;wBACZ,CAAC,CAAC,oEAAoE;wBACtE,CAAC,CAAC,+BAA+B;iBACnC,CAAC,CAAC;QACL,CAAC;IACF,CAAC;IAED,MAAM,WAAW,GAAG,QAAQ,CAAC,MAAM,CAAC,CAAC,GAAG,EAAE,CAAC,EAAE,EAAE,CAAC,GAAG,GAAG,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC;IACnE,MAAM,KAAK,GAAG,WAAW,GAAG,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC,GAAG,EAAE,CAAC,EAAE,EAAE,CAAC,GAAG,GAAG,CAAC,CAAC,MAAM,GAAG,CAAC,CAAC,SAAS,EAAE,CAAC,CAAC,GAAG,WAAW,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC;IAC5H,MAAM,MAAM,GAAG,QAAQ,CAAC,MAAM,IAAI,CAAC,IAAI,cAAc,CAAC,SAAS,IAAI,EAAE,CAAC;IACtE,MAAM,OAAO,GACZ,KAAK,IAAI,IAAI,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,cAAc,CAAC,CAAC,CAAC,KAAK,IAAI,IAAI,CAAC,CAAC,CAAC,iBAAiB,CAAC,CAAC,CAAC,KAAK,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,aAAa,CAAC,CAAC,CAAC,cAAc,CAAC;IACjI,uEAAuE;IACvE,+CAA+C;IAC/C,MAAM,QAAQ,GAAG,KAAK,IAAI,IAAI,IAAI,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,GAAG,CAAC;IACzD,OAAO;QACN,OAAO;QACP,KAAK;QACL,UAAU,EAAE,MAAM,IAAI,QAAQ,IAAI,QAAQ,CAAC,MAAM,IAAI,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,KAAK;QACzE,QAAQ;QACR,OAAO,EAAE,OAAO;KAChB,CAAC;AACH,CAAC;AAsCD,MAAM,KAAK,GAAG;IACb,uLAAuL;IACvL,gJAAgJ;IAChJ,kPAAkP;IAClP,sPAAsP;IACtP,+HAA+H;CAC/H,CAAC;AAEF,MAAM,UAAU,kBAAkB,CAAC,KAOlC;IACA,MAAM,OAAO,GAAG,KAAK,CAAC,OAAO,IAAI,IAAI,CAAC;IACtC,MAAM,SAAS,GAAG,KAAK,CAAC,SAAS,IAAI,IAAI,CAAC;IAC1C,MAAM,kBAAkB,GAAG,KAAK,CAAC,kBAAkB,CAAC,CAAC,CAAC,sBAAsB,CAAC,KAAK,CAAC,kBAAkB,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC;IAC9G,MAAM,SAAS,GAAG,gBAAgB,CAAC,KAAK,CAAC,KAAK,EAAE,KAAK,CAAC,UAAU,CAAC,CAAC;IAClE,MAAM,cAAc,GAAG,qBAAqB,CAAC,KAAK,CAAC,UAAU,CAAC,CAAC;IAC/D,OAAO;QACN,SAAS,EAAE,gBAAgB,CAAC,SAAS,EAAE,OAAO,CAAC;QAC/C,SAAS,EAAE;YACV,UAAU,EAAE,KAAK,CAAC,UAAU,IAAI,IAAI;YACpC,eAAe,EAAE,SAAS;YAC1B,mBAAmB,EAAE,kBAAkB;YACvC,QAAQ,EAAE,aAAa,CAAC,SAAS,CAAC;YAClC,cAAc,EAAE,sBAAsB,CAAC,kBAAkB,CAAC;SAC1D;QACD,MAAM,EAAE;YACP,mBAAmB,EAAE,OAAO;YAC5B,QAAQ,EAAE;gBACT,UAAU,EAAE,SAAS,CAAC,OAAO,EAAE,UAAU,CAAC;gBAC1C,KAAK,EAAE,SAAS,CAAC,OAAO,EAAE,KAAK,CAAC;gBAChC,MAAM,EAAE,SAAS,CAAC,OAAO,EAAE,MAAM,CAAC;gBAClC,SAAS,EAAE,aAAa,CAAC,OAAO,CAAC;aACjC;SACD;QACD,SAAS,EAAE;YACV,GAAG,SAAS;YACZ,QAAQ,EAAE,EAAE,UAAU,EAAE,aAAa,CAAC,SAAS,CAAC,UAAU,CAAC,EAAE,KAAK,EAAE,aAAa,CAAC,SAAS,CAAC,KAAK,CAAC,EAAE;SACpG;QACD,eAAe,EAAE;YAChB,GAAG,cAAc;YACjB,QAAQ,EAAE,kBAAkB,CAAC,cAAc,CAAC;YAC5C,OAAO,EAAE,wBAAwB,CAAC,OAAO,CAAC;SAC1C;QACD,WAAW,EAAE,kBAAkB,CAAC,EAAE,cAAc,EAAE,SAAS,EAAE,OAAO,EAAE,CAAC;QACvE,KAAK,EAAE,KAAK;KACZ,CAAC;AACH,CAAC"}
@@ -35,6 +35,10 @@ import { z } from "zod";
35
35
  */
36
36
  export declare const WikilinksModeEnum: z.ZodEnum<["default", "wikilinksOnly", "obsidianStyle", "parentAndConcepts", "plainText"]>;
37
37
  export type WikilinksMode = z.infer<typeof WikilinksModeEnum>;
38
+ /** The parent modes exist to make the per-statement parent (a category) a
39
+ * node, so categories always become nodes there. */
40
+ export declare function isParentMode(mode: WikilinksMode | undefined): boolean;
41
+ export declare const categoriesAsNodesDescription = "Show category labels as [[label]] nodes in the graph. Use only for large knowledge bases and Obsidian vaults where the connections between pages matter; otherwise keep false and the labels stay metadata (always on in the parent modes).";
38
42
  export declare const wikilinksModeDescription: string;
39
43
  export interface WikilinksPayload {
40
44
  text?: string;
@@ -49,13 +53,19 @@ export interface WikilinksPayload {
49
53
  * parsed out of a text blob. Mode-specific bracket handling still applies and
50
54
  * overrides the category defaults where the two disagree.
51
55
  */
52
- export declare function prepareStatementsPayload(statements: string[], categories: string[][] | undefined, mode: WikilinksMode | undefined, timestamps?: string[]): WikilinksPayload;
56
+ export declare function prepareStatementsPayload(statements: string[], categories: string[][] | undefined, mode: WikilinksMode | undefined, timestamps?: string[], categoriesAsNodes?: boolean): WikilinksPayload;
53
57
  /**
54
58
  * Processing settings for a statements upload. The API reads these from the
55
59
  * top level of the body (`contextSettings`), so multi-context requests share
56
60
  * one set across all of their contexts.
61
+ *
62
+ * Categories are always stored on their statements (the engine keeps them as
63
+ * metadata whatever the settings say); they become [[label]] nodes only when
64
+ * the caller asks for it with `categoriesAsNodes`, or in a parent mode, where
65
+ * the parent page IS the category. Without that the engine's default
66
+ * (categoriesAsMentions: false) stands and the graph holds concepts only.
57
67
  */
58
- export declare function statementsContextSettings(mode: WikilinksMode | undefined, hasCategories: boolean): Record<string, unknown>;
68
+ export declare function statementsContextSettings(mode: WikilinksMode | undefined, hasCategories: boolean, categoriesAsNodes?: boolean): Record<string, unknown>;
59
69
  /**
60
70
  * Translate the mode + content into the request-body fields to merge into
61
71
  * the /graphAndStatements payload. Returns {} for 'default' so callers can
@@ -1 +1 @@
1
- {"version":3,"file":"wikilinksMode.d.ts","sourceRoot":"","sources":["../../src/utils/wikilinksMode.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAiCG;AACH,eAAO,MAAM,iBAAiB,4FAM5B,CAAC;AAEH,MAAM,MAAM,aAAa,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,iBAAiB,CAAC,CAAC;AAE9D,eAAO,MAAM,wBAAwB,QAS4E,CAAC;AAQlH,MAAM,WAAW,gBAAgB;IAChC,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,UAAU,CAAC,EAAE,MAAM,EAAE,CAAC;IACtB,UAAU,CAAC,EAAE,MAAM,EAAE,EAAE,CAAC;IACxB,UAAU,CAAC,EAAE,MAAM,EAAE,CAAC;IACtB,eAAe,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;CAC1C;AAsDD;;;;;GAKG;AACH,wBAAgB,wBAAwB,CACvC,UAAU,EAAE,MAAM,EAAE,EACpB,UAAU,EAAE,MAAM,EAAE,EAAE,GAAG,SAAS,EAClC,IAAI,EAAE,aAAa,GAAG,SAAS,EAC/B,UAAU,CAAC,EAAE,MAAM,EAAE,GACnB,gBAAgB,CAiBlB;AAED;;;;GAIG;AACH,wBAAgB,yBAAyB,CACxC,IAAI,EAAE,aAAa,GAAG,SAAS,EAC/B,aAAa,EAAE,OAAO,GACpB,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAUzB;AAED;;;;GAIG;AACH,wBAAgB,uBAAuB,CACtC,WAAW,EAAE,MAAM,EACnB,IAAI,EAAE,aAAa,GAAG,SAAS,GAC7B,gBAAgB,CAyClB"}
1
+ {"version":3,"file":"wikilinksMode.d.ts","sourceRoot":"","sources":["../../src/utils/wikilinksMode.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAiCG;AACH,eAAO,MAAM,iBAAiB,4FAM5B,CAAC;AAEH,MAAM,MAAM,aAAa,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,iBAAiB,CAAC,CAAC;AAE9D;oDACoD;AACpD,wBAAgB,YAAY,CAAC,IAAI,EAAE,aAAa,GAAG,SAAS,GAAG,OAAO,CAErE;AAED,eAAO,MAAM,4BAA4B,gPACqM,CAAC;AAE/O,eAAO,MAAM,wBAAwB,QAS4E,CAAC;AAQlH,MAAM,WAAW,gBAAgB;IAChC,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,UAAU,CAAC,EAAE,MAAM,EAAE,CAAC;IACtB,UAAU,CAAC,EAAE,MAAM,EAAE,EAAE,CAAC;IACxB,UAAU,CAAC,EAAE,MAAM,EAAE,CAAC;IACtB,eAAe,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;CAC1C;AAsDD;;;;;GAKG;AACH,wBAAgB,wBAAwB,CACvC,UAAU,EAAE,MAAM,EAAE,EACpB,UAAU,EAAE,MAAM,EAAE,EAAE,GAAG,SAAS,EAClC,IAAI,EAAE,aAAa,GAAG,SAAS,EAC/B,UAAU,CAAC,EAAE,MAAM,EAAE,EACrB,iBAAiB,UAAQ,GACvB,gBAAgB,CAqBlB;AAED;;;;;;;;;;GAUG;AACH,wBAAgB,yBAAyB,CACxC,IAAI,EAAE,aAAa,GAAG,SAAS,EAC/B,aAAa,EAAE,OAAO,EACtB,iBAAiB,UAAQ,GACvB,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAYzB;AAED;;;;GAIG;AACH,wBAAgB,uBAAuB,CACtC,WAAW,EAAE,MAAM,EACnB,IAAI,EAAE,aAAa,GAAG,SAAS,GAC7B,gBAAgB,CAyClB"}
@@ -40,6 +40,12 @@ export const WikilinksModeEnum = z.enum([
40
40
  "parentAndConcepts",
41
41
  "plainText",
42
42
  ]);
43
+ /** The parent modes exist to make the per-statement parent (a category) a
44
+ * node, so categories always become nodes there. */
45
+ export function isParentMode(mode) {
46
+ return mode === "obsidianStyle" || mode === "parentAndConcepts";
47
+ }
48
+ export const categoriesAsNodesDescription = "Show category labels as [[label]] nodes in the graph. Use only for large knowledge bases and Obsidian vaults where the connections between pages matter; otherwise keep false and the labels stay metadata (always on in the parent modes).";
43
49
  export const wikilinksModeDescription = "How [[wikilinks]] in the text become graph nodes. " +
44
50
  "'default': wikilinks become [[entity]] nodes; statements that contain wikilinks use only those, statements without any are processed word-by-word. " +
45
51
  "'wikilinksOnly': ONLY [[wikilinks]] become nodes, all other words are ignored; nearby wikilinks connect via a sliding co-occurrence window — use for entity/ontology/link statements like '[[alice]] works with [[bob]]' or '[[Page A]] links to [[Page B]]'. " +
@@ -47,7 +53,7 @@ export const wikilinksModeDescription = "How [[wikilinks]] in the text become gr
47
53
  "'parentAndConcepts': same heading/prefix parent contract, but concepts also keep their normal co-occurrence connections — best for mixed content (notes, docs, articles) where you want both section/page provenance and a real concept graph. " +
48
54
  "'plainText': brackets are stripped and everything is processed as ordinary words. " +
49
55
  "In all modes parent and wikilink nodes share the [[name]] namespace, so graphs remain comparable/mergeable. " +
50
- "With `statements` + `categories` supplied directly, parent extraction is skipped and those categories become the mention labels ('obsidianStyle' still gives the star topology). " +
56
+ "With `statements` + `categories` supplied directly, parent extraction is skipped and those categories are the parent labels ('obsidianStyle' still gives the star topology); in the other modes categories become nodes only when `categoriesAsNodes` is true. " +
51
57
  "Takes effect when the graph is generated or first created; an existing saved graph keeps its original setting.";
52
58
  const PARENT_PREFIX_RE = /^\s*\[\[([^\]]+)\]\]:\s*/;
53
59
  // Heading: 1-6 hashes followed by whitespace ("#tag" without a space is a
@@ -105,13 +111,13 @@ function categorySettings(mode) {
105
111
  * parsed out of a text blob. Mode-specific bracket handling still applies and
106
112
  * overrides the category defaults where the two disagree.
107
113
  */
108
- export function prepareStatementsPayload(statements, categories, mode, timestamps) {
114
+ export function prepareStatementsPayload(statements, categories, mode, timestamps, categoriesAsNodes = false) {
109
115
  // Only actual labels matter: a model that sends [[], [], []] for "no
110
116
  // metadata" must not flip the processing settings for the whole upload.
111
117
  const hasCategories = Array.isArray(categories) &&
112
118
  categories.some((entry) => Array.isArray(entry) && entry.length > 0);
113
119
  const hasTimestamps = Array.isArray(timestamps) && timestamps.length > 0;
114
- const contextSettings = statementsContextSettings(mode, hasCategories);
120
+ const contextSettings = statementsContextSettings(mode, hasCategories, categoriesAsNodes);
115
121
  return {
116
122
  text: "",
117
123
  statements,
@@ -126,15 +132,22 @@ export function prepareStatementsPayload(statements, categories, mode, timestamp
126
132
  * Processing settings for a statements upload. The API reads these from the
127
133
  * top level of the body (`contextSettings`), so multi-context requests share
128
134
  * one set across all of their contexts.
135
+ *
136
+ * Categories are always stored on their statements (the engine keeps them as
137
+ * metadata whatever the settings say); they become [[label]] nodes only when
138
+ * the caller asks for it with `categoriesAsNodes`, or in a parent mode, where
139
+ * the parent page IS the category. Without that the engine's default
140
+ * (categoriesAsMentions: false) stands and the graph holds concepts only.
129
141
  */
130
- export function statementsContextSettings(mode, hasCategories) {
142
+ export function statementsContextSettings(mode, hasCategories, categoriesAsNodes = false) {
143
+ const labelsBecomeNodes = hasCategories && (categoriesAsNodes || isParentMode(mode));
131
144
  // Category mentions only survive under the bracket combination in
132
145
  // categorySettings, so it overrides the mode's own bracket handling where
133
146
  // the two disagree. 'wikilinksOnly' keeps its HASHTAGS_ONLY part-of-speech
134
147
  // filter — that is what restricts concept nodes to [[wikilinks]]; its
135
148
  // PROCESS_AS_HASHTAGS_IGNORE_THE_REST would drop the category mentions
136
149
  // along with everything else.
137
- return hasCategories
150
+ return labelsBecomeNodes
138
151
  ? { ...bracketSettings(mode), ...categorySettings(mode) }
139
152
  : bracketSettings(mode);
140
153
  }
@@ -1 +1 @@
1
- {"version":3,"file":"wikilinksMode.js","sourceRoot":"","sources":["../../src/utils/wikilinksMode.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"wikilinksMode.js","sourceRoot":"","sources":["../../src/utils/wikilinksMode.ts"],"names":[],"mappings":"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"}
@@ -37,7 +37,7 @@ Get API key at: https://infranodus.com/api-access
37
37
  7. **Comparing texts**: `overlap_between_texts` (similarities), `difference_between_texts` (what's missing in first text), `merged_graph_from_texts` (combined overview).
38
38
  8. **SEO/content optimization**: `generate_seo_report` (comprehensive, ~90s timeout needed) or run `analyze_google_search_results` → `analyze_related_search_queries` → `search_queries_vs_search_results` individually.
39
39
  9. **Memory**: `memory_add_relations` to persist knowledge graphs, `memory_get_relations` to retrieve. Use `[[wikilinks]]` for entity marking.
40
- 10. **Graph management**: `list_graphs` to discover existing graphs, `search` + `fetch` for content retrieval.
40
+ 10. **Graph management**: `list_graphs` to discover existing graphs, `search` + `fetch` for content retrieval, `delete_statements` to remove statements from your own graph by filter and `update_statements` to edit them in place (both dry run unless `confirm: true`; irreversible).
41
41
 
42
42
  ---
43
43
 
@@ -321,6 +321,44 @@ Fetch specific statements from a search result using the ID from `search`.
321
321
 
322
322
  ---
323
323
 
324
+ ### delete_statements
325
+
326
+ Delete statements from a graph in the user's own account, selected by one filter the server resolves. Irreversible once confirmed. Dry run by default: the response reports the matched count, a sample of the matched statements, and a per-category breakdown, and nothing is removed until the same filter is sent again with `confirm: true` (clients with MCP elicitation ask the user directly in the same call). A filter that matches nothing returns `deleted: 0` without asking. Never called on the assistant's own initiative.
327
+
328
+ **Parameters** (exactly one selector besides `graphName`):
329
+ - `graphName` (string, required): Graph in the user's own account (must exist; there is no `userName`)
330
+ - `categories` (string[]): Statements carrying any of these labels — everything from one source (a file path, page name, or `[[label]]` parent)
331
+ - `statements` (string[]): Exact statement text
332
+ - `query` (string): Case-insensitive substring, or `/regex/flags`
333
+ - `before`, `after` (ISO 8601): Time window; together they count as one selector
334
+ - `deleteAll` (boolean): Empty the graph but keep it (name, URL, settings survive)
335
+ - `statementIds` (number[]): Advanced; foreign ids are reported as `ignoredIds`
336
+ - `confirm` (boolean, default false): Perform the deletion
337
+
338
+ **Returns**: dry run — `dryRun: true`, `matchedCount`, `matched` (id, content, categories, timestamp), `matchedByCategory`, `filter`, `nextStep`; after confirmation — `deleted`, `removedIds`, `ignoredIds`, `remaining`, `graphName`, `graphUrl`.
339
+
340
+ **Typical use**: replace one source's statements after it changed (`delete_statements` with its category, then `create_knowledge_graph` to the same `graphName`), or rebuild a graph in place (`deleteAll`, then `create_knowledge_graph`).
341
+
342
+ ---
343
+
344
+ ### update_statements
345
+
346
+ Edit statements of a graph in the user's own account IN PLACE — their content, categories, or timestamp — keeping each statement's id, date, and position (unlike deleting and re-creating it). Irreversible once confirmed: the previous text survives only in the dry-run output. Dry run by default: the response reports the matched count and the before → after of every change, and nothing is written until the same arguments are sent again with `confirm: true` (clients with MCP elicitation ask the user directly in the same call). A request that matches nothing returns `updated: 0` without asking. New content is capped at 1000 characters — for longer text use `delete_statements` then `create_knowledge_graph`. Never called on the assistant's own initiative.
347
+
348
+ **Parameters** (one mode per call, besides `graphName`):
349
+ - `graphName` (string, required): Graph in the user's own account (must exist; there is no `userName`)
350
+ - Mode A — `edits` (array): one item per statement to rewrite, each with exactly one of `match` (its exact current text, e.g. from `analyze_existing_graph_by_name` with `includeStatements`) or `statementId`, and at least one of `content`, `categories` (full replacement), `timestamp` (ISO 8601). Items that match nothing are reported as `unmatched`
351
+ - Mode B — exactly one selector: `categories` (string[]), `statements` (string[]), `query` (substring or `/regex/flags`), `before`/`after` (ISO 8601 window), `all` (boolean), `statementIds` (number[]) — plus at least one of:
352
+ - `set` (object): `addCategories`, `removeCategories`, `categories` (full replacement; exclusive with add/remove), `timestamp`
353
+ - `replace` (object): `{ pattern, with }` — substring or `/regex/flags`, applied to the text of every selected statement (e.g. rename a `[[concept]]` or a source path everywhere)
354
+ - `confirm` (boolean, default false): Perform the update
355
+
356
+ **Returns**: dry run — `dryRun: true`, `matchedCount`, `updatedCount` (how many would change), `changes` (id, before, after; capped at 50), `unchanged`, `unmatched`, `rejected`, `mode`, `filter`, `nextStep`; after confirmation — `updated`, `changes`, `unchanged`, `unmatched`, `rejected`, `graphName`, `graphUrl` (plus a `note` when the write's count differs from the preview).
357
+
358
+ **Typical use**: fix a wrong statement without losing its place (`edits` with `match` and the new `content`), relabel a batch (`categories` selector with `set.addCategories`), or rename a concept or a source path across a graph (`all: true` with `replace`).
359
+
360
+ ---
361
+
324
362
  ### memory_add_relations
325
363
 
326
364
  Add relations to a knowledge graph memory. Creates the graph if it doesn't exist. By default uses `extractEntitiesOnly` for automatic entity detection, creating a high-level concept graph.
package/llms-full.txt CHANGED
@@ -37,7 +37,7 @@ Get API key at: https://infranodus.com/api-access
37
37
  7. **Comparing texts**: `overlap_between_texts` (similarities), `difference_between_texts` (what's missing in first text), `merged_graph_from_texts` (combined overview).
38
38
  8. **SEO/content optimization**: `generate_seo_report` (comprehensive, ~90s timeout needed) or run `analyze_google_search_results` → `analyze_related_search_queries` → `search_queries_vs_search_results` individually.
39
39
  9. **Memory**: `memory_add_relations` to persist knowledge graphs, `memory_get_relations` to retrieve. Use `[[wikilinks]]` for entity marking.
40
- 10. **Graph management**: `list_graphs` to discover existing graphs, `search` + `fetch` for content retrieval.
40
+ 10. **Graph management**: `list_graphs` to discover existing graphs, `search` + `fetch` for content retrieval, `delete_statements` to remove statements from your own graph by filter and `update_statements` to edit them in place (both dry run unless `confirm: true`; irreversible).
41
41
 
42
42
  ---
43
43
 
@@ -321,6 +321,44 @@ Fetch specific statements from a search result using the ID from `search`.
321
321
 
322
322
  ---
323
323
 
324
+ ### delete_statements
325
+
326
+ Delete statements from a graph in the user's own account, selected by one filter the server resolves. Irreversible once confirmed. Dry run by default: the response reports the matched count, a sample of the matched statements, and a per-category breakdown, and nothing is removed until the same filter is sent again with `confirm: true` (clients with MCP elicitation ask the user directly in the same call). A filter that matches nothing returns `deleted: 0` without asking. Never called on the assistant's own initiative.
327
+
328
+ **Parameters** (exactly one selector besides `graphName`):
329
+ - `graphName` (string, required): Graph in the user's own account (must exist; there is no `userName`)
330
+ - `categories` (string[]): Statements carrying any of these labels — everything from one source (a file path, page name, or `[[label]]` parent)
331
+ - `statements` (string[]): Exact statement text
332
+ - `query` (string): Case-insensitive substring, or `/regex/flags`
333
+ - `before`, `after` (ISO 8601): Time window; together they count as one selector
334
+ - `deleteAll` (boolean): Empty the graph but keep it (name, URL, settings survive)
335
+ - `statementIds` (number[]): Advanced; foreign ids are reported as `ignoredIds`
336
+ - `confirm` (boolean, default false): Perform the deletion
337
+
338
+ **Returns**: dry run — `dryRun: true`, `matchedCount`, `matched` (id, content, categories, timestamp), `matchedByCategory`, `filter`, `nextStep`; after confirmation — `deleted`, `removedIds`, `ignoredIds`, `remaining`, `graphName`, `graphUrl`.
339
+
340
+ **Typical use**: replace one source's statements after it changed (`delete_statements` with its category, then `create_knowledge_graph` to the same `graphName`), or rebuild a graph in place (`deleteAll`, then `create_knowledge_graph`).
341
+
342
+ ---
343
+
344
+ ### update_statements
345
+
346
+ Edit statements of a graph in the user's own account IN PLACE — their content, categories, or timestamp — keeping each statement's id, date, and position (unlike deleting and re-creating it). Irreversible once confirmed: the previous text survives only in the dry-run output. Dry run by default: the response reports the matched count and the before → after of every change, and nothing is written until the same arguments are sent again with `confirm: true` (clients with MCP elicitation ask the user directly in the same call). A request that matches nothing returns `updated: 0` without asking. New content is capped at 1000 characters — for longer text use `delete_statements` then `create_knowledge_graph`. Never called on the assistant's own initiative.
347
+
348
+ **Parameters** (one mode per call, besides `graphName`):
349
+ - `graphName` (string, required): Graph in the user's own account (must exist; there is no `userName`)
350
+ - Mode A — `edits` (array): one item per statement to rewrite, each with exactly one of `match` (its exact current text, e.g. from `analyze_existing_graph_by_name` with `includeStatements`) or `statementId`, and at least one of `content`, `categories` (full replacement), `timestamp` (ISO 8601). Items that match nothing are reported as `unmatched`
351
+ - Mode B — exactly one selector: `categories` (string[]), `statements` (string[]), `query` (substring or `/regex/flags`), `before`/`after` (ISO 8601 window), `all` (boolean), `statementIds` (number[]) — plus at least one of:
352
+ - `set` (object): `addCategories`, `removeCategories`, `categories` (full replacement; exclusive with add/remove), `timestamp`
353
+ - `replace` (object): `{ pattern, with }` — substring or `/regex/flags`, applied to the text of every selected statement (e.g. rename a `[[concept]]` or a source path everywhere)
354
+ - `confirm` (boolean, default false): Perform the update
355
+
356
+ **Returns**: dry run — `dryRun: true`, `matchedCount`, `updatedCount` (how many would change), `changes` (id, before, after; capped at 50), `unchanged`, `unmatched`, `rejected`, `mode`, `filter`, `nextStep`; after confirmation — `updated`, `changes`, `unchanged`, `unmatched`, `rejected`, `graphName`, `graphUrl` (plus a `note` when the write's count differs from the preview).
357
+
358
+ **Typical use**: fix a wrong statement without losing its place (`edits` with `match` and the new `content`), relabel a batch (`categories` selector with `set.addCategories`), or rename a concept or a source path across a graph (`all: true` with `replace`).
359
+
360
+ ---
361
+
324
362
  ### memory_add_relations
325
363
 
326
364
  Add relations to a knowledge graph memory. Creates the graph if it doesn't exist. By default uses `extractEntitiesOnly` for automatic entity detection, creating a high-level concept graph.
@@ -56,6 +56,8 @@
56
56
  - list_graphs: List all graphs with filtering by name, type, date, language
57
57
  - search: Search through existing InfraNodus graphs
58
58
  - fetch: Fetch specific search results from a graph
59
+ - delete_statements: Delete statements from your own graph by one filter (categories, statements, query, before/after, deleteAll, statementIds); dry run unless confirm: true; irreversible
60
+ - update_statements: Edit statements of your own graph in place (content, categories, timestamp) keeping id and position — specific statements by exact text or id (edits), or one selector with set/replace for bulk relabelling and find-and-replace; dry run showing before → after unless confirm: true; irreversible
59
61
 
60
62
  ## Optional
61
63
 
package/llms.txt CHANGED
@@ -56,6 +56,8 @@
56
56
  - list_graphs: List all graphs with filtering by name, type, date, language
57
57
  - search: Search through existing InfraNodus graphs
58
58
  - fetch: Fetch specific search results from a graph
59
+ - delete_statements: Delete statements from your own graph by one filter (categories, statements, query, before/after, deleteAll, statementIds); dry run unless confirm: true; irreversible
60
+ - update_statements: Edit statements of your own graph in place (content, categories, timestamp) keeping id and position — specific statements by exact text or id (edits), or one selector with set/replace for bulk relabelling and find-and-replace; dry run showing before → after unless confirm: true; irreversible
59
61
 
60
62
  ## Optional
61
63
 
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "keywordgraph-mcp-server",
3
- "version": "1.7.4",
3
+ "version": "1.8.5",
4
4
  "description": "KeywordGraph MCP server - A Model Context Protocol server for network thinking and graph analysis",
5
5
  "type": "module",
6
6
  "module": "src/index.ts",
@@ -52,7 +52,9 @@
52
52
  "deploy:exalt": "fly deploy -c fly.exaltgrowth.toml",
53
53
  "publish:in": "npm run build:inspect && node scripts/publish-brand.mjs infranodus",
54
54
  "publish:kg": "npm run build:inspect && node scripts/publish-brand.mjs keywordgraph",
55
- "prepublishOnly": "npm run build:inspect"
55
+ "prepublishOnly": "npm run build:inspect",
56
+ "version": "node scripts/sync-plugin-version.mjs && git add plugin.json .cursor-plugin/plugin.json .grok-plugin/plugin.json",
57
+ "test": "npm run build:inspect && node --test 'test/**/*.test.mjs'"
56
58
  },
57
59
  "dependencies": {
58
60
  "@modelcontextprotocol/sdk": "^1.18.0",