@gaunt-sloth/core 2.0.0-alpha.8 → 2.0.0-beta.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 (275) hide show
  1. package/.gsloth.review.md +2 -0
  2. package/README.md +71 -20
  3. package/dist/config/colour.d.ts +38 -0
  4. package/dist/config/colour.js +36 -0
  5. package/dist/config/colour.js.map +1 -0
  6. package/dist/config/configDiscovery.d.ts +79 -0
  7. package/dist/config/configDiscovery.js +80 -0
  8. package/dist/config/configDiscovery.js.map +1 -0
  9. package/dist/config/defaults.d.ts +20 -20
  10. package/dist/config/defaults.js +10 -8
  11. package/dist/config/defaults.js.map +1 -1
  12. package/dist/config/filesystem-tools.d.ts +41 -0
  13. package/dist/config/filesystem-tools.js +56 -0
  14. package/dist/config/filesystem-tools.js.map +1 -0
  15. package/dist/config/loader.d.ts +171 -19
  16. package/dist/config/loader.js +1054 -144
  17. package/dist/config/loader.js.map +1 -1
  18. package/dist/config/mouse.d.ts +50 -0
  19. package/dist/config/mouse.js +44 -0
  20. package/dist/config/mouse.js.map +1 -0
  21. package/dist/config/profiles.d.ts +68 -0
  22. package/dist/config/profiles.js +93 -0
  23. package/dist/config/profiles.js.map +1 -0
  24. package/dist/config/providerKeys.d.ts +69 -0
  25. package/dist/config/providerKeys.js +69 -0
  26. package/dist/config/providerKeys.js.map +1 -0
  27. package/dist/config/schema.d.ts +2671 -138
  28. package/dist/config/schema.js +1361 -85
  29. package/dist/config/schema.js.map +1 -1
  30. package/dist/config/shell-policy.d.ts +899 -111
  31. package/dist/config/shell-policy.js +800 -70
  32. package/dist/config/shell-policy.js.map +1 -1
  33. package/dist/config/tool-descriptions.d.ts +211 -0
  34. package/dist/config/tool-descriptions.js +272 -0
  35. package/dist/config/tool-descriptions.js.map +1 -0
  36. package/dist/config/types.d.ts +352 -41
  37. package/dist/config/types.js +1 -0
  38. package/dist/config/types.js.map +1 -1
  39. package/dist/config.d.ts +35 -1
  40. package/dist/config.js +16 -1
  41. package/dist/config.js.map +1 -1
  42. package/dist/constants.d.ts +28 -1
  43. package/dist/constants.js +28 -1
  44. package/dist/constants.js.map +1 -1
  45. package/dist/core/GthAbstractAgent.d.ts +166 -11
  46. package/dist/core/GthAbstractAgent.js +484 -45
  47. package/dist/core/GthAbstractAgent.js.map +1 -1
  48. package/dist/core/GthAgentRunner.d.ts +543 -57
  49. package/dist/core/GthAgentRunner.js +1494 -140
  50. package/dist/core/GthAgentRunner.js.map +1 -1
  51. package/dist/core/GthLangChainAgent.d.ts +117 -2
  52. package/dist/core/GthLangChainAgent.js +602 -29
  53. package/dist/core/GthLangChainAgent.js.map +1 -1
  54. package/dist/core/approvals/annotations.d.ts +122 -0
  55. package/dist/core/approvals/annotations.js +137 -0
  56. package/dist/core/approvals/annotations.js.map +1 -0
  57. package/dist/core/approvals/grants.d.ts +216 -0
  58. package/dist/core/approvals/grants.js +469 -0
  59. package/dist/core/approvals/grants.js.map +1 -0
  60. package/dist/core/approvals/matcher.d.ts +202 -0
  61. package/dist/core/approvals/matcher.js +267 -0
  62. package/dist/core/approvals/matcher.js.map +1 -0
  63. package/dist/core/approvals/mcpSubjects.d.ts +40 -0
  64. package/dist/core/approvals/mcpSubjects.js +99 -0
  65. package/dist/core/approvals/mcpSubjects.js.map +1 -0
  66. package/dist/core/approvals/promptHeader.d.ts +28 -0
  67. package/dist/core/approvals/promptHeader.js +62 -0
  68. package/dist/core/approvals/promptHeader.js.map +1 -0
  69. package/dist/core/approvals/toolAnnotationSources.d.ts +105 -0
  70. package/dist/core/approvals/toolAnnotationSources.js +277 -0
  71. package/dist/core/approvals/toolAnnotationSources.js.map +1 -0
  72. package/dist/core/approvals/toolHost.d.ts +46 -0
  73. package/dist/core/approvals/toolHost.js +108 -0
  74. package/dist/core/approvals/toolHost.js.map +1 -0
  75. package/dist/core/debugCapture.d.ts +74 -0
  76. package/dist/core/debugCapture.js +100 -0
  77. package/dist/core/debugCapture.js.map +1 -0
  78. package/dist/core/gthLeanAgentFactory.d.ts +4 -4
  79. package/dist/core/gthLeanAgentFactory.js +4 -4
  80. package/dist/core/launchBanner.d.ts +127 -0
  81. package/dist/core/launchBanner.js +414 -0
  82. package/dist/core/launchBanner.js.map +1 -0
  83. package/dist/core/modelLabel.d.ts +19 -0
  84. package/dist/core/modelLabel.js +26 -0
  85. package/dist/core/modelLabel.js.map +1 -0
  86. package/dist/core/plainToolIndication.d.ts +15 -0
  87. package/dist/core/plainToolIndication.js +174 -0
  88. package/dist/core/plainToolIndication.js.map +1 -0
  89. package/dist/core/reasoningBlocks.d.ts +65 -0
  90. package/dist/core/reasoningBlocks.js +103 -0
  91. package/dist/core/reasoningBlocks.js.map +1 -0
  92. package/dist/core/refusal.d.ts +53 -0
  93. package/dist/core/refusal.js +133 -0
  94. package/dist/core/refusal.js.map +1 -0
  95. package/dist/core/runHeader.d.ts +38 -0
  96. package/dist/core/runHeader.js +42 -0
  97. package/dist/core/runHeader.js.map +1 -0
  98. package/dist/core/runStats.d.ts +14 -3
  99. package/dist/core/runStats.js +48 -3
  100. package/dist/core/runStats.js.map +1 -1
  101. package/dist/core/shell/ShellCommandFailedError.d.ts +3 -4
  102. package/dist/core/shell/ShellCommandFailedError.js +3 -4
  103. package/dist/core/shell/ShellCommandFailedError.js.map +1 -1
  104. package/dist/core/shell/abstention.d.ts +88 -0
  105. package/dist/core/shell/abstention.js +184 -0
  106. package/dist/core/shell/abstention.js.map +1 -0
  107. package/dist/core/shell/approvalCapture.d.ts +271 -0
  108. package/dist/core/shell/approvalCapture.js +108 -0
  109. package/dist/core/shell/approvalCapture.js.map +1 -0
  110. package/dist/core/shell/approvalStop.d.ts +123 -0
  111. package/dist/core/shell/approvalStop.js +269 -0
  112. package/dist/core/shell/approvalStop.js.map +1 -0
  113. package/dist/core/shell/arity.d.ts +6 -0
  114. package/dist/core/shell/arity.js +20 -6
  115. package/dist/core/shell/arity.js.map +1 -1
  116. package/dist/core/shell/denylist.d.ts +11 -0
  117. package/dist/core/shell/denylist.js +37 -0
  118. package/dist/core/shell/denylist.js.map +1 -0
  119. package/dist/core/shell/escalationSeverity.d.ts +141 -0
  120. package/dist/core/shell/escalationSeverity.js +89 -0
  121. package/dist/core/shell/escalationSeverity.js.map +1 -0
  122. package/dist/core/shell/framing.d.ts +190 -0
  123. package/dist/core/shell/framing.js +633 -0
  124. package/dist/core/shell/framing.js.map +1 -0
  125. package/dist/core/shell/hardline.d.ts +103 -0
  126. package/dist/core/shell/hardline.js +780 -0
  127. package/dist/core/shell/hardline.js.map +1 -0
  128. package/dist/core/shell/negotiation.d.ts +328 -0
  129. package/dist/core/shell/negotiation.js +488 -0
  130. package/dist/core/shell/negotiation.js.map +1 -0
  131. package/dist/core/shell/normalize.d.ts +44 -4
  132. package/dist/core/shell/normalize.js +61 -7
  133. package/dist/core/shell/normalize.js.map +1 -1
  134. package/dist/core/shell/openWorld.d.ts +263 -0
  135. package/dist/core/shell/openWorld.js +1188 -0
  136. package/dist/core/shell/openWorld.js.map +1 -0
  137. package/dist/core/shell/rater.d.ts +873 -0
  138. package/dist/core/shell/rater.js +1454 -0
  139. package/dist/core/shell/rater.js.map +1 -0
  140. package/dist/core/shell/raterModel.d.ts +41 -0
  141. package/dist/core/shell/raterModel.js +51 -0
  142. package/dist/core/shell/raterModel.js.map +1 -0
  143. package/dist/core/shell/raterVocabulary.d.ts +121 -0
  144. package/dist/core/shell/raterVocabulary.js +116 -0
  145. package/dist/core/shell/raterVocabulary.js.map +1 -0
  146. package/dist/core/shell/rejection.d.ts +69 -0
  147. package/dist/core/shell/rejection.js +38 -0
  148. package/dist/core/shell/rejection.js.map +1 -0
  149. package/dist/core/toolCallRepair/grammar.d.ts +41 -0
  150. package/dist/core/toolCallRepair/grammar.js +116 -0
  151. package/dist/core/toolCallRepair/grammar.js.map +1 -0
  152. package/dist/core/toolCallRepair/index.d.ts +2 -0
  153. package/dist/core/toolCallRepair/index.js +7 -0
  154. package/dist/core/toolCallRepair/index.js.map +1 -0
  155. package/dist/core/toolCallRepair/payload.d.ts +36 -0
  156. package/dist/core/toolCallRepair/payload.js +341 -0
  157. package/dist/core/toolCallRepair/payload.js.map +1 -0
  158. package/dist/core/toolCallRepair/promote.d.ts +45 -0
  159. package/dist/core/toolCallRepair/promote.js +90 -0
  160. package/dist/core/toolCallRepair/promote.js.map +1 -0
  161. package/dist/core/toolDisplay.d.ts +123 -0
  162. package/dist/core/toolDisplay.js +451 -0
  163. package/dist/core/toolDisplay.js.map +1 -0
  164. package/dist/core/toolOutputChannel.d.ts +95 -0
  165. package/dist/core/toolOutputChannel.js +165 -0
  166. package/dist/core/toolOutputChannel.js.map +1 -0
  167. package/dist/core/types.d.ts +349 -16
  168. package/dist/core/types.js.map +1 -1
  169. package/dist/history/historyFormat.d.ts +12 -3
  170. package/dist/history/historyFormat.js +50 -8
  171. package/dist/history/historyFormat.js.map +1 -1
  172. package/dist/history/historyStore.d.ts +77 -0
  173. package/dist/history/historyStore.js +173 -6
  174. package/dist/history/historyStore.js.map +1 -1
  175. package/dist/history/recordSession.d.ts +10 -1
  176. package/dist/history/recordSession.js +27 -0
  177. package/dist/history/recordSession.js.map +1 -1
  178. package/dist/providers/anthropic.js +12 -0
  179. package/dist/providers/anthropic.js.map +1 -1
  180. package/dist/providers/configurationPassthrough.d.ts +107 -0
  181. package/dist/providers/configurationPassthrough.js +148 -0
  182. package/dist/providers/configurationPassthrough.js.map +1 -0
  183. package/dist/providers/geminiSchemaSanitizer.d.ts +55 -0
  184. package/dist/providers/geminiSchemaSanitizer.js +347 -0
  185. package/dist/providers/geminiSchemaSanitizer.js.map +1 -0
  186. package/dist/providers/geminiThinking.d.ts +60 -0
  187. package/dist/providers/geminiThinking.js +92 -0
  188. package/dist/providers/geminiThinking.js.map +1 -0
  189. package/dist/providers/google-genai.js +18 -1
  190. package/dist/providers/google-genai.js.map +1 -1
  191. package/dist/providers/groq.js +12 -0
  192. package/dist/providers/groq.js.map +1 -1
  193. package/dist/providers/huggingface.d.ts +25 -0
  194. package/dist/providers/huggingface.js +69 -0
  195. package/dist/providers/huggingface.js.map +1 -0
  196. package/dist/providers/modelCatalog.d.ts +109 -0
  197. package/dist/providers/modelCatalog.js +245 -0
  198. package/dist/providers/modelCatalog.js.map +1 -0
  199. package/dist/providers/modelDiscovery.d.ts +99 -5
  200. package/dist/providers/modelDiscovery.js +191 -35
  201. package/dist/providers/modelDiscovery.js.map +1 -1
  202. package/dist/providers/ollama.d.ts +18 -4
  203. package/dist/providers/ollama.js +67 -37
  204. package/dist/providers/ollama.js.map +1 -1
  205. package/dist/providers/openai.js +34 -0
  206. package/dist/providers/openai.js.map +1 -1
  207. package/dist/providers/openrouter.d.ts +26 -4
  208. package/dist/providers/openrouter.js +83 -26
  209. package/dist/providers/openrouter.js.map +1 -1
  210. package/dist/providers/vertexai.js +19 -1
  211. package/dist/providers/vertexai.js.map +1 -1
  212. package/dist/providers/xai.js +20 -0
  213. package/dist/providers/xai.js.map +1 -1
  214. package/dist/runtime/askStructured.d.ts +105 -0
  215. package/dist/runtime/askStructured.js +120 -0
  216. package/dist/runtime/askStructured.js.map +1 -0
  217. package/dist/runtime/conversation.d.ts +64 -0
  218. package/dist/runtime/conversation.js +171 -0
  219. package/dist/runtime/conversation.js.map +1 -0
  220. package/dist/runtime/singleShot.d.ts +37 -6
  221. package/dist/runtime/singleShot.js +113 -67
  222. package/dist/runtime/singleShot.js.map +1 -1
  223. package/dist/runtime/structuredOutput.d.ts +104 -0
  224. package/dist/runtime/structuredOutput.js +393 -0
  225. package/dist/runtime/structuredOutput.js.map +1 -0
  226. package/dist/utils/ProgressIndicator.d.ts +21 -0
  227. package/dist/utils/ProgressIndicator.js +30 -3
  228. package/dist/utils/ProgressIndicator.js.map +1 -1
  229. package/dist/utils/aiignoreUtils.js.map +1 -1
  230. package/dist/utils/binaryOutputUtils.js.map +1 -1
  231. package/dist/utils/consoleUtils.d.ts +95 -0
  232. package/dist/utils/consoleUtils.js +112 -2
  233. package/dist/utils/consoleUtils.js.map +1 -1
  234. package/dist/utils/crashHandler.d.ts +87 -0
  235. package/dist/utils/crashHandler.js +128 -0
  236. package/dist/utils/crashHandler.js.map +1 -0
  237. package/dist/utils/debugDump.d.ts +134 -0
  238. package/dist/utils/debugDump.js +381 -0
  239. package/dist/utils/debugDump.js.map +1 -0
  240. package/dist/utils/debugUtils.d.ts +13 -4
  241. package/dist/utils/debugUtils.js +36 -13
  242. package/dist/utils/debugUtils.js.map +1 -1
  243. package/dist/utils/displayWidth.d.ts +53 -0
  244. package/dist/utils/displayWidth.js +195 -0
  245. package/dist/utils/displayWidth.js.map +1 -0
  246. package/dist/utils/fileUtils.js.map +1 -1
  247. package/dist/utils/globalConfigUtils.d.ts +14 -2
  248. package/dist/utils/globalConfigUtils.js +22 -4
  249. package/dist/utils/globalConfigUtils.js.map +1 -1
  250. package/dist/utils/llmUtils.d.ts +39 -8
  251. package/dist/utils/llmUtils.js +76 -8
  252. package/dist/utils/llmUtils.js.map +1 -1
  253. package/dist/utils/redactSecrets.d.ts +63 -0
  254. package/dist/utils/redactSecrets.js +286 -0
  255. package/dist/utils/redactSecrets.js.map +1 -0
  256. package/dist/utils/systemPromptNotes.d.ts +222 -0
  257. package/dist/utils/systemPromptNotes.js +338 -0
  258. package/dist/utils/systemPromptNotes.js.map +1 -0
  259. package/dist/utils/systemUtils.d.ts +18 -1
  260. package/dist/utils/systemUtils.js +38 -3
  261. package/dist/utils/systemUtils.js.map +1 -1
  262. package/dist/utils/toolMatching.d.ts +30 -0
  263. package/dist/utils/toolMatching.js +44 -0
  264. package/dist/utils/toolMatching.js.map +1 -0
  265. package/dist/utils/untrustedText.d.ts +86 -0
  266. package/dist/utils/untrustedText.js +101 -0
  267. package/dist/utils/untrustedText.js.map +1 -0
  268. package/package.json +21 -7
  269. package/schema/gsloth-config.schema.json +1921 -326
  270. package/dist/core/shell/allowlist.d.ts +0 -75
  271. package/dist/core/shell/allowlist.js +0 -187
  272. package/dist/core/shell/allowlist.js.map +0 -1
  273. package/dist/core/shell/judge.d.ts +0 -161
  274. package/dist/core/shell/judge.js +0 -261
  275. package/dist/core/shell/judge.js.map +0 -1
@@ -1 +1 @@
1
- {"version":3,"file":"loader.js","sourceRoot":"","sources":["../../src/config/loader.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"loader.js","sourceRoot":"","sources":["../../src/config/loader.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AACH,OAAO,EACL,UAAU,EACV,mBAAmB,EACnB,sBAAsB,EACtB,wBAAwB,EACxB,yBAAyB,EACzB,uBAAuB,EACvB,sBAAsB,GACvB,MAAM,mBAAmB,CAAC;AAC3B,OAAO,EAAE,WAAW,EAAE,MAAM,oBAAoB,CAAC;AACjD,OAAO,EACL,YAAY,EACZ,YAAY,EACZ,WAAW,EACX,cAAc,EACd,eAAe,GAChB,MAAM,4BAA4B,CAAC;AACpC,OAAO,EACL,0BAA0B,EAC1B,0BAA0B,EAC1B,0BAA0B,EAC1B,uBAAuB,EACvB,2BAA2B,EAC3B,4BAA4B,EAC5B,cAAc,EACd,kBAAkB,EAClB,6BAA6B,EAC7B,oBAAoB,GAErB,MAAM,uBAAuB,CAAC;AAC/B,OAAO,EAAE,UAAU,EAAE,MAAM,sBAAsB,CAAC;AAClD,OAAO,EAAE,yBAAyB,EAAE,uBAAuB,EAAE,MAAM,6BAA6B,CAAC;AACjG,OAAO,EAAE,oBAAoB,EAAE,sBAAsB,EAAE,MAAM,gCAAgC,CAAC;AAC9F,OAAO,EAAE,uBAAuB,EAAE,kBAAkB,EAAE,MAAM,yBAAyB,CAAC;AACtF,OAAO,EAAE,6BAA6B,EAAE,kBAAkB,EAAE,MAAM,iCAAiC,CAAC;AACpG,OAAO,EACL,GAAG,EACH,iBAAiB,EACjB,WAAW,EACX,KAAK,EACL,aAAa,EACb,YAAY,GACb,MAAM,2BAA2B,CAAC;AACnC,OAAO,EAAE,gBAAgB,EAAE,MAAM,uBAAuB,CAAC;AACzD,OAAO,EAAE,eAAe,EAAE,MAAM,sBAAsB,CAAC;AAEvD,OAAO,EAAE,UAAU,EAAE,YAAY,EAAE,MAAM,SAAS,CAAC;AACnD,OAAO,EAAE,OAAO,EAAE,MAAM,SAAS,CAAC;AAClC,OAAO,EAAE,OAAO,EAAE,OAAO,EAAE,GAAG,EAAE,MAAM,WAAW,CAAC;AAClD,OAAO,EAAE,cAAc,EAAE,MAAM,yBAAyB,CAAC;AAuBzD;;;;;;;;GAQG;AACH,SAAS,kBAAkB,CACzB,0BAAsD;IAEtD,OAAO,0BAA0B,CAAC,MAAM,CAAC,CAAC,CAAC,0BAA0B,CAAC,eAAe,CAAC,CAAC,CAAC,SAAS,CAAC;AACpG,CAAC;AAED;;;;GAIG;AACH,SAAS,qBAAqB,CAAC,OAAe;IAC5C,OAAO,GAAG,OAAO,CAAC,kBAAkB,EAAE,EAAE,mBAAmB,EAAE,OAAO,CAAC,GAAG,GAAG,EAAE,CAAC;AAChF,CAAC;AAED;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAqCG;AACH,SAAS,sBAAsB,CAC7B,GAAM,EACN,WAAmB,EACnB,OAA6B;IAE7B,+FAA+F;IAC/F,uFAAuF;IACvF,sFAAsF;IACtF,IAAI,cAAc,CAAC,GAAG,CAAC,EAAE,CAAC;QACxB,MAAM,gBAAgB,GAAG,0BAA0B,CAAC,GAAG,CAAC,CAAC;QACzD,IAAI,gBAAgB,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YAChC,MAAM,IAAI,oBAAoB,CAC5B,4BAA4B,WAAW,MAAM,4BAA4B,CAAC,gBAAgB,CAAC,EAAE,EAC7F,EAAE,WAAW,EAAE,CAChB,CAAC;QACJ,CAAC;QAED,+FAA+F;QAC/F,2FAA2F;QAC3F,wFAAwF;QACxF,qFAAqF;QACrF,MAAM,aAAa,GAAG,0BAA0B,CAAC,GAAG,CAAC,CAAC;QACtD,IAAI,aAAa,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YAC7B,MAAM,IAAI,oBAAoB,CAC5B,4BAA4B,WAAW,MAAM,4BAA4B,CAAC,aAAa,CAAC,EAAE,EAC1F,EAAE,WAAW,EAAE,CAChB,CAAC;QACJ,CAAC;QAED,MAAM,WAAW,GAAG,uBAAuB,CAAC,GAAG,CAAC,CAAC;QACjD,IAAI,WAAW,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YAC3B,cAAc,CACZ,4BAA4B,WAAW,CAAC,MAAM,KAAK,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,OAAO,WAAW,IAAI;gBACzF,GAAG,WAAW,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK,WAAW,CAAC,MAAM,KAAK,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,UAAU,cAAc;gBAC3F,8CAA8C,CACjD,CAAC;QACJ,CAAC;IACH,CAAC;IAED,MAAM,MAAM,GAAG,kBAAkB,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC;IACjD,IAAI,CAAC,MAAM,CAAC,OAAO,EAAE,CAAC;QACpB,MAAM,IAAI,oBAAoB,CAC5B,4BAA4B,WAAW,MAAM,2BAA2B,CAAC,MAAM,CAAC,KAAK,CAAC,EAAE,EACxF,EAAE,WAAW,EAAE,CAChB,CAAC;IACJ,CAAC;IAED,uFAAuF;IACvF,+FAA+F;IAC/F,8FAA8F;IAC9F,+DAA+D;IAC/D,EAAE;IACF,8FAA8F;IAC9F,8FAA8F;IAC9F,+FAA+F;IAC/F,6FAA6F;IAC7F,qBAAqB;IACrB,IAAI,cAAc,CAAC,GAAG,CAAC,EAAE,CAAC;QACxB,KAAK,MAAM,GAAG,IAAI,0BAA0B,CAAC,GAAG,CAAC,EAAE,CAAC;YAClD,IAAI,CAAC,gCAAgC,CAAC,GAAG,CAAC,OAAO,EAAE,OAAO,CAAC,EAAE,CAAC;gBAC5D,MAAM,IAAI,oBAAoB,CAC5B,4BAA4B,WAAW,KAAK;oBAC1C,OAAO,GAAG,CAAC,IAAI,KAAK,6BAA6B,CAC/C,GAAG,EACH,OAAO,EAAE,UAAU,CAAC,CAAC,CAAC,qBAAqB,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,SAAS,CACrE,EAAE,EACL,EAAE,WAAW,EAAE,eAAe,EAAE,GAAG,CAAC,OAAO,EAAE,CAC9C,CAAC;YACJ,CAAC;QACH,CAAC;IACH,CAAC;IAED,OAAO,GAAG,CAAC;AACb,CAAC;AAED;;;;GAIG;AACH,MAAM,sBAAsB,GAAsB;IAChD,wBAAwB;IACxB,yBAAyB;IACzB,sBAAsB;IACtB,uBAAuB;IACvB,sBAAsB;CACvB,CAAC;AAEF;;;;GAIG;AACH,MAAM,qBAAqB,GAAsB;IAC/C,wBAAwB;IACxB,yBAAyB;CAC1B,CAAC;AAEF;;;;GAIG;AACH,SAAS,gBAAgB,CAAC,IAAY;IACpC,OAAO,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,IAAI,IAAI,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC;AAC3D,CAAC;AAED;;;;;;GAMG;AACH,SAAS,6BAA6B,CACpC,GAAW,EACX,QAAgB,EAChB,kBAAsC;IAEtC,MAAM,eAAe,GAAG,kBAAkB,EAAE,IAAI,EAAE,CAAC;IACnD,MAAM,aAAa,GAAG,OAAO,CAAC,GAAG,EAAE,UAAU,CAAC,CAAC;IAC/C,IAAI,UAAU,CAAC,aAAa,CAAC,EAAE,CAAC;QAC9B,MAAM,kBAAkB,GAAG,OAAO,CAAC,aAAa,EAAE,mBAAmB,CAAC,CAAC;QACvE,MAAM,UAAU,GAAG,eAAe;YAChC,CAAC,CAAC,OAAO,CAAC,kBAAkB,EAAE,eAAe,EAAE,QAAQ,CAAC;YACxD,CAAC,CAAC,OAAO,CAAC,kBAAkB,EAAE,QAAQ,CAAC,CAAC;QAC1C,IAAI,UAAU,CAAC,UAAU,CAAC,EAAE,CAAC;YAC3B,OAAO,UAAU,CAAC;QACpB,CAAC;IACH,CAAC;IACD,OAAO,OAAO,CAAC,GAAG,EAAE,QAAQ,CAAC,CAAC;AAChC,CAAC;AAED;;;;;GAKG;AACH,SAAS,iBAAiB,CACxB,OAAe,EACf,QAAgB,EAChB,eAAmC;IAEnC,OAAO,OAAO,KAAK,iBAAiB,EAAE;QACpC,CAAC,CAAC,uBAAuB,CAAC,QAAQ,EAAE,eAAe,CAAC;QACpD,CAAC,CAAC,6BAA6B,CAAC,OAAO,EAAE,QAAQ,EAAE,eAAe,CAAC,CAAC;AACxE,CAAC;AAED;;;;;;GAMG;AACH,QAAQ,CAAC,CAAC,oBAAoB;IAC5B,MAAM,IAAI,GAAG,OAAO,EAAE,CAAC;IACvB,IAAI,GAAG,GAAG,iBAAiB,EAAE,CAAC;IAC9B,SAAS,CAAC;QACR,MAAM,GAAG,CAAC;QACV,MAAM,MAAM,GAAG,OAAO,CAAC,GAAG,CAAC,CAAC;QAC5B,IAAI,UAAU,CAAC,OAAO,CAAC,GAAG,EAAE,MAAM,CAAC,CAAC,IAAI,GAAG,KAAK,IAAI,IAAI,MAAM,KAAK,GAAG,EAAE,CAAC;YACvE,MAAM;QACR,CAAC;QACD,GAAG,GAAG,MAAM,CAAC;IACf,CAAC;AACH,CAAC;AAED;;;;;;;;;;;;;;;;;;;;GAoBG;AACH,MAAM,UAAU,qBAAqB,CACnC,0BAAsD;IAEtD,IAAI,0BAA0B,CAAC,MAAM,EAAE,CAAC;QACtC,OAAO,SAAS,CAAC;IACnB,CAAC;IACD,IAAI,0BAA0B,CAAC,gBAAgB,EAAE,CAAC;QAChD,OAAO,UAAU,CAAC,0BAA0B,CAAC,gBAAgB,CAAC;YAC5D,CAAC,CAAC;gBACE,GAAG,EAAE,OAAO,CAAC,0BAA0B,CAAC,gBAAgB,CAAC;gBACzD,IAAI,EAAE,0BAA0B,CAAC,gBAAgB;aAClD;YACH,CAAC,CAAC,SAAS,CAAC;IAChB,CAAC;IAED,mFAAmF;IACnF,KAAK,MAAM,GAAG,IAAI,oBAAoB,EAAE,EAAE,CAAC;QACzC,KAAK,MAAM,QAAQ,IAAI,sBAAsB,EAAE,CAAC;YAC9C,MAAM,SAAS,GAAG,iBAAiB,CACjC,GAAG,EACH,QAAQ,EACR,0BAA0B,CAAC,eAAe,CAC3C,CAAC;YACF,IAAI,UAAU,CAAC,SAAS,CAAC,EAAE,CAAC;gBAC1B,OAAO,EAAE,GAAG,EAAE,IAAI,EAAE,SAAS,EAAE,CAAC;YAClC,CAAC;QACH,CAAC;IACH,CAAC;IACD,OAAO,SAAS,CAAC;AACnB,CAAC;AAED;;;;;;;;;;;;;;;;;;;;;;;;GAwBG;AACH,MAAM,UAAU,gCAAgC,CAC9C,eAAuB,EACvB,OAAkC;IAElC,MAAM,OAAO,GAAG,eAAe,EAAE,IAAI,EAAE,CAAC;IACxC,IAAI,CAAC,OAAO,EAAE,CAAC;QACb,OAAO,SAAS,CAAC;IACnB,CAAC;IACD,IAAI,OAAO,EAAE,UAAU,EAAE,CAAC;QACxB,MAAM,SAAS,GAAG,kBAAkB,EAAE,CAAC;QACvC,MAAM,UAAU,GAAG,OAAO,CAAC,SAAS,EAAE,mBAAmB,EAAE,OAAO,CAAC,CAAC;QACpE,KAAK,MAAM,QAAQ,IAAI,sBAAsB,EAAE,CAAC;YAC9C,MAAM,SAAS,GAAG,OAAO,CAAC,UAAU,EAAE,QAAQ,CAAC,CAAC;YAChD,IAAI,UAAU,CAAC,SAAS,CAAC,EAAE,CAAC;gBAC1B,OAAO,SAAS,CAAC;YACnB,CAAC;QACH,CAAC;QACD,OAAO,SAAS,CAAC;IACnB,CAAC;IACD,KAAK,MAAM,GAAG,IAAI,oBAAoB,EAAE,EAAE,CAAC;QACzC,MAAM,UAAU,GAAG,OAAO,CAAC,GAAG,EAAE,UAAU,EAAE,mBAAmB,EAAE,OAAO,CAAC,CAAC;QAC1E,KAAK,MAAM,QAAQ,IAAI,sBAAsB,EAAE,CAAC;YAC9C,MAAM,SAAS,GAAG,OAAO,CAAC,UAAU,EAAE,QAAQ,CAAC,CAAC;YAChD,IAAI,UAAU,CAAC,SAAS,CAAC,EAAE,CAAC;gBAC1B,OAAO,SAAS,CAAC;YACnB,CAAC;QACH,CAAC;IACH,CAAC;IACD,OAAO,SAAS,CAAC;AACnB,CAAC;AAED;;;;;;;;;;;GAWG;AACH,SAAS,6BAA6B,CACpC,0BAAsD;IAEtD,MAAM,OAAO,GAAG,0BAA0B,CAAC,eAAe,EAAE,IAAI,EAAE,CAAC;IACnE,IAAI,CAAC,OAAO,IAAI,0BAA0B,CAAC,gBAAgB,EAAE,CAAC;QAC5D,OAAO,SAAS,CAAC;IACnB,CAAC;IACD,OAAO,gCAAgC,CAAC,OAAO,EAAE;QAC/C,UAAU,EAAE,0BAA0B,CAAC,MAAM;KAC9C,CAAC;QACA,CAAC,CAAC,SAAS;QACX,CAAC,CAAC,OAAO,CAAC;AACd,CAAC;AAED,yFAAyF;AACzF,SAAS,8BAA8B,CAAC,OAAe,EAAE,QAAQ,GAAG,KAAK;IACvE,MAAM,IAAI,GAAG,QAAQ;QACnB,CAAC,CAAC,qBAAqB,CAAC,OAAO,CAAC;QAChC,CAAC,CAAC,GAAG,UAAU,IAAI,mBAAmB,IAAI,OAAO,GAAG,CAAC;IACvD,OAAO,CACL,qBAAqB,OAAO,iCAAiC;QAC7D,GAAG,IAAI,GAAG;QACV,YAAY,sBAAsB,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,CACjD,CAAC;AACJ,CAAC;AAED;;;;;;;;;;;;;;;;;;;GAmBG;AACH,MAAM,CAAC,KAAK,UAAU,mBAAmB,CAAC,OAGzC;IACC,MAAM,eAAe,GAAG,OAAO,EAAE,eAAe,CAAC;IACjD,MAAM,KAAK,GAAwB,EAAE,UAAU,EAAE,OAAO,EAAE,UAAU,EAAE,CAAC;IACvE,mFAAmF;IACnF,KAAK,MAAM,QAAQ,IAAI,qBAAqB,EAAE,CAAC;QAC7C,MAAM,QAAQ,GAAG,6BAA6B,CAAC,QAAQ,EAAE,eAAe,CAAC,CAAC;QAC1E,IAAI,UAAU,CAAC,QAAQ,CAAC,EAAE,CAAC;YACzB,MAAM,KAAK,GAAG,eAAe;gBAC3B,CAAC,CAAC,GAAG,mBAAmB,IAAI,eAAe,IAAI,QAAQ,WAAW;gBAClE,CAAC,CAAC,GAAG,QAAQ,WAAW,CAAC;YAC3B,IAAI,CAAC;gBACH,MAAM,MAAM,GAAG,UAAU,CAAC,YAAY,CAAC,QAAQ,EAAE,MAAM,CAAC,EAAE,KAAK,CAA4B,CAAC;gBAC5F,OAAO,sBAAsB,CAAC,MAAM,EAAE,KAAK,EAAE,KAAK,CAA0B,CAAC;YAC/E,CAAC;YAAC,OAAO,CAAC,EAAE,CAAC;gBACX,yFAAyF;gBACzF,wFAAwF;gBACxF,wFAAwF;gBACxF,0FAA0F;gBAC1F,IAAI,sBAAsB,CAAC,CAAC,CAAC,EAAE,CAAC;oBAC9B,MAAM,CAAC,CAAC;gBACV,CAAC;gBACD,YAAY,CAAC,CAAC,YAAY,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC;gBACjD,cAAc,CAAC,qCAAqC,QAAQ,gBAAgB,CAAC,CAAC;gBAC9E,OAAO,SAAS,CAAC;YACnB,CAAC;QACH,CAAC;IACH,CAAC;IAED,qEAAqE;IACrE,KAAK,MAAM,QAAQ,IAAI,CAAC,sBAAsB,EAAE,uBAAuB,CAAC,EAAE,CAAC;QACzE,MAAM,UAAU,GAAG,6BAA6B,CAAC,QAAQ,EAAE,eAAe,CAAC,CAAC;QAC5E,IAAI,UAAU,CAAC,UAAU,CAAC,EAAE,CAAC;YAC3B,MAAM,KAAK,GAAG,eAAe;gBAC3B,CAAC,CAAC,GAAG,mBAAmB,IAAI,eAAe,IAAI,QAAQ,WAAW;gBAClE,CAAC,CAAC,GAAG,QAAQ,WAAW,CAAC;YAC3B,IAAI,CAAC;gBACH,MAAM,QAAQ,GAAG,MAAM,kBAAkB,CAAC,UAAU,CAAC,CAAC;gBACtD,MAAM,UAAU,GAAG,MAAM,QAAQ,CAAC,SAAS,EAAE,CAAC;gBAC9C,OAAO,sBAAsB,CAC3B,UAAqC,EACrC,KAAK,EACL,KAAK,CACmB,CAAC;YAC7B,CAAC;YAAC,OAAO,CAAC,EAAE,CAAC;gBACX,6FAA6F;gBAC7F,IAAI,sBAAsB,CAAC,CAAC,CAAC,EAAE,CAAC;oBAC9B,MAAM,CAAC,CAAC;gBACV,CAAC;gBACD,YAAY,CAAC,CAAC,YAAY,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC;gBACjD,cAAc,CAAC,qCAAqC,UAAU,gBAAgB,CAAC,CAAC;gBAChF,OAAO,SAAS,CAAC;YACnB,CAAC;QACH,CAAC;IACH,CAAC;IAED,OAAO,SAAS,CAAC;AACnB,CAAC;AAED;;;;GAIG;AACH,KAAK,UAAU,qBAAqB,CAClC,gBAAmB;IAEnB,MAAM,eAAe,GAAG,MAAM,mBAAmB,EAAE,CAAC;IACpD,IAAI,CAAC,eAAe,EAAE,CAAC;QACrB,OAAO,gBAAgB,CAAC;IAC1B,CAAC;IACD,OAAO,SAAS,CAAC,eAA6B,EAAE,gBAAgB,CAAM,CAAC;AACzE,CAAC;AAED;;;;GAIG;AACH,MAAM,uBAAuB,GAAG,EAAE,CAAC;AAEnC;;;;;;;;;GASG;AACH,MAAM,kBAAmB,SAAQ,KAAK;CAAG;AAEzC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAgCG;AACH,MAAM,CAAC,KAAK,UAAU,oBAAoB,CACxC,SAAkC,EAClC,YAAgC,EAChC,OAAkC;IAElC,IAAI,CAAC;QACH,OAAO,MAAM,cAAc,CAAC,SAAS,EAAE,YAAY,EAAE,OAAO,CAAC,CAAC;IAChE,CAAC;IAAC,OAAO,CAAC,EAAE,CAAC;QACX,gGAAgG;QAChG,sFAAsF;QACtF,EAAE;QACF,+FAA+F;QAC/F,2FAA2F;QAC3F,8FAA8F;QAC9F,+FAA+F;QAC/F,+FAA+F;QAC/F,gGAAgG;QAChG,gCAAgC;QAChC,EAAE;QACF,gGAAgG;QAChG,gGAAgG;QAChG,8FAA8F;QAC9F,iFAAiF;QACjF,EAAE;QACF,iFAAiF;QACjF,2FAA2F;QAC3F,gGAAgG;QAChG,iFAAiF;QACjF,IAAI,CAAC,YAAY,kBAAkB,EAAE,CAAC;YACpC,MAAM,IAAI,oBAAoB,CAAC,CAAC,CAAC,OAAO,EAAE,EAAE,EAAE,EAAE,KAAK,EAAE,CAAC,EAAE,CAAC,CAAC;QAC9D,CAAC;QACD,MAAM,CAAC,CAAC;IACV,CAAC;AACH,CAAC;AAED;;;;;;;GAOG;AACH,KAAK,UAAU,cAAc,CAC3B,SAAkC,EAClC,YAAgC,EAChC,OAA6B;IAE7B,MAAM,IAAI,GAAG,YAAY,EAAE,IAAI,EAAE,CAAC;IAClC,OAAO,mBAAmB,CAAC,SAAS,EAAE,IAAI,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,EAAE,EAAE,OAAO,CAAC,CAAC;AACrE,CAAC;AAED;;;;;;;;GAQG;AACH,KAAK,UAAU,mBAAmB,CAChC,SAAkC,EAClC,KAAe,EACf,OAA6B;IAE7B,MAAM,QAAQ,GAAG,OAAO,SAAS,CAAC,OAAO,KAAK,QAAQ,CAAC,CAAC,CAAC,SAAS,CAAC,OAAO,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,SAAS,CAAC;IAC9F,IAAI,CAAC,QAAQ,EAAE,CAAC;QACd,OAAO,SAAS,CAAC;IACnB,CAAC;IAED,+FAA+F;IAC/F,+FAA+F;IAC/F,kGAAkG;IAClG,IAAI,KAAK,CAAC,QAAQ,CAAC,QAAQ,CAAC,EAAE,CAAC;QAC7B,MAAM,IAAI,kBAAkB,CAC1B,uCAAuC,CAAC,GAAG,KAAK,EAAE,QAAQ,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,IAAI;YAC1E,4DAA4D,CAC/D,CAAC;IACJ,CAAC;IAED,2FAA2F;IAC3F,IAAI,KAAK,CAAC,MAAM,IAAI,uBAAuB,EAAE,CAAC;QAC5C,MAAM,IAAI,kBAAkB,CAC1B,0DAA0D,uBAAuB,IAAI;YACnF,GAAG,CAAC,GAAG,KAAK,EAAE,QAAQ,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,gDAAgD,CACvF,CAAC;IACJ,CAAC;IAED,MAAM,QAAQ,GAAG,gCAAgC,CAAC,QAAQ,EAAE,OAAO,CAAC,CAAC;IACrE,IAAI,CAAC,QAAQ,EAAE,CAAC;QACd,MAAM,IAAI,GAAG,KAAK,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,sBAAsB,KAAK,CAAC,KAAK,CAAC,MAAM,GAAG,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC;QACvF,MAAM,OAAO,GAAG,OAAO,EAAE,UAAU;YACjC,CAAC,CAAC,qBAAqB,CAAC,QAAQ,CAAC;YACjC,CAAC,CAAC,GAAG,UAAU,IAAI,mBAAmB,IAAI,QAAQ,GAAG,CAAC;QACxD,MAAM,IAAI,kBAAkB,CAC1B,YAAY,QAAQ,4BAA4B,IAAI,oCAAoC;YACtF,GAAG,OAAO,aAAa,sBAAsB,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CAC/D,CAAC;IACJ,CAAC;IAED,IAAI,OAAgC,CAAC;IACrC,IAAI,CAAC;QACH,OAAO,GAAG,MAAM,mBAAmB,CAAC,QAAQ,CAAC,CAAC;IAChD,CAAC;IAAC,OAAO,CAAC,EAAE,CAAC;QACX,YAAY,CAAC,CAAC,YAAY,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC;QACjD,MAAM,IAAI,kBAAkB,CAAC,gCAAgC,QAAQ,UAAU,QAAQ,GAAG,CAAC,CAAC;IAC9F,CAAC;IAED,8FAA8F;IAC9F,+FAA+F;IAC/F,MAAM,aAAa,GAAG,sBAAsB,CAAC,OAAO,EAAE,GAAG,QAAQ,iBAAiB,EAAE,OAAO,CAAC,CAAC;IAE7F,gGAAgG;IAChG,kGAAkG;IAClG,2BAA2B;IAC3B,MAAM,YAAY,GAAG,MAAM,mBAAmB,CAAC,aAAa,EAAE,CAAC,GAAG,KAAK,EAAE,QAAQ,CAAC,EAAE,OAAO,CAAC,CAAC;IAE7F,4FAA4F;IAC5F,MAAM,UAAU,GAA4B,EAAE,GAAG,SAAS,EAAE,CAAC;IAC7D,OAAO,UAAU,CAAC,OAAO,CAAC;IAC1B,OAAO,SAAS,CAAC,YAAY,EAAE,UAAU,CAAC,CAAC;AAC7C,CAAC;AAED;;;;;;;;;GASG;AAEH;;;;;;;GAOG;AACH,MAAM,UAAU,gBAAgB,CAAC,0BAAsD;IACrF,OAAO,qBAAqB,CAAC,0BAA0B,CAAC,KAAK,SAAS,CAAC;AACzE,CAAC;AAED;;;;;;GAMG;AACH,MAAM,CAAC,KAAK,UAAU,YAAY,CAChC,0BAAsD;IAEtD,IAAI,gBAAgB,CAAC,0BAA0B,CAAC,EAAE,CAAC;QACjD,OAAO,IAAI,CAAC;IACd,CAAC;IACD,OAAO,CACL,CAAC,MAAM,mBAAmB,CAAC;QACzB,eAAe,EAAE,kBAAkB,CAAC,0BAA0B,CAAC;QAC/D,UAAU,EAAE,0BAA0B,CAAC,MAAM;KAC9C,CAAC,CAAC,KAAK,SAAS,CAClB,CAAC;AACJ,CAAC;AAED;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA4BG;AACH,MAAM,CAAC,KAAK,UAAU,iBAAiB,CACrC,0BAAsD;IAEtD,MAAM,UAAU,GAAG,MAAM,wBAAwB,CAAC,0BAA0B,CAAC,CAAC;IAC9E,IAAI,UAAU,KAAK,SAAS,EAAE,CAAC;QAC7B,OAAO,UAAU,CAAC;IACpB,CAAC;IACD,MAAM,SAAS,GAAG,MAAM,8BAA8B,CACpD,kBAAkB,CAAC,0BAA0B,CAAC,CAC/C,CAAC;IACF,MAAM,SAAS,GAAG,SAAS,EAAE,GAAG,CAAC,GAAG,CAAC;IACrC,OAAO,OAAO,SAAS,KAAK,SAAS,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,SAAS,CAAC;AAChE,CAAC;AAED,qGAAqG;AACrG,KAAK,UAAU,wBAAwB,CACrC,0BAAsD;IAEtD,MAAM,UAAU,GAAG,qBAAqB,CAAC,0BAA0B,CAAC,CAAC;IACrE,IAAI,CAAC,UAAU,EAAE,CAAC;QAChB,OAAO,SAAS,CAAC;IACnB,CAAC;IACD,IAAI,GAA4B,CAAC;IACjC,IAAI,CAAC;QACH,GAAG,GAAG,MAAM,mBAAmB,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC;IACnD,CAAC;IAAC,OAAO,CAAC,EAAE,CAAC;QACX,0FAA0F;QAC1F,YAAY,CAAC,CAAC,YAAY,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC;QACjD,OAAO,SAAS,CAAC;IACnB,CAAC;IACD,+FAA+F;IAC/F,8FAA8F;IAC9F,gGAAgG;IAChG,4FAA4F;IAC5F,qFAAqF;IACrF,wDAAwD;IACxD,EAAE;IACF,kGAAkG;IAClG,kGAAkG;IAClG,gGAAgG;IAChG,gGAAgG;IAChG,mGAAmG;IACnG,6FAA6F;IAC7F,IAAI,OAAO,GAAG,CAAC,OAAO,KAAK,QAAQ,EAAE,CAAC;QACpC,GAAG,GAAG,MAAM,oBAAoB,CAAC,GAAG,EAAE,0BAA0B,CAAC,eAAe,CAAC,CAAC;IACpF,CAAC;IACD,OAAO,OAAO,GAAG,CAAC,GAAG,KAAK,SAAS,CAAC,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC,SAAS,CAAC;AAC5D,CAAC;AAED;;;GAGG;AACH,MAAM,CAAC,KAAK,UAAU,UAAU,CAC9B,0BAAsD;IAEtD,IACE,0BAA0B,CAAC,gBAAgB;QAC3C,CAAC,UAAU,CAAC,0BAA0B,CAAC,gBAAgB,CAAC,EACxD,CAAC;QACD,8FAA8F;QAC9F,+FAA+F;QAC/F,+FAA+F;QAC/F,iGAAiG;QACjG,iGAAiG;QACjG,8FAA8F;QAC9F,MAAM,IAAI,oBAAoB,CAC5B,2BAA2B,0BAA0B,CAAC,gBAAgB,kBAAkB,EACxF,EAAE,WAAW,EAAE,0BAA0B,CAAC,gBAAgB,EAAE,CAC7D,CAAC;IACJ,CAAC;IAED,6FAA6F;IAC7F,gGAAgG;IAChG,kGAAkG;IAClG,2FAA2F;IAC3F,sDAAsD;IACtD,aAAa,CAAC,SAAS,CAAC,CAAC;IAEzB,4FAA4F;IAC5F,8FAA8F;IAC9F,sFAAsF;IACtF,MAAM,UAAU,GAAG,qBAAqB,CAAC,0BAA0B,CAAC,CAAC;IAErE,+FAA+F;IAC/F,gGAAgG;IAChG,+FAA+F;IAC/F,oFAAoF;IACpF,EAAE;IACF,gGAAgG;IAChG,kGAAkG;IAClG,iGAAiG;IACjG,kGAAkG;IAClG,+FAA+F;IAC/F,2DAA2D;IAC3D,EAAE;IACF,8FAA8F;IAC9F,oEAAoE;IACpE,MAAM,eAAe,GAAG,6BAA6B,CAAC,0BAA0B,CAAC,CAAC;IAClF,IAAI,eAAe,EAAE,CAAC;QACpB,MAAM,IAAI,oBAAoB,CAC5B,8BAA8B,CAAC,eAAe,EAAE,0BAA0B,CAAC,MAAM,CAAC,EAClF;YACE,eAAe,EAAE,eAAe;SACjC,CACF,CAAC;IACJ,CAAC;IAED,MAAM,OAAO,GAAG,UAAU,EAAE,GAAG,IAAI,iBAAiB,EAAE,CAAC;IAEvD,0FAA0F;IAC1F,8FAA8F;IAC9F,2FAA2F;IAC3F,iGAAiG;IACjG,oGAAoG;IACpG,aAAa,CAAC,UAAU,EAAE,GAAG,CAAC,CAAC;IAE/B,qFAAqF;IACrF,4FAA4F;IAC5F,4FAA4F;IAC5F,8FAA8F;IAC9F,MAAM,wBAAwB,GAC5B,UAAU,IAAI,gBAAgB,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC,CAAC,SAAS,CAAC;IAChF,MAAM,cAAc,GAClB,0BAA0B,CAAC,gBAAgB;QAC3C,wBAAwB;QACxB,iBAAiB,CACf,OAAO,EACP,wBAAwB,EACxB,0BAA0B,CAAC,eAAe,CAC3C,CAAC;IAEJ,8FAA8F;IAC9F,sFAAsF;IACtF,6FAA6F;IAC7F,IAAI,CAAC,UAAU,EAAE,CAAC;QAChB,wFAAwF;QACxF,2FAA2F;QAC3F,+FAA+F;QAC/F,aAAa;QACb,MAAM,eAAe,GAAG,MAAM,mBAAmB,CAAC;YAChD,eAAe,EAAE,kBAAkB,CAAC,0BAA0B,CAAC;YAC/D,UAAU,EAAE,0BAA0B,CAAC,MAAM;SAC9C,CAAC,CAAC;QACH,IAAI,eAAe,EAAE,CAAC;YACpB,IAAI,iBAAiB,GAAG,eAAe,CAAC;YACxC,IAAI,OAAO,iBAAiB,CAAC,OAAO,KAAK,QAAQ,EAAE,CAAC;gBAClD,iBAAiB,GAAG,CAAC,MAAM,oBAAoB,CAC7C,iBAA4C,EAC5C,kBAAkB,CAAC,0BAA0B,CAAC,EAC9C,EAAE,UAAU,EAAE,0BAA0B,CAAC,MAAM,EAAE,CAClD,CAA0B,CAAC;YAC9B,CAAC;YACD,IACE,iBAAiB,CAAC,GAAG;gBACrB,OAAO,iBAAiB,CAAC,GAAG,KAAK,QAAQ;gBACzC,MAAM,IAAI,iBAAiB,CAAC,GAAG,EAC/B,CAAC;gBACD,uEAAuE;gBACvE,OAAO,MAAM,aAAa,CAAC,iBAAiC,EAAE,0BAA0B,CAAC,CAAC;YAC5F,CAAC;YACD,4FAA4F;YAC5F,2FAA2F;YAC3F,4FAA4F;YAC5F,0CAA0C;YAC1C,MAAM,aAAa,GAAG,kBAAkB,CAAC,0BAA0B,CAAC,CAAC;YACrE,MAAM,WAAW,GAAG,aAAa;gBAC/B,CAAC,CAAC,GAAG,mBAAmB,IAAI,aAAa,IAAI,wBAAwB,WAAW;gBAChF,CAAC,CAAC,GAAG,wBAAwB,WAAW,CAAC;YAC3C,MAAM,IAAI,oBAAoB,CAC5B,2FAA2F,EAC3F,EAAE,WAAW,EAAE,CAChB,CAAC;QACJ,CAAC;QACD,IAAI,0BAA0B,CAAC,MAAM,EAAE,CAAC;YACtC,MAAM,IAAI,oBAAoB,CAC5B,8DAA8D,CAC/D,CAAC;QACJ,CAAC;IACH,CAAC;IAED,0FAA0F;IAC1F,8EAA8E;IAC9E,IAAI,gBAAgB,CAAC,cAAc,CAAC,IAAI,UAAU,CAAC,cAAc,CAAC,EAAE,CAAC;QACnE,MAAM,cAAc,GAAG,cAAc,CAAC,QAAQ,CAAC,QAAQ,CAAC;YACtD,CAAC,CAAC,yBAAyB;YAC3B,CAAC,CAAC,wBAAwB,CAAC;QAC7B,IAAI,CAAC;YACH,6EAA6E;YAC7E,6EAA6E;YAC7E,mEAAmE;YACnE,MAAM,iBAAiB,GAAG,sBAAsB,CAC9C,UAAU,CAAC,YAAY,CAAC,cAAc,EAAE,MAAM,CAAC,EAAE,cAAc,CAA4B,EAC3F,cAAc,CACY,CAAC;YAC7B,2FAA2F;YAC3F,+FAA+F;YAC/F,mEAAmE;YACnE,MAAM,qBAAqB,GAAG,CAAC,MAAM,oBAAoB,CACvD,iBAAuD,EACvD,0BAA0B,CAAC,eAAe,CAC3C,CAA4B,CAAC;YAC9B,4EAA4E;YAC5E,MAAM,UAAU,GAAG,CAAC,MAAM,qBAAqB,CAC7C,qBAA2D,CAC5D,CAA4B,CAAC;YAC9B,4EAA4E;YAC5E,IAAI,UAAU,CAAC,GAAG,IAAI,OAAO,UAAU,CAAC,GAAG,KAAK,QAAQ,IAAI,MAAM,IAAI,UAAU,CAAC,GAAG,EAAE,CAAC;gBACrF,OAAO,MAAM,aAAa,CAAC,UAAU,EAAE,0BAA0B,CAAC,CAAC;YACrE,CAAC;iBAAM,CAAC;gBACN,2FAA2F;gBAC3F,uFAAuF;gBACvF,4FAA4F;gBAC5F,wFAAwF;gBACxF,wCAAwC;gBACxC,MAAM,IAAI,oBAAoB,CAC5B,GAAG,cAAc,0DAA0D,EAC3E,EAAE,WAAW,EAAE,cAAc,EAAE,CAChC,CAAC;YACJ,CAAC;QACH,CAAC;QAAC,OAAO,CAAC,EAAE,CAAC;YACX,uFAAuF;YACvF,4FAA4F;YAC5F,wFAAwF;YACxF,4FAA4F;YAC5F,0FAA0F;YAC1F,kDAAkD;YAClD,IAAI,yBAAyB,CAAC,CAAC,CAAC,EAAE,CAAC;gBACjC,MAAM,CAAC,CAAC;YACV,CAAC;YACD,6FAA6F;YAC7F,yFAAyF;YACzF,4FAA4F;YAC5F,IAAI,sBAAsB,CAAC,CAAC,CAAC,EAAE,CAAC;gBAC9B,MAAM,CAAC,CAAC;YACV,CAAC;YACD,YAAY,CAAC,CAAC,YAAY,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC;YACjD,YAAY,CAAC,8BAA8B,cAAc,2BAA2B,CAAC,CAAC;YACtF,gCAAgC;YAChC,OAAO,MAAM,eAAe,CAAC,IAAI,EAAE,0BAA0B,EAAE,OAAO,CAAC,CAAC;QAC1E,CAAC;IACH,CAAC;SAAM,CAAC;QACN,gCAAgC;QAChC,OAAO,eAAe,CAAC,IAAI,EAAE,0BAA0B,EAAE,OAAO,CAAC,CAAC;IACpE,CAAC;AACH,CAAC;AASD;;;GAGG;AACH,MAAM,qBAAqB,GAAkC,CAAC,IAAI,EAAE,KAAK,EAAE,IAAI,CAAC,CAAC;AAEjF,MAAM,sBAAsB,GAAuC;IACjE,EAAE,EAAE,sBAAsB;IAC1B,GAAG,EAAE,uBAAuB;IAC5B,EAAE,EAAE,sBAAsB;CAC3B,CAAC;AAEF,MAAM,iBAAiB,GAAuC;IAC5D,EAAE,EAAE,KAAK;IACT,GAAG,EAAE,MAAM;IACX,EAAE,EAAE,KAAK;CACV,CAAC;AAEF;;;;;;;;;GASG;AACH,KAAK,UAAU,eAAe,CAC5B,MAA0B,EAC1B,0BAAsD,EACtD,OAAe;IAEf,MAAM,QAAQ,GAAG,sBAAsB,CAAC,MAAM,CAAC,CAAC;IAChD,MAAM,GAAG,GAAG,iBAAiB,CAAC,MAAM,CAAC,CAAC;IACtC,MAAM,UAAU,GAAG,qBAAqB,CAAC,qBAAqB,CAAC,OAAO,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC;IACpF,MAAM,UAAU,GACd,0BAA0B,CAAC,gBAAgB;QAC3C,iBAAiB,CAAC,OAAO,EAAE,QAAQ,EAAE,0BAA0B,CAAC,eAAe,CAAC,CAAC;IACnF,IAAI,UAAU,CAAC,QAAQ,CAAC,GAAG,CAAC,IAAI,UAAU,CAAC,UAAU,CAAC,EAAE,CAAC;QACvD,IAAI,CAAC;YACH,MAAM,CAAC,GAAG,MAAM,kBAAkB,CAAC,UAAU,CAAC,CAAC;YAC/C,MAAM,YAAY,GAAG,sBAAsB,CACzC,CAAC,MAAM,CAAC,CAAC,SAAS,EAAE,CAA4B,EAChD,QAAQ,CACT,CAAC;YACF,uFAAuF;YACvF,mEAAmE;YACnE,MAAM,cAAc,GAAG,MAAM,oBAAoB,CAC/C,YAAY,EACZ,0BAA0B,CAAC,eAAe,CAC3C,CAAC;YACF,MAAM,gBAAgB,GAAG,MAAM,qBAAqB,CAAC,cAAc,CAAC,CAAC;YACrE,OAAO,MAAM,WAAW,CAAC,gBAAgB,EAAE,0BAA0B,CAAC,CAAC;QACzE,CAAC;QAAC,OAAO,CAAC,EAAE,CAAC;YACX,4FAA4F;YAC5F,6FAA6F;YAC7F,yCAAyC;YACzC,IAAI,sBAAsB,CAAC,CAAC,CAAC,EAAE,CAAC;gBAC9B,MAAM,CAAC,CAAC;YACV,CAAC;YACD,YAAY,CAAC,CAAC,YAAY,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC;YACjD,IAAI,UAAU,EAAE,CAAC;gBACf,YAAY,CAAC,8BAA8B,QAAQ,2BAA2B,CAAC,CAAC;gBAChF,gCAAgC;gBAChC,OAAO,MAAM,eAAe,CAAC,UAAU,EAAE,0BAA0B,EAAE,OAAO,CAAC,CAAC;YAChF,CAAC;YACD,4FAA4F;YAC5F,2FAA2F;YAC3F,4FAA4F;YAC5F,wDAAwD;YACxD,MAAM,IAAI,oBAAoB,CAC5B,8BAA8B,QAAQ,KAAK;gBACzC,yEAAyE,EAC3E,EAAE,WAAW,EAAE,QAAQ,EAAE,CAC1B,CAAC;QACJ,CAAC;IACH,CAAC;SAAM,IAAI,UAAU,EAAE,CAAC;QACtB,0CAA0C;QAC1C,OAAO,MAAM,eAAe,CAAC,UAAU,EAAE,0BAA0B,EAAE,OAAO,CAAC,CAAC;IAChF,CAAC;SAAM,CAAC;QACN,yBAAyB;QACzB,EAAE;QACF,gGAAgG;QAChG,+FAA+F;QAC/F,gGAAgG;QAChG,8FAA8F;QAC9F,2FAA2F;QAC3F,+FAA+F;QAC/F,wCAAwC;QACxC,MAAM,IAAI,oBAAoB,CAC5B,qDAAqD;YACnD,GAAG,wBAAwB,KAAK,sBAAsB,QAAQ,uBAAuB,GAAG;YACxF,4BAA4B,CAC/B,CAAC;IACJ,CAAC;AACH,CAAC;AAED;;;;;GAKG;AACH,MAAM,CAAC,KAAK,UAAU,aAAa,CACjC,UAAwB,EACxB,0BAAsD;IAEtD,IAAI,CAAC;QACH,IAAI,UAAU,CAAC,GAAG,IAAI,OAAO,UAAU,CAAC,GAAG,KAAK,QAAQ,EAAE,CAAC;YACzD,yEAAyE;YACzE,MAAM,OAAO,GAAI,UAAU,CAAC,GAAiB,CAAC,IAAI,CAAC;YACnD,IAAI,CAAC,OAAO,EAAE,CAAC;gBACb,oFAAoF;gBACpF,yFAAyF;gBACzF,4FAA4F;gBAC5F,oBAAoB;gBACpB,wCAAwC;gBACxC,MAAM,IAAI,oBAAoB,CAAC,mCAAmC,CAAC,CAAC;YACtE,CAAC;YAED,kDAAkD;YAClD,MAAM,SAAS,GAAG,UAAU,CAAC,GAAG,CAAC;YACjC,IAAI,0BAA0B,CAAC,OAAO,EAAE,CAAC;gBACvC,6EAA6E;gBAC7E,SAAS,CAAC,OAAO,GAAG,0BAA0B,CAAC,OAAO,CAAC;YACzD,CAAC;YACD,IAAI,0BAA0B,CAAC,KAAK,EAAE,CAAC;gBACrC,yFAAyF;gBACzF,yFAAyF;gBACzF,6DAA6D;gBAC7D,SAAS,CAAC,KAAK,GAAG,0BAA0B,CAAC,KAAK,CAAC;YACrD,CAAC;YACD,uCAAuC;YACvC,MAAM,YAAY,GAAG,MAAM,MAAM,CAAC,kBAAkB,OAAO,KAAK,CAAC,CAAC;YAClE,IAAI,YAAY,CAAC,iBAAiB,EAAE,CAAC;gBACnC,MAAM,GAAG,GAAG,CAAC,MAAM,YAAY,CAAC,iBAAiB,CAAC,SAAS,CAAC,CAAkB,CAAC;gBAC/E,MAAM,YAAY,GAAG,cAAc,CAAC,UAAU,EAAE,GAAG,EAAE,0BAA0B,CAAC,CAAC;gBACjF,IAAI,YAAY,CAAC,qBAAqB,EAAE,CAAC;oBACvC,OAAO,MAAM,YAAY,CAAC,qBAAqB,CAAC,YAAY,CAAC,CAAC;gBAChE,CAAC;qBAAM,CAAC;oBACN,OAAO,MAAM,YAAY,CAAC;gBAC5B,CAAC;YACH,CAAC;iBAAM,CAAC;gBACN,6FAA6F;gBAC7F,4FAA4F;gBAC5F,iFAAiF;gBACjF,kFAAkF;gBAClF,yFAAyF;gBACzF,0FAA0F;gBAC1F,uFAAuF;gBACvF,wCAAwC;gBACxC,MAAM,IAAI,oBAAoB,CAC5B,qBAAqB,OAAO,4CAA4C,CACzE,CAAC;YACJ,CAAC;QACH,CAAC;aAAM,CAAC;YACN,wCAAwC;YACxC,MAAM,IAAI,oBAAoB,CAAC,uCAAuC,CAAC,CAAC;QAC1E,CAAC;IACH,CAAC;IAAC,OAAO,CAAC,EAAE,CAAC;QACX,gGAAgG;QAChG,+FAA+F;QAC/F,6FAA6F;QAC7F,oFAAoF;QACpF,sCAAsC;QACtC,IAAI,sBAAsB,CAAC,CAAC,CAAC,EAAE,CAAC;YAC9B,MAAM,CAAC,CAAC;QACV,CAAC;QACD,IAAI,CAAC,YAAY,KAAK,IAAI,CAAC,CAAC,OAAO,CAAC,QAAQ,CAAC,oBAAoB,CAAC,EAAE,CAAC;YACnE,2FAA2F;YAC3F,2EAA2E;YAC3E,MAAM,IAAI,oBAAoB,CAC5B,aAAc,UAAU,CAAC,GAAiB,CAAC,IAAI,kBAAkB,EACjE,EAAE,EACF,EAAE,KAAK,EAAE,CAAC,EAAE,CACb,CAAC;QACJ,CAAC;aAAM,CAAC;YACN,MAAM,OAAO,GAAG,gCAAgC,CAAC,YAAY,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC;YAC7F,2FAA2F;YAC3F,uFAAuF;YACvF,6FAA6F;YAC7F,6FAA6F;YAC7F,sFAAsF;YACtF,8EAA8E;YAC9E,EAAE;YACF,sFAAsF;YACtF,yFAAyF;YACzF,0FAA0F;YAC1F,6FAA6F;YAC7F,4FAA4F;YAC5F,sFAAsF;YACtF,MAAM,EAAE,sBAAsB,EAAE,GAAG,MAAM,MAAM,CAAC,kCAAkC,CAAC,CAAC;YACpF,MAAM,UAAU,GAAG,sBAAsB,CACtC,UAAU,CAAC,GAA6B,EAAE,IAAI,EAC/C,UAAU,CAAC,GAA4E,CACxF,CAAC;YACF,IAAI,UAAU,EAAE,CAAC;gBACf,MAAM,IAAI,uBAAuB,CAAC,OAAO,EAAE,UAAU,EAAE,EAAE,KAAK,EAAE,CAAC,EAAE,CAAC,CAAC;YACvE,CAAC;YACD,8FAA8F;YAC9F,0FAA0F;YAC1F,uFAAuF;YACvF,2FAA2F;YAC3F,MAAM,IAAI,oBAAoB,CAAC,OAAO,EAAE,EAAE,EAAE,EAAE,KAAK,EAAE,CAAC,EAAE,CAAC,CAAC;QAC5D,CAAC;IACH,CAAC;AACH,CAAC;AAED;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAoCG;AACH,MAAM,qBAAqB,GAAwB,IAAI,GAAG,CAAC,CAAC,WAAW,EAAE,mBAAmB,CAAC,CAAC,CAAC;AAE/F;;;;;;;;;;;;;;;;;GAiBG;AACH,MAAM,8BAA8B,GAAG,mCAAmC,CAAC;AAE3E,iGAAiG;AACjG,SAAS,oBAAoB,CAAC,SAAiB;IAC7C,OAAO,qBAAqB,CAAC,GAAG,CAAC,SAAS,CAAC,IAAI,8BAA8B,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;AAChG,CAAC;AAED,mEAAmE;AACnE,MAAM,oBAAoB,GAAG,kBAAkB,CAAC;AAEhD;;;;;;;;GAQG;AACH,SAAS,qBAAqB,CAAC,KAAc;IAC3C,OAAO,OAAO,KAAK,KAAK,QAAQ,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC;AAC7D,CAAC;AAED;;;;;;;;;GASG;AACH,SAAS,2BAA2B,CAAC,WAAoB,EAAE,WAAoB;IAC7E,IAAI,WAAW,KAAK,SAAS,IAAI,WAAW,KAAK,SAAS;QAAE,OAAO,KAAK,CAAC;IACzE,OAAO,OAAO,WAAW,KAAK,QAAQ,IAAI,OAAO,WAAW,KAAK,QAAQ,CAAC;AAC5E,CAAC;AAED;;;;;;;;;;;;;GAaG;AACH,SAAS,SAAS,CAChB,MAAqB,EACrB,MAA8B,EAC9B,IAAI,GAAG,EAAE;IAET,IAAI,CAAC,MAAM;QAAE,OAAO,MAAW,CAAC;IAChC,IAAI,CAAC,MAAM;QAAE,OAAO,MAAW,CAAC;IAEhC,MAAM,MAAM,GAAG,EAAE,GAAG,MAAM,EAAE,CAAC;IAE7B,KAAK,MAAM,GAAG,IAAI,MAAM,EAAE,CAAC;QACzB,MAAM,SAAS,GAAG,IAAI,CAAC,CAAC,CAAC,GAAG,IAAI,IAAI,GAAG,EAAE,CAAC,CAAC,CAAC,GAAG,CAAC;QAChD,+FAA+F;QAC/F,8FAA8F;QAC9F,yDAAyD;QACzD,MAAM,uBAAuB,GAC3B,oBAAoB,CAAC,IAAI,CAAC,SAAS,CAAC,IAAI,2BAA2B,CAAC,MAAM,CAAC,GAAG,CAAC,EAAE,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC;QAChG,MAAM,WAAW,GAAG,uBAAuB,CAAC,CAAC,CAAC,qBAAqB,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;QAC/F,MAAM,WAAW,GAAG,uBAAuB,CAAC,CAAC,CAAC,qBAAqB,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;QAE/F,IACE,WAAW;YACX,OAAO,WAAW,KAAK,QAAQ;YAC/B,CAAC,KAAK,CAAC,OAAO,CAAC,WAAW,CAAC;YAC3B,WAAW;YACX,OAAO,WAAW,KAAK,QAAQ;YAC/B,CAAC,KAAK,CAAC,OAAO,CAAC,WAAW,CAAC,EAC3B,CAAC;YACD,mCAAmC;YACnC,MAAM,CAAC,GAAG,CAAC,GAAG,SAAS,CACrB,WAAsC,EACtC,WAAsC,EACtC,SAAS,CACqB,CAAC;QACnC,CAAC;aAAM,IACL,KAAK,CAAC,OAAO,CAAC,WAAW,CAAC;YAC1B,KAAK,CAAC,OAAO,CAAC,WAAW,CAAC;YAC1B,oBAAoB,CAAC,SAAS,CAAC,EAC/B,CAAC;YACD,uFAAuF;YACvF,MAAM,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,IAAI,GAAG,CAAC,CAAC,GAAG,WAAW,EAAE,GAAG,WAAW,CAAC,CAAC,CAAgC,CAAC;QAC9F,CAAC;aAAM,IAAI,WAAW,KAAK,SAAS,EAAE,CAAC;YACrC,sEAAsE;YACtE,MAAM,CAAC,GAAG,CAAC,GAAG,WAA0C,CAAC;QAC3D,CAAC;IACH,CAAC;IAED,OAAO,MAAM,CAAC;AAChB,CAAC;AAED;;;;;;;;;;;;;;;GAeG;AACH,MAAM,gCAAgC,GAAG;IACvC,YAAY;IACZ,cAAc;IACd,cAAc;IACd,eAAe;CACP,CAAC;AAEX;;;;;;;;;;;;;GAaG;AACH,SAAS,4BAA4B,CACnC,SAA6B,EAC7B,OAA6C,EAC7C,KAAwD;IAExD,MAAM,WAAW,GAAG,SAAS,CAAC,QAA+D,CAAC;IAC9F,MAAM,kBAAkB,GAAG,WAAW,EAAE,CAAC,OAAO,CAAC,EAAE,CAAC,KAAK,CAAC,CAAC;IAC3D,IAAI,kBAAkB,KAAK,SAAS;QAAE,OAAO,kBAAkB,CAAC;IAEhE,MAAM,gBAAgB,GAAI,SAAqC,CAAC,KAAK,CAAC,CAAC;IACvE,IAAI,gBAAgB,KAAK,SAAS;QAAE,OAAO,gBAAgB,CAAC;IAE5D,MAAM,iBAAiB,GAAI,cAAc,CAAC,QAAoD,CAC5F,OAAO,CACR,EAAE,CAAC,KAAK,CAAC,CAAC;IACX,IAAI,iBAAiB,KAAK,SAAS;QAAE,OAAO,iBAAiB,CAAC;IAE9D,OAAQ,cAA0C,CAAC,KAAK,CAAC,CAAC;AAC5D,CAAC;AAED;;;;;;;;;;;;;;GAcG;AACH,MAAM,UAAU,aAAa,CAC3B,aAA8F,EAC9F,0BAAsD;IAEtD,MAAM,MAAM,GAAG,aAA0B,CAAC;IAE1C,2FAA2F;IAC3F,gGAAgG;IAChG,mGAAmG;IACnG,MAAM,iBAAiB,GAAG,MAAM,EAAE,SAAS,CAAC;IAE5C,qFAAqF;IACrF,iGAAiG;IACjG,2FAA2F;IAC3F,MAAM,gBAAgB,GAAG,MAAM,EAAE,QAAQ,CAAC;IAE1C,uDAAuD;IACvD,kGAAkG;IAClG,MAAM,cAAc,GAA0B;QAC5C,EAAE,EAAE,SAAS,CACX,cAAc,CAAC,QAAQ,CAAC,EAA6B,EACrD,MAAM,EAAE,QAAQ,EAAE,EAAyC,CACrD,EAAE,yDAAyD;QACnE,MAAM,EAAE,SAAS,CACf,cAAc,CAAC,QAAQ,CAAC,MAAiC,EACzD,MAAM,EAAE,QAAQ,EAAE,MAA6C,CACzD,EAAE,yDAAyD;QACnE,IAAI,EAAE,SAAS,CACb,cAAc,CAAC,QAAQ,CAAC,IAA+B,EACvD,MAAM,EAAE,QAAQ,EAAE,IAA2C,CACvD,EAAE,yDAAyD;QACnE,IAAI,EAAE,SAAS,CACb,cAAc,CAAC,QAAQ,CAAC,IAA+B,EACvD,MAAM,EAAE,QAAQ,EAAE,IAA2C,CACvD,EAAE,yDAAyD;QACnE,GAAG,EAAE,SAAS,CACZ,cAAc,CAAC,QAAQ,CAAC,GAA8B,EACtD,MAAM,EAAE,QAAQ,EAAE,GAA0C,CACtD,EAAE,yDAAyD;QACnE,IAAI,EAAE,SAAS,CACb,cAAc,CAAC,QAAQ,CAAC,IAA+B,EACvD,MAAM,EAAE,QAAQ,EAAE,IAA2C,CACvD,EAAE,yDAAyD;QACnE,GAAG,EAAE,SAAS,CACZ,cAAc,CAAC,QAAQ,CAAC,GAA8B,EACtD,MAAM,EAAE,QAAQ,EAAE,GAA0C,CACtD,EAAE,yDAAyD;KACpE,CAAC;IAEF,gFAAgF;IAChF,+FAA+F;IAC/F,6FAA6F;IAC7F,iGAAiG;IACjG,iGAAiG;IACjG,4FAA4F;IAC5F,8FAA8F;IAC9F,+FAA+F;IAC/F,MAAM,cAAc,GAAG,cAAoE,CAAC;IAC5F,KAAK,MAAM,OAAO,IAAI,MAAM,CAAC,IAAI,CAAC,cAAc,CAAC,EAAE,CAAC;QAClD,MAAM,IAAI,GAAG,cAAc,CAAC,OAAO,CAAC,CAAC;QACrC,MAAM,SAAS,GAA4B,EAAE,CAAC;QAC9C,KAAK,MAAM,KAAK,IAAI,gCAAgC,EAAE,CAAC;YACrD,MAAM,QAAQ,GAAG,4BAA4B,CAC3C,MAAM,EACN,OAA+C,EAC/C,KAAK,CACN,CAAC;YACF,0FAA0F;YAC1F,+EAA+E;YAC/E,IAAI,QAAQ,KAAK,SAAS,EAAE,CAAC;gBAC3B,SAAS,CAAC,KAAK,CAAC,GAAG,QAAQ,CAAC;YAC9B,CAAC;QACH,CAAC;QACD,cAAc,CAAC,OAAO,CAAC,GAAG,EAAE,GAAG,IAAI,EAAE,GAAG,SAAS,EAAE,CAAC;IACtD,CAAC;IAED,MAAM,YAAY,GAAG;QACnB,GAAG,cAAc;QACjB,GAAG,MAAM;QACT,QAAQ,EAAE,cAAc;KACzB,CAAC;IAEF,IAAI,0BAA0B,CAAC,eAAe,KAAK,SAAS,EAAE,CAAC;QAC7D,WAAW,CAAC,uBAAuB,0BAA0B,CAAC,eAAe,EAAE,CAAC,CAAC;QACjF,YAAY,CAAC,eAAe,GAAG,0BAA0B,CAAC,eAAe,CAAC,IAAI,EAAE,CAAC;IACnF,CAAC;IAED,IAAI,0BAA0B,CAAC,OAAO,KAAK,SAAS,EAAE,CAAC;QACrD,YAAY,CAAC,GAAG,CAAC,OAAO,GAAG,0BAA0B,CAAC,OAAO,CAAC;IAChE,CAAC;IAED,IAAI,0BAA0B,CAAC,iBAAiB,KAAK,SAAS,EAAE,CAAC;QAC/D,YAAY,CAAC,iBAAiB,GAAG,0BAA0B,CAAC,iBAAiB,CAAC;IAChF,CAAC;IAED,2FAA2F;IAC3F,IAAI,YAAY,CAAC,YAAY,KAAK,SAAS,EAAE,CAAC;QAC5C,MAAM,oBAAoB,GAAG,mBAAmB,CAAC,YAAY,CAAC,YAAY,CAAC,CAAC;QAC5E,IAAI,oBAAoB,KAAK,SAAS,EAAE,CAAC;YACvC,YAAY,CAAC,YAAY,GAAG,oBAAoB,CAAC;QACnD,CAAC;aAAM,CAAC;YACN,cAAc,CACZ,yBAAyB,MAAM,CAAC,YAAY,CAAC,YAAY,CAAC,oBAAoB,WAAW,CAAC,IAAI,GAAG,CAClG,CAAC;YACF,YAAY,CAAC,YAAY,GAAG,WAAW,CAAC,IAAI,CAAC;QAC/C,CAAC;IACH,CAAC;IAED,YAAY,CAAC,4BAA4B,GAAG,YAAY,CAAC,4BAA4B,IAAI,KAAK,EAAE,CAAC;IAEjG,iGAAiG;IACjG,6EAA6E;IAC7E,sFAAsF;IACtF,YAAY,CAAC,SAAS,GAAG,gBAAgB,CAAC;QACxC,UAAU,EAAE,GAAG,CAAC,WAAW;QAC3B,OAAO,EAAE,GAAG,CAAC,QAAQ;QACrB,iBAAiB;QACjB,WAAW,EAAE,WAAW,EAAE;KAC3B,CAAC,CAAC;IAEH,0FAA0F;IAC1F,2FAA2F;IAC3F,+EAA+E;IAC/E,YAAY,CAAC,QAAQ,GAAG,eAAe,CAAC;QACtC,OAAO,EAAE,GAAG,CAAC,YAAY;QACzB,gBAAgB;QAChB,IAAI,EAAE,GAAG,CAAC,IAAI;QACd,WAAW,EAAE,WAAW,EAAE;QAC1B,UAAU,EAAE,KAAK,EAAE;KACpB,CAAC,CAAC;IAEH,OAAO,YAAY,CAAC;AACtB,CAAC;AAED;;;;;GAKG;AACH,KAAK,UAAU,WAAW,CACxB,aAA8F,EAC9F,0BAAsD;IAEtD,MAAM,YAAY,GAAG,aAAa,CAAC,aAAa,EAAE,0BAA0B,CAAC,CAAC;IAE9E,0CAA0C;IAC1C,YAAY,CAAC,YAAY,CAAC,SAAS,CAAC,CAAC;IAErC,6BAA6B;IAC7B,IAAI,YAAY,CAAC,YAAY,KAAK,SAAS,EAAE,CAAC;QAC5C,eAAe,CAAC,YAAY,CAAC,YAAY,CAAC,CAAC;IAC7C,CAAC;IAED,OAAO,YAAY,CAAC;AACtB,CAAC;AAED,MAAM,sBAAsB,GAAgC;IAC1D,KAAK,EAAE,WAAW,CAAC,KAAK;IACxB,IAAI,EAAE,WAAW,CAAC,IAAI;IACtB,OAAO,EAAE,WAAW,CAAC,OAAO;IAC5B,OAAO,EAAE,WAAW,CAAC,OAAO;IAC5B,OAAO,EAAE,WAAW,CAAC,OAAO;IAC5B,KAAK,EAAE,WAAW,CAAC,KAAK;IACxB,MAAM,EAAE,WAAW,CAAC,MAAM;CAC3B,CAAC;AAEF,SAAS,mBAAmB,CAAC,KAAsC;IACjE,IAAI,OAAO,KAAK,KAAK,QAAQ,EAAE,CAAC;QAC9B,OAAO,WAAW,CAAC,KAAK,CAAC,KAAK,SAAS,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,SAAS,CAAC;IAC9D,CAAC;IAED,IAAI,OAAO,KAAK,KAAK,QAAQ,EAAE,CAAC;QAC9B,MAAM,UAAU,GAAG,KAAK,CAAC,IAAI,EAAE,CAAC,WAAW,EAAE,CAAC;QAC9C,IAAI,UAAU,IAAI,sBAAsB,EAAE,CAAC;YACzC,OAAO,sBAAsB,CAAC,UAAU,CAAC,CAAC;QAC5C,CAAC;QACD,MAAM,SAAS,GAAG,WAAW,CAAC,KAAiC,CAAC,CAAC;QACjE,IAAI,OAAO,SAAS,KAAK,QAAQ,EAAE,CAAC;YAClC,OAAO,SAAS,CAAC;QACnB,CAAC;IACH,CAAC;IAED,OAAO,SAAS,CAAC;AACnB,CAAC;AAED;;;;;GAKG;AACH,KAAK,UAAU,mBAAmB,CAAC,IAAY;IAC7C,IAAI,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,IAAI,IAAI,CAAC,QAAQ,CAAC,QAAQ,CAAC,EAAE,CAAC;QACtD,OAAO,UAAU,CAAC,YAAY,CAAC,IAAI,EAAE,MAAM,CAAC,EAAE,IAAI,CAA4B,CAAC;IACjF,CAAC;IACD,MAAM,QAAQ,GAAG,MAAM,kBAAkB,CAAC,IAAI,CAAC,CAAC;IAChD,OAAO,CAAC,MAAM,QAAQ,CAAC,SAAS,EAAE,CAA4B,CAAC;AACjE,CAAC;AAED;;;;;;;;;;;;;;;GAeG;AACH,KAAK,UAAU,8BAA8B,CAC3C,eAAwB;IAExB,KAAK,MAAM,QAAQ,IAAI,qBAAqB,EAAE,CAAC;QAC7C,MAAM,QAAQ,GAAG,6BAA6B,CAAC,QAAQ,EAAE,eAAe,CAAC,CAAC;QAC1E,IAAI,UAAU,CAAC,QAAQ,CAAC,EAAE,CAAC;YACzB,MAAM,KAAK,GAAG,eAAe;gBAC3B,CAAC,CAAC,GAAG,mBAAmB,IAAI,eAAe,IAAI,QAAQ,WAAW;gBAClE,CAAC,CAAC,GAAG,QAAQ,WAAW,CAAC;YAC3B,IAAI,CAAC;gBACH,OAAO;oBACL,GAAG,EAAE,UAAU,CAAC,YAAY,CAAC,QAAQ,EAAE,MAAM,CAAC,EAAE,KAAK,CAA4B;oBACjF,KAAK;iBACN,CAAC;YACJ,CAAC;YAAC,OAAO,CAAC,EAAE,CAAC;gBACX,YAAY,CAAC,CAAC,YAAY,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC;gBACjD,cAAc,CAAC,qCAAqC,QAAQ,gBAAgB,CAAC,CAAC;gBAC9E,OAAO,SAAS,CAAC;YACnB,CAAC;QACH,CAAC;IACH,CAAC;IACD,KAAK,MAAM,QAAQ,IAAI,CAAC,sBAAsB,EAAE,uBAAuB,CAAC,EAAE,CAAC;QACzE,MAAM,UAAU,GAAG,6BAA6B,CAAC,QAAQ,EAAE,eAAe,CAAC,CAAC;QAC5E,IAAI,UAAU,CAAC,UAAU,CAAC,EAAE,CAAC;YAC3B,MAAM,KAAK,GAAG,eAAe;gBAC3B,CAAC,CAAC,GAAG,mBAAmB,IAAI,eAAe,IAAI,QAAQ,WAAW;gBAClE,CAAC,CAAC,GAAG,QAAQ,WAAW,CAAC;YAC3B,IAAI,CAAC;gBACH,MAAM,QAAQ,GAAG,MAAM,kBAAkB,CAAC,UAAU,CAAC,CAAC;gBACtD,OAAO;oBACL,GAAG,EAAE,CAAC,MAAM,QAAQ,CAAC,SAAS,EAAE,CAA4B;oBAC5D,KAAK;iBACN,CAAC;YACJ,CAAC;YAAC,OAAO,CAAC,EAAE,CAAC;gBACX,YAAY,CAAC,CAAC,YAAY,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC;gBACjD,cAAc,CAAC,qCAAqC,UAAU,gBAAgB,CAAC,CAAC;gBAChF,OAAO,SAAS,CAAC;YACnB,CAAC;QACH,CAAC;IACH,CAAC;IACD,OAAO,SAAS,CAAC;AACnB,CAAC;AAoCD;;;;;;;;;;;;;;;;;;;;;;;;;GAyBG;AACH,MAAM,CAAC,KAAK,UAAU,cAAc,CAClC,0BAAsD;IAEtD,MAAM,MAAM,GAAkC,EAAE,CAAC;IAEjD,+FAA+F;IAC/F,+FAA+F;IAC/F,+FAA+F;IAC/F,6EAA6E;IAC7E,4FAA4F;IAC5F,0FAA0F;IAC1F,4BAA4B;IAC5B,MAAM,0BAA0B,GAAG,CAAC,KAA0B,EAAE,EAAE,CAAC,CAAC;QAClE,cAAc,EAAE,CAAC,OAAe,EAAW,EAAE,CAC3C,gCAAgC,CAAC,OAAO,EAAE,KAAK,CAAC,KAAK,SAAS;QAChE,kBAAkB,EAAE,CAAC,OAAe,EAAsB,EAAE,CAC1D,KAAK,CAAC,UAAU,CAAC,CAAC,CAAC,qBAAqB,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,SAAS;KAChE,CAAC,CAAC;IAEH,4FAA4F;IAC5F,kGAAkG;IAClG,8FAA8F;IAC9F,kGAAkG;IAClG,+FAA+F;IAC/F,0FAA0F;IAC1F,4FAA4F;IAC5F,MAAM,iBAAiB,GAAG,6BAA6B,CAAC,0BAA0B,CAAC,CAAC;IACpF,IAAI,iBAAiB,EAAE,CAAC;QACtB,MAAM,WAAW,GAAG,0BAA0B,CAAC,MAAM;YACnD,CAAC,CAAC,qBAAqB,CAAC,iBAAiB,CAAC;YAC1C,CAAC,CAAC,GAAG,UAAU,IAAI,mBAAmB,IAAI,iBAAiB,GAAG,CAAC;QACjE,OAAO;YACL,qFAAqF;YACrF,8FAA8F;YAC9F,2CAA2C;YAC3C,KAAK,EAAE,IAAI;YACX,EAAE,EAAE,KAAK;YACT,MAAM,EAAE;gBACN;oBACE,WAAW;oBACX,EAAE,EAAE,KAAK;oBACT,QAAQ,EAAE,EAAE;oBACZ,YAAY,EAAE,8BAA8B,CAC1C,iBAAiB,EACjB,0BAA0B,CAAC,MAAM,CAClC;iBACF;aACF;SACF,CAAC;IACJ,CAAC;IAED,6FAA6F;IAC7F,sFAAsF;IACtF,MAAM,UAAU,GAAG,qBAAqB,CAAC,0BAA0B,CAAC,CAAC;IACrE,IAAI,UAAU,EAAE,CAAC;QACf,MAAM,GAAG,GAAG,MAAM,mBAAmB,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC;QACvD,MAAM,KAAK,GAAgC;YACzC,WAAW,EAAE,UAAU,CAAC,IAAI;YAC5B,GAAG,oBAAoB,CAAC,GAAG,EAAE,0BAA0B,CAAC,EAAE,CAAC,CAAC;SAC7D,CAAC;QAEF,4FAA4F;QAC5F,6FAA6F;QAC7F,+FAA+F;QAC/F,+FAA+F;QAC/F,6FAA6F;QAC7F,+FAA+F;QAC/F,+FAA+F;QAC/F,iGAAiG;QACjG,IAAI,KAAK,CAAC,EAAE,IAAI,OAAO,GAAG,CAAC,OAAO,KAAK,QAAQ,EAAE,CAAC;YAChD,IAAI,CAAC;gBACH,MAAM,cAAc,CAAC,GAAG,EAAE,0BAA0B,CAAC,eAAe,CAAC,CAAC;YACxE,CAAC;YAAC,OAAO,CAAC,EAAE,CAAC;gBACX,yEAAyE;gBACzE,uFAAuF;gBACvF,0FAA0F;gBAC1F,yEAAyE;gBACzE,IAAI,CAAC,YAAY,kBAAkB,IAAI,sBAAsB,CAAC,CAAC,CAAC,EAAE,CAAC;oBACjE,KAAK,CAAC,EAAE,GAAG,KAAK,CAAC;oBACjB,KAAK,CAAC,YAAY,GAAG,CAAC,CAAC,OAAO,CAAC;gBACjC,CAAC;qBAAM,CAAC;oBACN,MAAM,CAAC,CAAC;gBACV,CAAC;YACH,CAAC;QACH,CAAC;QAED,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;IACrB,CAAC;IAED,yFAAyF;IACzF,gGAAgG;IAChG,gGAAgG;IAChG,MAAM,SAAS,GAAG,MAAM,8BAA8B,CACpD,kBAAkB,CAAC,0BAA0B,CAAC,CAC/C,CAAC;IACF,IAAI,SAAS,EAAE,CAAC;QACd,MAAM,WAAW,GAAwB,EAAE,UAAU,EAAE,0BAA0B,CAAC,MAAM,EAAE,CAAC;QAC3F,MAAM,KAAK,GAAgC;YACzC,WAAW,EAAE,SAAS,CAAC,KAAK;YAC5B,GAAG,oBAAoB,CAAC,SAAS,CAAC,GAAG,EAAE,0BAA0B,CAAC,WAAW,CAAC,CAAC;SAChF,CAAC;QAEF,8FAA8F;QAC9F,gGAAgG;QAChG,+FAA+F;QAC/F,6FAA6F;QAC7F,mEAAmE;QACnE,IAAI,CAAC,UAAU,IAAI,KAAK,CAAC,EAAE,IAAI,OAAO,SAAS,CAAC,GAAG,CAAC,OAAO,KAAK,QAAQ,EAAE,CAAC;YACzE,IAAI,CAAC;gBACH,MAAM,cAAc,CAClB,SAAS,CAAC,GAAG,EACb,kBAAkB,CAAC,0BAA0B,CAAC,EAC9C,WAAW,CACZ,CAAC;YACJ,CAAC;YAAC,OAAO,CAAC,EAAE,CAAC;gBACX,IAAI,CAAC,YAAY,kBAAkB,IAAI,sBAAsB,CAAC,CAAC,CAAC,EAAE,CAAC;oBACjE,KAAK,CAAC,EAAE,GAAG,KAAK,CAAC;oBACjB,KAAK,CAAC,YAAY,GAAG,CAAC,CAAC,OAAO,CAAC;gBACjC,CAAC;qBAAM,CAAC;oBACN,MAAM,CAAC,CAAC;gBACV,CAAC;YACH,CAAC;QACH,CAAC;QAED,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;IACrB,CAAC;IAED,6FAA6F;IAC7F,OAAO,EAAE,KAAK,EAAE,MAAM,CAAC,MAAM,GAAG,CAAC,EAAE,EAAE,EAAE,MAAM,CAAC,MAAM,GAAG,CAAC,IAAI,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,MAAM,EAAE,CAAC;AAClG,CAAC;AAED;;GAEG;AACH,KAAK,UAAU,cAAc,CAC3B,MAAoB,EACpB,GAAkB,EAClB,0BAAsD;IAEtD,MAAM,gBAAgB,GAAuB,MAAM,CAAC,GAAG,EAAE,KAAK,CAAC;IAC/D,4FAA4F;IAC5F,+FAA+F;IAC/F,yFAAyF;IACzF,kGAAkG;IAClG,MAAM,iBAAiB,GAAuB,MAAM,CAAC,GAAG,EAAE,IAAI,CAAC;IAC/D,OAAO,MAAM,WAAW,CACtB,EAAE,GAAG,MAAM,EAAE,GAAG,EAAE,gBAAgB,EAAE,iBAAiB,EAAE,EACvD,0BAA0B,CAC3B,CAAC;AACJ,CAAC"}
@@ -0,0 +1,50 @@
1
+ /**
2
+ * TUI-C37 — the single place that decides whether the Ink TUI turns on terminal mouse reporting.
3
+ *
4
+ * Shaped exactly like the colour decision in `colour.ts`: everything the answer depends on arrives
5
+ * as an argument, so the ladder is testable rung by rung without touching process globals.
6
+ *
7
+ * Mouse reporting is ON by default, which is what makes the TUI's clickable affordances
8
+ * discoverable at all. The cost is real and is why the off-ramps below exist: while tracking is on
9
+ * the terminal hands drag events to the application, so its own text selection needs a modifier
10
+ * (Shift, or Option on macOS terminals). {@link MOUSE_SELECTION_HINT} is the one wording for that,
11
+ * so `/help` and the `/mouse` feedback cannot drift apart.
12
+ */
13
+ /** Everything the mouse decision depends on. See {@link resolveUseMouse}. */
14
+ export interface UseMouseInput {
15
+ /**
16
+ * Raw `GTH_NO_MOUSE` environment value; `undefined` when the variable is not set at all. Set and
17
+ * non-empty means mouse OFF. This rung outranks config because it is the escape hatch that works
18
+ * WITHOUT editing a config file — the state someone is in when their terminal mishandles tracking
19
+ * and the session is already unpleasant to use.
20
+ */
21
+ noMouse?: string;
22
+ /**
23
+ * `useMouse` as the user actually wrote it — read from the RAW config, BEFORE `DEFAULT_CONFIG` is
24
+ * merged in. `undefined` means the user set nothing. After the default merge an explicit `true` is
25
+ * indistinguishable from the default `true`, so this must be captured pre-merge or the rung
26
+ * collapses (the same trap `explicitUseColour` documents).
27
+ */
28
+ explicitUseMouse?: boolean;
29
+ /** Raw `TERM`; `dumb`, empty or unset describes a terminal that cannot be expected to track. */
30
+ term?: string;
31
+ /** Whether stdout is a terminal. */
32
+ stdoutIsTTY: boolean;
33
+ /** Whether stdin is a terminal — mouse REPORTS arrive on stdin, so both ends must be a TTY. */
34
+ stdinIsTTY: boolean;
35
+ }
36
+ /**
37
+ * The user-facing sentence explaining how to select text while tracking is on. Terminals disagree
38
+ * about which modifier restores native selection, so this names both rather than promising one.
39
+ */
40
+ export declare const MOUSE_SELECTION_HINT = "To select text while the mouse is on, hold Shift (Option in some macOS terminals) while dragging.";
41
+ /**
42
+ * Resolve mouse reporting from the four-rung precedence ladder, highest wins:
43
+ *
44
+ * 1. `GTH_NO_MOUSE` is set and non-empty — mouse OFF, no config file needed.
45
+ * 2. `useMouse` was set explicitly in config — use it verbatim.
46
+ * 3. `TERM` is unset, empty or `dumb` — mouse OFF; nothing useful can be reported.
47
+ * 4. Otherwise — ON when BOTH stdout and stdin are terminals. A piped, redirected or captured run
48
+ * never enables tracking, so its bytes are identical to a run with mouse compiled out.
49
+ */
50
+ export declare function resolveUseMouse(input: UseMouseInput): boolean;
@@ -0,0 +1,44 @@
1
+ /**
2
+ * TUI-C37 — the single place that decides whether the Ink TUI turns on terminal mouse reporting.
3
+ *
4
+ * Shaped exactly like the colour decision in `colour.ts`: everything the answer depends on arrives
5
+ * as an argument, so the ladder is testable rung by rung without touching process globals.
6
+ *
7
+ * Mouse reporting is ON by default, which is what makes the TUI's clickable affordances
8
+ * discoverable at all. The cost is real and is why the off-ramps below exist: while tracking is on
9
+ * the terminal hands drag events to the application, so its own text selection needs a modifier
10
+ * (Shift, or Option on macOS terminals). {@link MOUSE_SELECTION_HINT} is the one wording for that,
11
+ * so `/help` and the `/mouse` feedback cannot drift apart.
12
+ */
13
+ /**
14
+ * The user-facing sentence explaining how to select text while tracking is on. Terminals disagree
15
+ * about which modifier restores native selection, so this names both rather than promising one.
16
+ */
17
+ export const MOUSE_SELECTION_HINT = 'To select text while the mouse is on, hold Shift (Option in some macOS terminals) while dragging.';
18
+ /**
19
+ * Resolve mouse reporting from the four-rung precedence ladder, highest wins:
20
+ *
21
+ * 1. `GTH_NO_MOUSE` is set and non-empty — mouse OFF, no config file needed.
22
+ * 2. `useMouse` was set explicitly in config — use it verbatim.
23
+ * 3. `TERM` is unset, empty or `dumb` — mouse OFF; nothing useful can be reported.
24
+ * 4. Otherwise — ON when BOTH stdout and stdin are terminals. A piped, redirected or captured run
25
+ * never enables tracking, so its bytes are identical to a run with mouse compiled out.
26
+ */
27
+ export function resolveUseMouse(input) {
28
+ // Rung 1 — the no-config escape hatch.
29
+ if (input.noMouse !== undefined && input.noMouse !== '') {
30
+ return false;
31
+ }
32
+ // Rung 2 — the user's own config. Only reachable with an explicit value, never the default.
33
+ if (input.explicitUseMouse !== undefined) {
34
+ return input.explicitUseMouse;
35
+ }
36
+ // Rung 3 — a terminal that cannot track. Checked below config so someone on an unusual TERM that
37
+ // does support tracking can still force it on.
38
+ if (input.term === undefined || input.term === '' || input.term === 'dumb') {
39
+ return false;
40
+ }
41
+ // Rung 4 — default on, but only for a genuine interactive terminal at both ends.
42
+ return input.stdoutIsTTY && input.stdinIsTTY;
43
+ }
44
+ //# sourceMappingURL=mouse.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"mouse.js","sourceRoot":"","sources":["../../src/config/mouse.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;GAWG;AA0BH;;;GAGG;AACH,MAAM,CAAC,MAAM,oBAAoB,GAC/B,mGAAmG,CAAC;AAEtG;;;;;;;;GAQG;AACH,MAAM,UAAU,eAAe,CAAC,KAAoB;IAClD,uCAAuC;IACvC,IAAI,KAAK,CAAC,OAAO,KAAK,SAAS,IAAI,KAAK,CAAC,OAAO,KAAK,EAAE,EAAE,CAAC;QACxD,OAAO,KAAK,CAAC;IACf,CAAC;IAED,4FAA4F;IAC5F,IAAI,KAAK,CAAC,gBAAgB,KAAK,SAAS,EAAE,CAAC;QACzC,OAAO,KAAK,CAAC,gBAAgB,CAAC;IAChC,CAAC;IAED,iGAAiG;IACjG,+CAA+C;IAC/C,IAAI,KAAK,CAAC,IAAI,KAAK,SAAS,IAAI,KAAK,CAAC,IAAI,KAAK,EAAE,IAAI,KAAK,CAAC,IAAI,KAAK,MAAM,EAAE,CAAC;QAC3E,OAAO,KAAK,CAAC;IACf,CAAC;IAED,iFAAiF;IACjF,OAAO,KAAK,CAAC,WAAW,IAAI,KAAK,CAAC,UAAU,CAAC;AAC/C,CAAC"}
@@ -0,0 +1,68 @@
1
+ import type { RawGthConfig } from '#src/config/types.js';
2
+ /**
3
+ * A profile name maps to a single directory segment under `.gsloth-settings/`, so it must be one
4
+ * safe path component: letters, digits, `.`, `_`, `-` only, and never `.`/`..` (which would escape
5
+ * or self-reference the settings dir). This is a create-time guard so a traversal-shaped name
6
+ * (`../evil`, `a/b`) can never write outside the profile tree.
7
+ */
8
+ export declare const PROFILE_NAME_RE: RegExp;
9
+ /** Fallback provider/model for a scaffold seeded from neither a current config nor `--model`. */
10
+ export declare const DEFAULT_SCAFFOLD_PROVIDER = "anthropic";
11
+ export declare const DEFAULT_SCAFFOLD_MODEL = "claude-sonnet-4-5";
12
+ /**
13
+ * Reject a profile name that is empty, `.`/`..`, or contains anything other than
14
+ * `[A-Za-z0-9._-]` (so it can never traverse out of `.gsloth-settings/`). Throws a clear error;
15
+ * returns the trimmed name on success.
16
+ */
17
+ export declare function validateProfileName(nameRaw: string): string;
18
+ /**
19
+ * The on-disk path a named profile's config is written to / discovered at:
20
+ * `<projectDir>/.gsloth/.gsloth-settings/<name>/.gsloth.config.json`. Resolved against
21
+ * {@link getProjectDir} so it matches the loader's read-side resolution.
22
+ */
23
+ export declare function resolveProfileConfigPath(name: string): string;
24
+ /**
25
+ * Options for seeding a scaffold. `seedType`/`seedModel` come from the current effective config
26
+ * (`modelProviderType` / `modelDisplayName`) when one resolves — present for JSON configs, absent
27
+ * for module (JS/MJS/TS) configs, which hand back an already-built LLM with no raw `type`. When
28
+ * neither seed nor {@link modelOverride} is available the scaffold falls back to the template
29
+ * defaults ({@link DEFAULT_SCAFFOLD_PROVIDER} / {@link DEFAULT_SCAFFOLD_MODEL}) so the written
30
+ * profile is always a valid, editable starting point.
31
+ */
32
+ export interface ProfileScaffoldSeed {
33
+ /** Provider `type` of the current config (`modelProviderType`), when resolvable. */
34
+ seedType?: string;
35
+ /** Model id of the current config (`modelDisplayName`), when resolvable. */
36
+ seedModel?: string;
37
+ /** `--model <id>` override — wins over the seeded/template model. */
38
+ modelOverride?: string;
39
+ }
40
+ /**
41
+ * Build a complete, standalone raw profile config: `{ llm: { type, model } }`. The provider `type`
42
+ * comes from the current config's provider when known, else the template default; the model comes
43
+ * from `--model`, else the current config's model, else the template default. Shape-only — the
44
+ * caller validates it against the schema before writing.
45
+ */
46
+ export declare function buildProfileScaffold(seed: ProfileScaffoldSeed): RawGthConfig;
47
+ /** Outcome of {@link createNamedProfile}: the resolved path the profile config was written to. */
48
+ export interface CreateProfileResult {
49
+ /** Absolute path of the written profile config. */
50
+ path: string;
51
+ /** The provider:model the scaffold was seeded with, for a confirmation message. */
52
+ llm: {
53
+ type: string;
54
+ model: string;
55
+ };
56
+ }
57
+ /**
58
+ * Scaffold a new named profile at {@link resolveProfileConfigPath}. Validates the name (no
59
+ * traversal), builds the scaffold ({@link buildProfileScaffold}), validates it against the GS2-1
60
+ * schema BEFORE writing (never writes an invalid profile), and refuses to clobber an existing
61
+ * profile unless `force`. Creates the `.gsloth/.gsloth-settings/<name>/` tree as needed so the
62
+ * loader's profile-discovery convention resolves it afterwards.
63
+ *
64
+ * @throws Error on an invalid name, an invalid scaffold, or an existing file without `force`.
65
+ */
66
+ export declare function createNamedProfile(nameRaw: string, seed: ProfileScaffoldSeed & {
67
+ force?: boolean;
68
+ }): CreateProfileResult;
@@ -0,0 +1,93 @@
1
+ /**
2
+ * @packageDocumentation
3
+ * GS2-33 — named config profiles. A profile is a `.gsloth/.gsloth-settings/<name>/` config
4
+ * block: the SAME discovery convention the GS2-1 cascade resolves for `--profile` /
5
+ * `--identity-profile` (see `loader.ts` `resolveIdentityProfileConfigPath`). This module is the
6
+ * write side — scaffolding a new, schema-valid profile config — kept separate from the loader's
7
+ * read side so the `gth config profile create` command is a thin wrapper over a pure, testable core.
8
+ *
9
+ * A named profile is NOT a merge on top of a base project config: with a profile selected the
10
+ * loader's first-match walk picks the profile-dir config as THE project-file layer, so the
11
+ * precedence is `CLI flags > profile-dir config > global config > DEFAULT_CONFIG`. The scaffolder
12
+ * therefore writes a complete, standalone config (at minimum a valid `llm` spec), not a fragment.
13
+ */
14
+ import { existsSync, mkdirSync, writeFileSync } from 'node:fs';
15
+ import { resolve } from 'node:path';
16
+ import { GSLOTH_DIR, GSLOTH_SETTINGS_DIR, USER_PROJECT_CONFIG_JSON } from '#src/constants.js';
17
+ import { getProjectDir } from '#src/utils/systemUtils.js';
18
+ import { validateRawGthConfig } from '#src/config/schema.js';
19
+ /**
20
+ * A profile name maps to a single directory segment under `.gsloth-settings/`, so it must be one
21
+ * safe path component: letters, digits, `.`, `_`, `-` only, and never `.`/`..` (which would escape
22
+ * or self-reference the settings dir). This is a create-time guard so a traversal-shaped name
23
+ * (`../evil`, `a/b`) can never write outside the profile tree.
24
+ */
25
+ export const PROFILE_NAME_RE = /^[A-Za-z0-9._-]+$/;
26
+ /** Fallback provider/model for a scaffold seeded from neither a current config nor `--model`. */
27
+ export const DEFAULT_SCAFFOLD_PROVIDER = 'anthropic';
28
+ export const DEFAULT_SCAFFOLD_MODEL = 'claude-sonnet-4-5';
29
+ /**
30
+ * Reject a profile name that is empty, `.`/`..`, or contains anything other than
31
+ * `[A-Za-z0-9._-]` (so it can never traverse out of `.gsloth-settings/`). Throws a clear error;
32
+ * returns the trimmed name on success.
33
+ */
34
+ export function validateProfileName(nameRaw) {
35
+ const name = (nameRaw ?? '').trim();
36
+ if (!name) {
37
+ throw new Error('Profile name must not be empty.');
38
+ }
39
+ if (name === '.' || name === '..') {
40
+ throw new Error(`Invalid profile name "${name}".`);
41
+ }
42
+ if (!PROFILE_NAME_RE.test(name)) {
43
+ throw new Error(`Invalid profile name "${name}": use only letters, digits, '.', '_' or '-' ` +
44
+ '(a profile name is a single directory segment).');
45
+ }
46
+ return name;
47
+ }
48
+ /**
49
+ * The on-disk path a named profile's config is written to / discovered at:
50
+ * `<projectDir>/.gsloth/.gsloth-settings/<name>/.gsloth.config.json`. Resolved against
51
+ * {@link getProjectDir} so it matches the loader's read-side resolution.
52
+ */
53
+ export function resolveProfileConfigPath(name) {
54
+ return resolve(getProjectDir(), GSLOTH_DIR, GSLOTH_SETTINGS_DIR, name, USER_PROJECT_CONFIG_JSON);
55
+ }
56
+ /**
57
+ * Build a complete, standalone raw profile config: `{ llm: { type, model } }`. The provider `type`
58
+ * comes from the current config's provider when known, else the template default; the model comes
59
+ * from `--model`, else the current config's model, else the template default. Shape-only — the
60
+ * caller validates it against the schema before writing.
61
+ */
62
+ export function buildProfileScaffold(seed) {
63
+ const type = seed.seedType ?? DEFAULT_SCAFFOLD_PROVIDER;
64
+ const model = seed.modelOverride ?? seed.seedModel ?? DEFAULT_SCAFFOLD_MODEL;
65
+ return { llm: { type, model } };
66
+ }
67
+ /**
68
+ * Scaffold a new named profile at {@link resolveProfileConfigPath}. Validates the name (no
69
+ * traversal), builds the scaffold ({@link buildProfileScaffold}), validates it against the GS2-1
70
+ * schema BEFORE writing (never writes an invalid profile), and refuses to clobber an existing
71
+ * profile unless `force`. Creates the `.gsloth/.gsloth-settings/<name>/` tree as needed so the
72
+ * loader's profile-discovery convention resolves it afterwards.
73
+ *
74
+ * @throws Error on an invalid name, an invalid scaffold, or an existing file without `force`.
75
+ */
76
+ export function createNamedProfile(nameRaw, seed) {
77
+ const name = validateProfileName(nameRaw);
78
+ const scaffold = buildProfileScaffold(seed);
79
+ // Validate BEFORE writing — a broken scaffold must fail here, never land on disk to be run later.
80
+ const validation = validateRawGthConfig(scaffold);
81
+ if (!validation.ok) {
82
+ throw new Error(`Refusing to write an invalid profile "${name}":\n${validation.errorMessage ?? ''}`);
83
+ }
84
+ const path = resolveProfileConfigPath(name);
85
+ if (existsSync(path) && !seed.force) {
86
+ throw new Error(`Profile "${name}" already exists at ${path}. Pass --force to overwrite it.`);
87
+ }
88
+ mkdirSync(resolve(path, '..'), { recursive: true });
89
+ writeFileSync(path, `${JSON.stringify(scaffold, null, 2)}\n`, 'utf8');
90
+ const llm = scaffold.llm;
91
+ return { path, llm: { type: llm.type, model: llm.model } };
92
+ }
93
+ //# sourceMappingURL=profiles.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"profiles.js","sourceRoot":"","sources":["../../src/config/profiles.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,69 @@
1
+ /**
2
+ * @packageDocumentation
3
+ * The catchable error a config load raises when a provider cannot be constructed because **no API
4
+ * key is resolvable at all** — from the config's own `llm.apiKey`, from its
5
+ * `llm.apiKeyEnvironmentVariable`, or from any environment variable that provider accepts.
6
+ *
7
+ * Deliberately dependency-free (no imports beyond types) so the config barrel, the provider layer
8
+ * and downstream consumers can all reach it without an import cycle.
9
+ *
10
+ * **Why this is an error object and not a process exit.** Building a chat model is a *library*
11
+ * operation, and a library that terminates the process denies every caller the chance to classify
12
+ * the failure. A multi-identity `gth eval` run, in particular, is designed for partial secrets: one
13
+ * identity without a key must not stop the other identities being graded, and the run must still be
14
+ * able to say which identity failed and why. That classification needs the provider and the
15
+ * variable name as DATA, not as prose in a message, which is why {@link MissingProviderKeyError}
16
+ * carries {@link MissingProviderKeyError.provider} and
17
+ * {@link MissingProviderKeyError.envVars} as fields. Callers that legitimately want to terminate —
18
+ * the CLI entry points — catch it at their top level, where the exit code is chosen deliberately.
19
+ */
20
+ /**
21
+ * What a key-resolution check knows about a provider that has no usable key.
22
+ *
23
+ * `envVars` lists every variable name that WOULD have supplied the key, in the order the provider
24
+ * checks them, so a message can name the canonical one and still mention the accepted aliases. A
25
+ * config-declared `apiKeyEnvironmentVariable` comes first when there is one, because that is the
26
+ * name the user chose and the one they will look for.
27
+ */
28
+ export interface MissingProviderKeyDetails {
29
+ /** The `llm.type` of the provider that could not be constructed (e.g. `anthropic`, `groq`). */
30
+ provider: string;
31
+ /** The variable to set — the first of {@link envVars}, or undefined if the provider declares none. */
32
+ envVar: string | undefined;
33
+ /** Every environment variable this provider accepts for its key, highest precedence first. */
34
+ envVars: readonly string[];
35
+ }
36
+ /**
37
+ * A provider could not be built because no API key was resolvable for it.
38
+ *
39
+ * Thrown (never exited on) by the config loader, so `gth eval`, `gth batch`, the AG-UI/ACP servers
40
+ * and any embedding consumer can tell "this provider had no key" apart from "this provider broke".
41
+ */
42
+ export declare class MissingProviderKeyError extends Error implements MissingProviderKeyDetails {
43
+ /** Duck-typed marker so {@link isMissingProviderKeyError} works across duplicated module copies. */
44
+ readonly gthMissingProviderKey: true;
45
+ readonly provider: string;
46
+ readonly envVar: string | undefined;
47
+ readonly envVars: readonly string[];
48
+ constructor(message: string, details: MissingProviderKeyDetails, options?: {
49
+ cause?: unknown;
50
+ });
51
+ /**
52
+ * Serialize the machine-readable half. `JSON.stringify(error)` would otherwise drop `message`
53
+ * (an Error's `message` is a non-enumerable own property), which is exactly the field a report
54
+ * consumer shows a human next to the provider and the variable name.
55
+ */
56
+ toJSON(): {
57
+ name: string;
58
+ message: string;
59
+ } & MissingProviderKeyDetails;
60
+ }
61
+ /**
62
+ * True when `value` is a {@link MissingProviderKeyError}.
63
+ *
64
+ * Duck-typed on the marker property rather than `instanceof` on purpose: a consumer that ends up
65
+ * with two copies of `@gaunt-sloth/core` on disk (a `file:` dep, a hoisting split) would fail an
66
+ * `instanceof` check against a genuinely-correct error and misreport a missing key as a provider
67
+ * outage — the one distinction this error exists to make.
68
+ */
69
+ export declare function isMissingProviderKeyError(value: unknown): value is MissingProviderKeyError;
@@ -0,0 +1,69 @@
1
+ /**
2
+ * @packageDocumentation
3
+ * The catchable error a config load raises when a provider cannot be constructed because **no API
4
+ * key is resolvable at all** — from the config's own `llm.apiKey`, from its
5
+ * `llm.apiKeyEnvironmentVariable`, or from any environment variable that provider accepts.
6
+ *
7
+ * Deliberately dependency-free (no imports beyond types) so the config barrel, the provider layer
8
+ * and downstream consumers can all reach it without an import cycle.
9
+ *
10
+ * **Why this is an error object and not a process exit.** Building a chat model is a *library*
11
+ * operation, and a library that terminates the process denies every caller the chance to classify
12
+ * the failure. A multi-identity `gth eval` run, in particular, is designed for partial secrets: one
13
+ * identity without a key must not stop the other identities being graded, and the run must still be
14
+ * able to say which identity failed and why. That classification needs the provider and the
15
+ * variable name as DATA, not as prose in a message, which is why {@link MissingProviderKeyError}
16
+ * carries {@link MissingProviderKeyError.provider} and
17
+ * {@link MissingProviderKeyError.envVars} as fields. Callers that legitimately want to terminate —
18
+ * the CLI entry points — catch it at their top level, where the exit code is chosen deliberately.
19
+ */
20
+ /** Marker property carried by every {@link MissingProviderKeyError}; see {@link isMissingProviderKeyError}. */
21
+ const MISSING_PROVIDER_KEY_MARKER = 'gthMissingProviderKey';
22
+ /**
23
+ * A provider could not be built because no API key was resolvable for it.
24
+ *
25
+ * Thrown (never exited on) by the config loader, so `gth eval`, `gth batch`, the AG-UI/ACP servers
26
+ * and any embedding consumer can tell "this provider had no key" apart from "this provider broke".
27
+ */
28
+ export class MissingProviderKeyError extends Error {
29
+ /** Duck-typed marker so {@link isMissingProviderKeyError} works across duplicated module copies. */
30
+ gthMissingProviderKey = true;
31
+ provider;
32
+ envVar;
33
+ envVars;
34
+ constructor(message, details, options) {
35
+ super(message, options);
36
+ this.name = 'MissingProviderKeyError';
37
+ this.provider = details.provider;
38
+ this.envVar = details.envVar;
39
+ this.envVars = details.envVars;
40
+ }
41
+ /**
42
+ * Serialize the machine-readable half. `JSON.stringify(error)` would otherwise drop `message`
43
+ * (an Error's `message` is a non-enumerable own property), which is exactly the field a report
44
+ * consumer shows a human next to the provider and the variable name.
45
+ */
46
+ toJSON() {
47
+ return {
48
+ name: this.name,
49
+ message: this.message,
50
+ provider: this.provider,
51
+ envVar: this.envVar,
52
+ envVars: [...this.envVars],
53
+ };
54
+ }
55
+ }
56
+ /**
57
+ * True when `value` is a {@link MissingProviderKeyError}.
58
+ *
59
+ * Duck-typed on the marker property rather than `instanceof` on purpose: a consumer that ends up
60
+ * with two copies of `@gaunt-sloth/core` on disk (a `file:` dep, a hoisting split) would fail an
61
+ * `instanceof` check against a genuinely-correct error and misreport a missing key as a provider
62
+ * outage — the one distinction this error exists to make.
63
+ */
64
+ export function isMissingProviderKeyError(value) {
65
+ return (typeof value === 'object' &&
66
+ value !== null &&
67
+ value[MISSING_PROVIDER_KEY_MARKER] === true);
68
+ }
69
+ //# sourceMappingURL=providerKeys.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"providerKeys.js","sourceRoot":"","sources":["../../src/config/providerKeys.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;GAkBG;AAEH,+GAA+G;AAC/G,MAAM,2BAA2B,GAAG,uBAAuB,CAAC;AAmB5D;;;;;GAKG;AACH,MAAM,OAAO,uBAAwB,SAAQ,KAAK;IAChD,oGAAoG;IAC3F,qBAAqB,GAAG,IAAa,CAAC;IACtC,QAAQ,CAAS;IACjB,MAAM,CAAqB;IAC3B,OAAO,CAAoB;IAEpC,YAAY,OAAe,EAAE,OAAkC,EAAE,OAA6B;QAC5F,KAAK,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC;QACxB,IAAI,CAAC,IAAI,GAAG,yBAAyB,CAAC;QACtC,IAAI,CAAC,QAAQ,GAAG,OAAO,CAAC,QAAQ,CAAC;QACjC,IAAI,CAAC,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC;QAC7B,IAAI,CAAC,OAAO,GAAG,OAAO,CAAC,OAAO,CAAC;IACjC,CAAC;IAED;;;;OAIG;IACH,MAAM;QACJ,OAAO;YACL,IAAI,EAAE,IAAI,CAAC,IAAI;YACf,OAAO,EAAE,IAAI,CAAC,OAAO;YACrB,QAAQ,EAAE,IAAI,CAAC,QAAQ;YACvB,MAAM,EAAE,IAAI,CAAC,MAAM;YACnB,OAAO,EAAE,CAAC,GAAG,IAAI,CAAC,OAAO,CAAC;SAC3B,CAAC;IACJ,CAAC;CACF;AAED;;;;;;;GAOG;AACH,MAAM,UAAU,yBAAyB,CAAC,KAAc;IACtD,OAAO,CACL,OAAO,KAAK,KAAK,QAAQ;QACzB,KAAK,KAAK,IAAI;QACb,KAAiC,CAAC,2BAA2B,CAAC,KAAK,IAAI,CACzE,CAAC;AACJ,CAAC"}