@aria-cli/tools 1.0.11 → 1.0.13

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 (231) hide show
  1. package/dist-cjs/index.js +400 -436
  2. package/dist-cjs/network-runtime/index.js +8 -173
  3. package/package.json +6 -6
  4. package/dist-cjs/ask-user-interaction.js +0 -28
  5. package/dist-cjs/ask-user-interaction.js.map +0 -1
  6. package/dist-cjs/cache/web-cache.js +0 -71
  7. package/dist-cjs/cache/web-cache.js.map +0 -1
  8. package/dist-cjs/definitions/arion.js +0 -108
  9. package/dist-cjs/definitions/arion.js.map +0 -1
  10. package/dist-cjs/definitions/browser/browser.js +0 -422
  11. package/dist-cjs/definitions/browser/browser.js.map +0 -1
  12. package/dist-cjs/definitions/browser/index.js +0 -9
  13. package/dist-cjs/definitions/browser/index.js.map +0 -1
  14. package/dist-cjs/definitions/browser/pw-downloads.js +0 -118
  15. package/dist-cjs/definitions/browser/pw-downloads.js.map +0 -1
  16. package/dist-cjs/definitions/browser/pw-interactions.js +0 -214
  17. package/dist-cjs/definitions/browser/pw-interactions.js.map +0 -1
  18. package/dist-cjs/definitions/browser/pw-responses.js +0 -85
  19. package/dist-cjs/definitions/browser/pw-responses.js.map +0 -1
  20. package/dist-cjs/definitions/browser/pw-session.js +0 -327
  21. package/dist-cjs/definitions/browser/pw-session.js.map +0 -1
  22. package/dist-cjs/definitions/browser/pw-shared.js +0 -73
  23. package/dist-cjs/definitions/browser/pw-shared.js.map +0 -1
  24. package/dist-cjs/definitions/browser/pw-snapshot.js +0 -308
  25. package/dist-cjs/definitions/browser/pw-snapshot.js.map +0 -1
  26. package/dist-cjs/definitions/browser/pw-state.js +0 -71
  27. package/dist-cjs/definitions/browser/pw-state.js.map +0 -1
  28. package/dist-cjs/definitions/browser/types.js +0 -6
  29. package/dist-cjs/definitions/browser/types.js.map +0 -1
  30. package/dist-cjs/definitions/code-intelligence.js +0 -474
  31. package/dist-cjs/definitions/code-intelligence.js.map +0 -1
  32. package/dist-cjs/definitions/core.js +0 -134
  33. package/dist-cjs/definitions/core.js.map +0 -1
  34. package/dist-cjs/definitions/delegation.js +0 -516
  35. package/dist-cjs/definitions/delegation.js.map +0 -1
  36. package/dist-cjs/definitions/deploy.js +0 -69
  37. package/dist-cjs/definitions/deploy.js.map +0 -1
  38. package/dist-cjs/definitions/filesystem.js +0 -200
  39. package/dist-cjs/definitions/filesystem.js.map +0 -1
  40. package/dist-cjs/definitions/frg.js +0 -67
  41. package/dist-cjs/definitions/frg.js.map +0 -1
  42. package/dist-cjs/definitions/index.js +0 -44
  43. package/dist-cjs/definitions/index.js.map +0 -1
  44. package/dist-cjs/definitions/memory.js +0 -127
  45. package/dist-cjs/definitions/memory.js.map +0 -1
  46. package/dist-cjs/definitions/messaging.js +0 -632
  47. package/dist-cjs/definitions/messaging.js.map +0 -1
  48. package/dist-cjs/definitions/meta.js +0 -353
  49. package/dist-cjs/definitions/meta.js.map +0 -1
  50. package/dist-cjs/definitions/network.js +0 -163
  51. package/dist-cjs/definitions/network.js.map +0 -1
  52. package/dist-cjs/definitions/outlook.js +0 -281
  53. package/dist-cjs/definitions/outlook.js.map +0 -1
  54. package/dist-cjs/definitions/patch/apply-patch.js +0 -192
  55. package/dist-cjs/definitions/patch/apply-patch.js.map +0 -1
  56. package/dist-cjs/definitions/patch/fuzzy-match.js +0 -173
  57. package/dist-cjs/definitions/patch/fuzzy-match.js.map +0 -1
  58. package/dist-cjs/definitions/patch/index.js +0 -6
  59. package/dist-cjs/definitions/patch/index.js.map +0 -1
  60. package/dist-cjs/definitions/patch/patch-parser.js +0 -216
  61. package/dist-cjs/definitions/patch/patch-parser.js.map +0 -1
  62. package/dist-cjs/definitions/patch/sandbox-paths.js +0 -114
  63. package/dist-cjs/definitions/patch/sandbox-paths.js.map +0 -1
  64. package/dist-cjs/definitions/process/index.js +0 -9
  65. package/dist-cjs/definitions/process/index.js.map +0 -1
  66. package/dist-cjs/definitions/process/process-registry.js +0 -232
  67. package/dist-cjs/definitions/process/process-registry.js.map +0 -1
  68. package/dist-cjs/definitions/process/process.js +0 -390
  69. package/dist-cjs/definitions/process/process.js.map +0 -1
  70. package/dist-cjs/definitions/process/pty-keys.js +0 -260
  71. package/dist-cjs/definitions/process/pty-keys.js.map +0 -1
  72. package/dist-cjs/definitions/process/session-slug.js +0 -146
  73. package/dist-cjs/definitions/process/session-slug.js.map +0 -1
  74. package/dist-cjs/definitions/quip.js +0 -199
  75. package/dist-cjs/definitions/quip.js.map +0 -1
  76. package/dist-cjs/definitions/search.js +0 -64
  77. package/dist-cjs/definitions/search.js.map +0 -1
  78. package/dist-cjs/definitions/session-history.js +0 -73
  79. package/dist-cjs/definitions/session-history.js.map +0 -1
  80. package/dist-cjs/definitions/shell.js +0 -185
  81. package/dist-cjs/definitions/shell.js.map +0 -1
  82. package/dist-cjs/definitions/slack.js +0 -184
  83. package/dist-cjs/definitions/slack.js.map +0 -1
  84. package/dist-cjs/definitions/web.js +0 -113
  85. package/dist-cjs/definitions/web.js.map +0 -1
  86. package/dist-cjs/executors/apply-patch.js +0 -939
  87. package/dist-cjs/executors/apply-patch.js.map +0 -1
  88. package/dist-cjs/executors/arion.js +0 -126
  89. package/dist-cjs/executors/arion.js.map +0 -1
  90. package/dist-cjs/executors/code-intelligence.js +0 -926
  91. package/dist-cjs/executors/code-intelligence.js.map +0 -1
  92. package/dist-cjs/executors/deploy.js +0 -870
  93. package/dist-cjs/executors/deploy.js.map +0 -1
  94. package/dist-cjs/executors/filesystem.js +0 -1168
  95. package/dist-cjs/executors/filesystem.js.map +0 -1
  96. package/dist-cjs/executors/frg-freshness.js +0 -628
  97. package/dist-cjs/executors/frg-freshness.js.map +0 -1
  98. package/dist-cjs/executors/frg.js +0 -335
  99. package/dist-cjs/executors/frg.js.map +0 -1
  100. package/dist-cjs/executors/index.js +0 -144
  101. package/dist-cjs/executors/index.js.map +0 -1
  102. package/dist-cjs/executors/learning-meta.js +0 -1166
  103. package/dist-cjs/executors/learning-meta.js.map +0 -1
  104. package/dist-cjs/executors/lsp-client.js +0 -311
  105. package/dist-cjs/executors/lsp-client.js.map +0 -1
  106. package/dist-cjs/executors/memory.js +0 -797
  107. package/dist-cjs/executors/memory.js.map +0 -1
  108. package/dist-cjs/executors/meta.js +0 -227
  109. package/dist-cjs/executors/meta.js.map +0 -1
  110. package/dist-cjs/executors/process-registry.js +0 -470
  111. package/dist-cjs/executors/process-registry.js.map +0 -1
  112. package/dist-cjs/executors/pty-session-store.js +0 -35
  113. package/dist-cjs/executors/pty-session-store.js.map +0 -1
  114. package/dist-cjs/executors/pty.js +0 -313
  115. package/dist-cjs/executors/pty.js.map +0 -1
  116. package/dist-cjs/executors/restart.js +0 -156
  117. package/dist-cjs/executors/restart.js.map +0 -1
  118. package/dist-cjs/executors/search-freshness.js +0 -235
  119. package/dist-cjs/executors/search-freshness.js.map +0 -1
  120. package/dist-cjs/executors/search-types.js +0 -57
  121. package/dist-cjs/executors/search-types.js.map +0 -1
  122. package/dist-cjs/executors/search.js +0 -103
  123. package/dist-cjs/executors/search.js.map +0 -1
  124. package/dist-cjs/executors/self-diagnose.js +0 -435
  125. package/dist-cjs/executors/self-diagnose.js.map +0 -1
  126. package/dist-cjs/executors/session-history.js +0 -321
  127. package/dist-cjs/executors/session-history.js.map +0 -1
  128. package/dist-cjs/executors/shell-safety.js +0 -479
  129. package/dist-cjs/executors/shell-safety.js.map +0 -1
  130. package/dist-cjs/executors/shell.js +0 -1002
  131. package/dist-cjs/executors/shell.js.map +0 -1
  132. package/dist-cjs/executors/utils.js +0 -74
  133. package/dist-cjs/executors/utils.js.map +0 -1
  134. package/dist-cjs/executors/web.js +0 -548
  135. package/dist-cjs/executors/web.js.map +0 -1
  136. package/dist-cjs/extraction/content-extraction.js +0 -244
  137. package/dist-cjs/extraction/content-extraction.js.map +0 -1
  138. package/dist-cjs/extraction/index.js +0 -9
  139. package/dist-cjs/extraction/index.js.map +0 -1
  140. package/dist-cjs/headless-control-contract.js +0 -973
  141. package/dist-cjs/headless-control-contract.js.map +0 -1
  142. package/dist-cjs/index.js.map +0 -1
  143. package/dist-cjs/local-control-http-auth.js +0 -6
  144. package/dist-cjs/local-control-http-auth.js.map +0 -1
  145. package/dist-cjs/mcp/client.js +0 -186
  146. package/dist-cjs/mcp/client.js.map +0 -1
  147. package/dist-cjs/mcp/connection.js +0 -485
  148. package/dist-cjs/mcp/connection.js.map +0 -1
  149. package/dist-cjs/mcp/index.js +0 -31
  150. package/dist-cjs/mcp/index.js.map +0 -1
  151. package/dist-cjs/mcp/jsonrpc.js +0 -149
  152. package/dist-cjs/mcp/jsonrpc.js.map +0 -1
  153. package/dist-cjs/mcp/types.js +0 -9
  154. package/dist-cjs/mcp/types.js.map +0 -1
  155. package/dist-cjs/network-control-adapter.js +0 -78
  156. package/dist-cjs/network-control-adapter.js.map +0 -1
  157. package/dist-cjs/network-runtime/address-types.js +0 -169
  158. package/dist-cjs/network-runtime/address-types.js.map +0 -1
  159. package/dist-cjs/network-runtime/db-owner-fencing.js +0 -77
  160. package/dist-cjs/network-runtime/db-owner-fencing.js.map +0 -1
  161. package/dist-cjs/network-runtime/delivery-receipts.js +0 -277
  162. package/dist-cjs/network-runtime/delivery-receipts.js.map +0 -1
  163. package/dist-cjs/network-runtime/direct-endpoint-authority.js +0 -30
  164. package/dist-cjs/network-runtime/direct-endpoint-authority.js.map +0 -1
  165. package/dist-cjs/network-runtime/index.js.map +0 -1
  166. package/dist-cjs/network-runtime/local-control-contract.js +0 -634
  167. package/dist-cjs/network-runtime/local-control-contract.js.map +0 -1
  168. package/dist-cjs/network-runtime/node-store-contract.js +0 -39
  169. package/dist-cjs/network-runtime/node-store-contract.js.map +0 -1
  170. package/dist-cjs/network-runtime/pair-route-contract.js +0 -81
  171. package/dist-cjs/network-runtime/pair-route-contract.js.map +0 -1
  172. package/dist-cjs/network-runtime/peer-capabilities.js +0 -38
  173. package/dist-cjs/network-runtime/peer-capabilities.js.map +0 -1
  174. package/dist-cjs/network-runtime/peer-principal-ref.js +0 -16
  175. package/dist-cjs/network-runtime/peer-principal-ref.js.map +0 -1
  176. package/dist-cjs/network-runtime/peer-state-machine.js +0 -130
  177. package/dist-cjs/network-runtime/peer-state-machine.js.map +0 -1
  178. package/dist-cjs/network-runtime/protocol-schemas.js +0 -213
  179. package/dist-cjs/network-runtime/protocol-schemas.js.map +0 -1
  180. package/dist-cjs/network-runtime/runtime-bootstrap-contract.js +0 -64
  181. package/dist-cjs/network-runtime/runtime-bootstrap-contract.js.map +0 -1
  182. package/dist-cjs/outlook/desktop-session.js +0 -319
  183. package/dist-cjs/outlook/desktop-session.js.map +0 -1
  184. package/dist-cjs/policy.js +0 -156
  185. package/dist-cjs/policy.js.map +0 -1
  186. package/dist-cjs/providers/brave.js +0 -67
  187. package/dist-cjs/providers/brave.js.map +0 -1
  188. package/dist-cjs/providers/duckduckgo.js +0 -181
  189. package/dist-cjs/providers/duckduckgo.js.map +0 -1
  190. package/dist-cjs/providers/exa.js +0 -68
  191. package/dist-cjs/providers/exa.js.map +0 -1
  192. package/dist-cjs/providers/firecrawl.js +0 -60
  193. package/dist-cjs/providers/firecrawl.js.map +0 -1
  194. package/dist-cjs/providers/index.js +0 -18
  195. package/dist-cjs/providers/index.js.map +0 -1
  196. package/dist-cjs/providers/jina.js +0 -54
  197. package/dist-cjs/providers/jina.js.map +0 -1
  198. package/dist-cjs/providers/router.js +0 -101
  199. package/dist-cjs/providers/router.js.map +0 -1
  200. package/dist-cjs/providers/search-provider.js +0 -37
  201. package/dist-cjs/providers/search-provider.js.map +0 -1
  202. package/dist-cjs/providers/tavily.js +0 -59
  203. package/dist-cjs/providers/tavily.js.map +0 -1
  204. package/dist-cjs/quip/desktop-session.js +0 -354
  205. package/dist-cjs/quip/desktop-session.js.map +0 -1
  206. package/dist-cjs/registry/index.js +0 -7
  207. package/dist-cjs/registry/index.js.map +0 -1
  208. package/dist-cjs/registry/registry.js +0 -762
  209. package/dist-cjs/registry/registry.js.map +0 -1
  210. package/dist-cjs/runtime-socket-local-control-client.js +0 -368
  211. package/dist-cjs/runtime-socket-local-control-client.js.map +0 -1
  212. package/dist-cjs/security/dns-normalization.js +0 -23
  213. package/dist-cjs/security/dns-normalization.js.map +0 -1
  214. package/dist-cjs/security/dns-pinning.js +0 -161
  215. package/dist-cjs/security/dns-pinning.js.map +0 -1
  216. package/dist-cjs/security/external-content.js +0 -96
  217. package/dist-cjs/security/external-content.js.map +0 -1
  218. package/dist-cjs/security/ssrf.js +0 -222
  219. package/dist-cjs/security/ssrf.js.map +0 -1
  220. package/dist-cjs/slack/desktop-session.js +0 -367
  221. package/dist-cjs/slack/desktop-session.js.map +0 -1
  222. package/dist-cjs/tool-factory.js +0 -51
  223. package/dist-cjs/tool-factory.js.map +0 -1
  224. package/dist-cjs/types.js +0 -9
  225. package/dist-cjs/types.js.map +0 -1
  226. package/dist-cjs/utils/retry.js +0 -170
  227. package/dist-cjs/utils/retry.js.map +0 -1
  228. package/dist-cjs/utils/safe-parse-json.js +0 -165
  229. package/dist-cjs/utils/safe-parse-json.js.map +0 -1
  230. package/dist-cjs/utils/url.js +0 -24
  231. package/dist-cjs/utils/url.js.map +0 -1
@@ -1 +0,0 @@
1
- {"version":3,"file":"learning-meta.js","sourceRoot":"","sources":["../../src/executors/learning-meta.ts"],"names":[],"mappings":";AAAA;;;;;;;;;;GAUG;;;;;AAiHH,8BAgCC;AA8LD,oCAsBC;AASD,gDAuDC;AAOD,sCA4DC;AAED,8CAuFC;AAED,sDAsDC;AAoHD,8BAkCC;AAED,wDA0EC;AASD,4CAsDC;AAWD,8CAyDC;AAQD,gDAgBC;AAWD,8CA+KC;AAWD,gDA2GC;AAUD,0CA4BC;AA10CD,yCAAsC;AACtC,2DAA4E;AAC5E,qCAAuD;AACvD,8DAAiC;AACjC,0DAA6B;AAC7B,sDAAyB;AACzB,6BAAwB;AACxB,oDAQ+B;AAC/B,0EAI6C;AAE7C,2CAA8C;AAC9C,yCAA4D;AAC5D,oEAA4D;AAE5D,uDAAuD;AAEvD,MAAM,IAAI,GAAG,IAAA,qBAAS,EAAC,yBAAM,CAAC,CAAC;AAC/B,MAAM,QAAQ,GAAG,IAAA,qBAAS,EAAC,6BAAU,CAAC,CAAC;AACvC,MAAM,iBAAiB,GAAG,EAAE,CAAC;AAC7B,MAAM,gCAAgC,GAAG,CAAC,GAAG,MAAM,CAAC;AACpD,MAAM,4BAA4B,GAAG,EAAE,GAAG,MAAM,CAAC;AACjD,MAAM,0BAA0B,GAAG,EAAE,CAAC;AACtC,MAAM,mCAAmC,GAAG,MAAM,CAAC;AACnD,MAAM,oBAAoB,GAAG,EAAE,CAAC;AAqBhC,MAAM,mBAAmB,GAAG,IAAI,GAAG,EAAoC,CAAC;AACxE,IAAI,yBAAyB,GAA0C,IAAI,CAAC;AAE5E,MAAM,sBAAsB,GAAG,OAAC,CAAC,MAAM,CAAC;IACtC,IAAI,EAAE,OAAC,CAAC,OAAO,EAAE,CAAC,QAAQ,EAAE;IAC5B,MAAM,EAAE,OAAC,CAAC,KAAK,CAAC,OAAC,CAAC,MAAM,EAAE,CAAC,CAAC,QAAQ,EAAE;CACvC,CAAC,CAAC;AAEH,KAAK,UAAU,0BAA0B,CAAC,GAAgB;IACxD,IAAI,CAAC,GAAG,CAAC,OAAO,IAAI,CAAC,GAAG,CAAC,YAAY;QAAE,OAAO;IAC9C,IAAI,CAAC;QACH,MAAM,GAAG,CAAC,YAAY,CAAC,mBAAmB,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;IAC1D,CAAC;IAAC,MAAM,CAAC;QACP,yEAAyE;IAC3E,CAAC;AACH,CAAC;AAED,SAAS,2BAA2B,CAAC,gBAAyB;IAC5D,MAAM,UAAU,GAAG,gBAAgB,EAAE,IAAI,EAAE,CAAC;IAC5C,IAAI,CAAC,UAAU,EAAE,CAAC;QAChB,OAAO,SAAS,CAAC;IACnB,CAAC;IACD,IAAI,CAAC;QACH,MAAM,GAAG,GAAG,qBAAM,CAAC,UAAU,CAAC,QAAQ,CAAC,CAAC,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,UAAU,EAAE,QAAQ,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;QAChG,OAAO,6CAA0B,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;IAC/C,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,SAAS,CAAC;IACnB,CAAC;AACH,CAAC;AAED,SAAS,gBAAgB,CAAC,OAAe;IACvC,MAAM,KAAK,GAAG,OAAO,CAAC,KAAK,CAAC,oCAAoC,CAAC,CAAC;IAClE,IAAI,CAAC,KAAK;QAAE,OAAO,EAAE,WAAW,EAAE,EAAE,EAAE,IAAI,EAAE,OAAO,EAAE,CAAC;IACtD,MAAM,CAAC,EAAE,cAAc,GAAG,EAAE,EAAE,IAAI,GAAG,EAAE,CAAC,GAAG,KAAK,CAAC;IACjD,MAAM,WAAW,GAA4B,EAAE,CAAC;IAChD,KAAK,MAAM,IAAI,IAAI,cAAc,CAAC,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC;QAC9C,MAAM,GAAG,GAAG,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC;QAC9B,IAAI,GAAG,IAAI,CAAC;YAAE,SAAS;QACvB,MAAM,GAAG,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC,IAAI,EAAE,CAAC;QACtC,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,GAAG,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC;QACzC,IAAI,CAAC,GAAG;YAAE,SAAS;QACnB,IAAI,KAAK,CAAC,UAAU,CAAC,GAAG,CAAC,IAAI,KAAK,CAAC,QAAQ,CAAC,GAAG,CAAC,EAAE,CAAC;YACjD,WAAW,CAAC,GAAG,CAAC,GAAG,KAAK;iBACrB,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;iBACZ,KAAK,CAAC,GAAG,CAAC;iBACV,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC;iBAC1B,MAAM,CAAC,OAAO,CAAC,CAAC;QACrB,CAAC;aAAM,CAAC;YACN,WAAW,CAAC,GAAG,CAAC,GAAG,KAAK,CAAC,OAAO,CAAC,cAAc,EAAE,EAAE,CAAC,CAAC;QACvD,CAAC;IACH,CAAC;IACD,OAAO,EAAE,WAAW,EAAE,IAAI,EAAE,IAAI,CAAC,IAAI,EAAE,EAAE,CAAC;AAC5C,CAAC;AAED,iFAAiF;AAC1E,KAAK,UAAU,SAAS,CAC7B,GAAW,EACX,SAAS,GAAG,KAAK,EACjB,YAA0B;IAE1B,MAAM,UAAU,GAAG,IAAI,eAAe,EAAE,CAAC;IACzC,MAAM,KAAK,GAAG,UAAU,CAAC,GAAG,EAAE,CAAC,UAAU,CAAC,KAAK,EAAE,EAAE,SAAS,CAAC,CAAC;IAC9D,kEAAkE;IAClE,uEAAuE;IACvE,MAAM,aAAa,GAAG,YAAY,CAAC,CAAC,CAAC,GAAG,EAAE,CAAC,UAAU,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC,SAAS,CAAC;IAC1E,IAAI,YAAY,EAAE,CAAC;QACjB,IAAI,YAAY,CAAC,OAAO,EAAE,CAAC;YACzB,YAAY,CAAC,KAAK,CAAC,CAAC;YACpB,OAAO,IAAI,CAAC;QACd,CAAC;QACD,YAAY,CAAC,gBAAgB,CAAC,OAAO,EAAE,aAAc,EAAE,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC,CAAC;IACzE,CAAC;IACD,IAAI,CAAC;QACH,MAAM,GAAG,GAAG,MAAM,KAAK,CAAC,GAAG,EAAE;YAC3B,MAAM,EAAE,UAAU,CAAC,MAAM;YACzB,OAAO,EAAE,EAAE,MAAM,EAAE,kBAAkB,EAAE;SACxC,CAAC,CAAC;QACH,IAAI,CAAC,GAAG,CAAC,EAAE;YAAE,OAAO,IAAI,CAAC;QACzB,OAAO,CAAC,MAAM,GAAG,CAAC,IAAI,EAAE,CAA4B,CAAC;IACvD,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,IAAI,CAAC;IACd,CAAC;YAAS,CAAC;QACT,YAAY,CAAC,KAAK,CAAC,CAAC;QACpB,IAAI,YAAY,IAAI,aAAa,EAAE,CAAC;YAClC,YAAY,CAAC,mBAAmB,CAAC,OAAO,EAAE,aAAa,CAAC,CAAC;QAC3D,CAAC;IACH,CAAC;AACH,CAAC;AAED,KAAK,UAAU,iBAAiB,CAAC,OAAe;IAC9C,MAAM,KAAK,GAAa,EAAE,CAAC;IAC3B,MAAM,WAAW,GAAa,EAAE,CAAC;IACjC,MAAM,KAAK,GAAG,CAAC,OAAO,CAAC,CAAC;IAExB,OAAO,KAAK,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QACxB,MAAM,OAAO,GAAG,KAAK,CAAC,GAAG,EAAG,CAAC;QAC7B,WAAW,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;QAC1B,IAAI,OAAO,GAAwD,EAAE,CAAC;QACtE,IAAI,CAAC;YACH,OAAO,GAAG,CAAC,MAAM,kBAAE,CAAC,OAAO,CAAC,OAAO,EAAE,EAAE,aAAa,EAAE,IAAI,EAAE,CAAC,CAG3D,CAAC;QACL,CAAC;QAAC,MAAM,CAAC;YACP,SAAS;QACX,CAAC;QACD,KAAK,MAAM,KAAK,IAAI,OAAO,EAAE,CAAC;YAC5B,MAAM,IAAI,GAAG,mBAAI,CAAC,IAAI,CAAC,OAAO,EAAE,KAAK,CAAC,IAAI,CAAC,CAAC;YAC5C,IAAI,KAAK,CAAC,WAAW,EAAE,EAAE,CAAC;gBACxB,IAAI,KAAK,CAAC,IAAI,KAAK,cAAc,IAAI,KAAK,CAAC,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC;oBAAE,SAAS;gBAC1E,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;YACnB,CAAC;iBAAM,IAAI,KAAK,CAAC,IAAI,KAAK,UAAU,EAAE,CAAC;gBACrC,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;YACnB,CAAC;QACH,CAAC;IACH,CAAC;IAED,OAAO,EAAE,KAAK,EAAE,WAAW,EAAE,CAAC;AAChC,CAAC;AAED;;;;GAIG;AACH,KAAK,UAAU,4BAA4B;IACzC,MAAM,YAAY,GAAG,mBAAI,CAAC,IAAI,CAAC,iBAAE,CAAC,OAAO,EAAE,EAAE,SAAS,EAAE,SAAS,EAAE,wBAAwB,CAAC,CAAC;IAC7F,MAAM,GAAG,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;IAEvB,IACE,yBAAyB;QACzB,yBAAyB,CAAC,eAAe,KAAK,CAAC,CAAC;QAChD,GAAG,GAAG,yBAAyB,CAAC,UAAU,GAAG,mCAAmC,EAChF,CAAC;QACD,OAAO,yBAAyB,CAAC,IAAI,CAAC;IACxC,CAAC;IAED,IAAI,CAAC;QACH,MAAM,IAAI,GAAG,MAAM,kBAAE,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC;QACzC,IACE,yBAAyB;YACzB,yBAAyB,CAAC,eAAe,KAAK,IAAI,CAAC,OAAO;YAC1D,GAAG,GAAG,yBAAyB,CAAC,UAAU,GAAG,mCAAmC,EAChF,CAAC;YACD,OAAO,yBAAyB,CAAC,IAAI,CAAC;QACxC,CAAC;QAED,MAAM,GAAG,GAAG,MAAM,kBAAE,CAAC,QAAQ,CAAC,YAAY,EAAE,OAAO,CAAC,CAAC;QACrD,MAAM,QAAQ,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;QACjC,IAAI,CAAC,QAAQ,EAAE,OAAO,IAAI,OAAO,QAAQ,CAAC,OAAO,KAAK,QAAQ;YAAE,OAAO,EAAE,CAAC;QAC1E,MAAM,IAAI,GAAa,EAAE,CAAC;QAC1B,KAAK,MAAM,QAAQ,IAAI,MAAM,CAAC,MAAM,CAAC,QAAQ,CAAC,OAAO,CAAC,EAAE,CAAC;YACvD,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,QAAQ,CAAC;gBAAE,SAAS;YACvC,KAAK,MAAM,OAAO,IAAI,QAAQ,EAAE,CAAC;gBAC/B,MAAM,WAAW,GAAI,OAAmC,CAAC,WAAW,CAAC;gBACrE,IAAI,OAAO,WAAW,KAAK,QAAQ;oBAAE,SAAS;gBAC9C,IAAI,CAAC,IAAI,CAAC,mBAAI,CAAC,IAAI,CAAC,WAAW,EAAE,QAAQ,CAAC,CAAC,CAAC;YAC9C,CAAC;QACH,CAAC;QACD,yBAAyB,GAAG;YAC1B,UAAU,EAAE,GAAG;YACf,eAAe,EAAE,IAAI,CAAC,OAAO;YAC7B,IAAI;SACL,CAAC;QACF,OAAO,IAAI,CAAC;IACd,CAAC;IAAC,MAAM,CAAC;QACP,yBAAyB,GAAG;YAC1B,UAAU,EAAE,GAAG;YACf,eAAe,EAAE,CAAC,CAAC;YACnB,IAAI,EAAE,EAAE;SACT,CAAC;QACF,OAAO,EAAE,CAAC,CAAC,iDAAiD;IAC9D,CAAC;AACH,CAAC;AAED,SAAS,uBAAuB,CAAC,SAAmB;IAClD,OAAO,SAAS;SACb,GAAG,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,mBAAI,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC;SAC/B,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,aAAa,CAAC,CAAC,CAAC,CAAC;SAClC,IAAI,CAAC,IAAI,CAAC,CAAC;AAChB,CAAC;AAED,SAAS,eAAe,CAAC,QAA4B;IACnD,IAAI,CAAC,QAAQ;QAAE,OAAO,gCAAgC,CAAC;IACvD,MAAM,MAAM,GAAG,MAAM,CAAC,QAAQ,CAAC,CAAC;IAChC,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,MAAM,CAAC;QAAE,OAAO,gCAAgC,CAAC;IACtE,MAAM,OAAO,GAAG,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC;IACnC,OAAO,IAAI,CAAC,GAAG,CAAC,KAAK,EAAE,IAAI,CAAC,GAAG,CAAC,4BAA4B,EAAE,OAAO,CAAC,CAAC,CAAC;AAC1E,CAAC;AAED,SAAS,2BAA2B,CAAC,GAAwC;IAC3E,OAAO,eAAe,CAAC,GAAG,EAAE,6BAA6B,CAAC,CAAC;AAC7D,CAAC;AAED,KAAK,UAAU,iBAAiB,CAAC,KAAe;IAC9C,MAAM,WAAW,GAAG,KAAK,CAAC,IAAI,CAAC,IAAI,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,mBAAI,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;IAC3E,MAAM,SAAS,GAAG,MAAM,OAAO,CAAC,GAAG,CACjC,WAAW,CAAC,GAAG,CAAC,KAAK,EAAE,WAAW,EAAE,EAAE;QACpC,IAAI,CAAC;YACH,MAAM,IAAI,GAAG,MAAM,kBAAE,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;YACxC,OAAO,CAAC,WAAW,EAAE,GAAG,IAAI,CAAC,OAAO,IAAI,IAAI,CAAC,OAAO,IAAI,IAAI,CAAC,IAAI,EAAE,CAAU,CAAC;QAChF,CAAC;QAAC,MAAM,CAAC;YACP,0EAA0E;YAC1E,OAAO,CAAC,WAAW,EAAE,SAAS,CAAU,CAAC;QAC3C,CAAC;IACH,CAAC,CAAC,CACH,CAAC;IACF,OAAO,MAAM,CAAC,WAAW,CAAC,SAAS,CAAC,CAAC;AACvC,CAAC;AAED,KAAK,UAAU,sBAAsB,CAAC,QAAgC;IACpE,MAAM,MAAM,GAAG,MAAM,OAAO,CAAC,GAAG,CAC9B,MAAM,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC,GAAG,CAAC,KAAK,EAAE,CAAC,WAAW,EAAE,KAAK,CAAC,EAAE,EAAE;QAC1D,IAAI,CAAC;YACH,MAAM,IAAI,GAAG,MAAM,kBAAE,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;YACxC,MAAM,OAAO,GAAG,GAAG,IAAI,CAAC,OAAO,IAAI,IAAI,CAAC,OAAO,IAAI,IAAI,CAAC,IAAI,EAAE,CAAC;YAC/D,OAAO,OAAO,KAAK,KAAK,CAAC;QAC3B,CAAC;QAAC,MAAM,CAAC;YACP,OAAO,KAAK,KAAK,SAAS,CAAC;QAC7B,CAAC;IACH,CAAC,CAAC,CACH,CAAC;IACF,OAAO,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;AAC9B,CAAC;AAED,KAAK,UAAU,uBAAuB,CAAC,SAAmB,EAAE,KAAa;IACvE,MAAM,QAAQ,GAAG,GAAG,KAAK,IAAI,uBAAuB,CAAC,SAAS,CAAC,EAAE,CAAC;IAClE,MAAM,GAAG,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;IACvB,MAAM,MAAM,GAAG,mBAAmB,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;IACjD,IAAI,MAAM,IAAI,GAAG,GAAG,MAAM,CAAC,UAAU,GAAG,KAAK,EAAE,CAAC;QAC9C,MAAM,OAAO,GAAG,MAAM,sBAAsB,CAAC,MAAM,CAAC,UAAU,CAAC,CAAC;QAChE,IAAI,CAAC,OAAO,EAAE,CAAC;YACb,MAAM,CAAC,YAAY,GAAG,GAAG,CAAC;YAC1B,OAAO,MAAM,CAAC,KAAK,CAAC;QACtB,CAAC;IACH,CAAC;IAED,gFAAgF;IAChF,MAAM,KAAK,GAAG,MAAM,OAAO,CAAC,GAAG,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,iBAAiB,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;IAChF,MAAM,KAAK,GAAG,KAAK,CAAC,IAAI,CAAC,IAAI,GAAG,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;IACvE,MAAM,YAAY,GAAG,KAAK,CAAC,IAAI,CAC7B,IAAI,GAAG,CAAC;QACN,GAAG,SAAS,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,mBAAI,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC;QAC5C,GAAG,KAAK,CAAC,OAAO,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,WAAW,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,mBAAI,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC;QAC5E,GAAG,KAAK,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,mBAAI,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;KAC3C,CAAC,CACH,CAAC;IACF,MAAM,UAAU,GAAG,MAAM,iBAAiB,CAAC,YAAY,CAAC,CAAC;IAEzD,IACE,CAAC,mBAAmB,CAAC,GAAG,CAAC,QAAQ,CAAC;QAClC,mBAAmB,CAAC,IAAI,IAAI,0BAA0B,EACtD,CAAC;QACD,IAAI,SAAS,GAAkB,IAAI,CAAC;QACpC,IAAI,YAAY,GAAG,MAAM,CAAC,iBAAiB,CAAC;QAC5C,KAAK,MAAM,CAAC,GAAG,EAAE,KAAK,CAAC,IAAI,mBAAmB,CAAC,OAAO,EAAE,EAAE,CAAC;YACzD,IAAI,KAAK,CAAC,YAAY,GAAG,YAAY,EAAE,CAAC;gBACtC,YAAY,GAAG,KAAK,CAAC,YAAY,CAAC;gBAClC,SAAS,GAAG,GAAG,CAAC;YAClB,CAAC;QACH,CAAC;QACD,IAAI,SAAS;YAAE,mBAAmB,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC;IACvD,CAAC;IACD,mBAAmB,CAAC,GAAG,CAAC,QAAQ,EAAE;QAChC,UAAU,EAAE,GAAG;QACf,YAAY,EAAE,GAAG;QACjB,KAAK;QACL,UAAU;KACX,CAAC,CAAC;IACH,OAAO,KAAK,CAAC;AACf,CAAC;AAID,+DAA+D;AAC/D,IAAI,gBAAgB,GAAqB,IAAI,CAAC;AAE9C,SAAgB,YAAY;IAC1B,IAAI,gBAAgB;QAAE,OAAO,gBAAgB,CAAC;IAE9C,MAAM,GAAG,GAAG,OAAO,CAAC,QAAQ,CAAC;IAC7B,MAAM,IAAI,GAAG,iBAAE,CAAC,IAAI,EAAE,CAAC;IACvB,MAAM,MAAM,GAAG,GAAG,KAAK,QAAQ,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,GAAG,KAAK,OAAO,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,OAAO,CAAC;IAClF,MAAM,GAAG,GAAc,EAAE,EAAE,EAAE,MAAM,EAAE,IAAI,EAAE,CAAC;IAE5C,yEAAyE;IACzE,IAAI,MAAM,KAAK,OAAO,EAAE,CAAC;QACvB,IAAI,CAAC;YACH,8FAA8F;YAC9F,MAAM,OAAO,GAAG,IAAA,sBAAY,EAAC,iBAAiB,EAAE,OAAO,CAAC,CAAC;YACzD,MAAM,OAAO,GAAG,OAAO,CAAC,KAAK,CAAC,YAAY,CAAC,CAAC;YAC5C,IAAI,OAAO,EAAE,CAAC,CAAC,CAAC;gBAAE,GAAG,CAAC,MAAM,GAAG,OAAO,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC,WAAW,EAAE,CAAC;QAC5E,CAAC;QAAC,MAAM,CAAC;YACP,2CAA2C;QAC7C,CAAC;IACH,CAAC;IAED,gBAAgB,GAAG,GAAG,CAAC;IACvB,OAAO,GAAG,CAAC;AACb,CAAC;AASM,KAAK,UAAU,kBAAkB,CACtC,KAA6B,EAC7B,UAAkB,EAClB,YAA0B;IAE1B,IAAI,KAAK,CAAC,MAAM,KAAK,CAAC;QAAE,OAAO,EAAE,OAAO,EAAE,EAAE,EAAE,QAAQ,EAAE,CAAC,EAAE,CAAC;IAE5D,MAAM,kBAAkB,GAAG,IAAI,eAAe,EAAE,CAAC;IACjD,IAAI,YAAY,EAAE,OAAO;QAAE,OAAO,EAAE,OAAO,EAAE,EAAE,EAAE,QAAQ,EAAE,KAAK,CAAC,MAAM,EAAE,CAAC;IAE1E,oDAAoD;IACpD,MAAM,OAAO,GAAG,KAAK,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,CAAC,EAAE,EAAE,CACpC,CAAC,OAAO,IAAI,KAAK,UAAU,CAAC,CAAC,CAAC,IAAI,CAAC,kBAAkB,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,IAAI,CACxE,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,MAAM,EAAE,EAAE,MAAM,EAAE,WAAoB,EAAE,KAAK,EAAE,EAAE,CAAC,EACnE,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,MAAM,EAAE,EAAE,MAAM,EAAE,UAAmB,EAAE,MAAM,EAAE,EAAE,CAAC,CACrE,CACF,CAAC;IAEF,MAAM,OAAO,GAAG,IAAI,KAAK,CAAiC,KAAK,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IACnF,IAAI,aAAa,GAAG,CAAC,CAAC;IACtB,IAAI,QAAQ,GAAG,KAAK,CAAC;IAErB,OAAO,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,EAAE;QAC7B,MAAM,IAAI,GAAG,GAAG,EAAE;YAChB,IAAI,QAAQ;gBAAE,OAAO,CAAC,2CAA2C;YACjE,QAAQ,GAAG,IAAI,CAAC;YAChB,YAAY,CAAC,KAAK,CAAC,CAAC;YACpB,IAAI,YAAY;gBAAE,YAAY,CAAC,mBAAmB,CAAC,OAAO,EAAE,aAAa,CAAC,CAAC;YAC3E,MAAM,OAAO,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,EAAgC,EAAE,CAAC,CAAC,KAAK,IAAI,CAAC,CAAC;YAChF,OAAO,CAAC,EAAE,OAAO,EAAE,QAAQ,EAAE,KAAK,CAAC,MAAM,GAAG,OAAO,CAAC,MAAM,EAAE,CAAC,CAAC;QAChE,CAAC,CAAC;QAEF,MAAM,aAAa,GAAG,GAAG,EAAE;YACzB,kBAAkB,CAAC,KAAK,EAAE,CAAC;YAC3B,IAAI,EAAE,CAAC;QACT,CAAC,CAAC;QACF,IAAI,YAAY,EAAE,CAAC;YACjB,YAAY,CAAC,gBAAgB,CAAC,OAAO,EAAE,aAAa,EAAE,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC,CAAC;QACxE,CAAC;QAED,mEAAmE;QACnE,MAAM,KAAK,GAAG,UAAU,CAAC,GAAG,EAAE;YAC5B,kBAAkB,CAAC,KAAK,EAAE,CAAC;YAC3B,IAAI,EAAE,CAAC;QACT,CAAC,EAAE,UAAU,CAAC,CAAC;QAEf,2EAA2E;QAC3E,KAAK,MAAM,CAAC,IAAI,OAAO,EAAE,CAAC;YACxB,CAAC,CAAC,IAAI,CAAC,CAAC,EAAE,CAAC,EAAE,MAAM,EAAE,EAAE,EAAE;gBACvB,OAAO,CAAC,CAAC,CAAC,GAAG,MAAM,CAAC;gBACpB,aAAa,EAAE,CAAC;gBAChB,IAAI,aAAa,KAAK,KAAK,CAAC,MAAM;oBAAE,IAAI,EAAE,CAAC;YAC7C,CAAC,CAAC,CAAC;QACL,CAAC;IACH,CAAC,CAAC,CAAC;AACL,CAAC;AAED,8EAA8E;AAC9E,uEAAuE;AACvE,mDAAmD;AACnD,8EAA8E;AAEvE,KAAK,UAAU,aAAa,CACjC,OAA4C,EAC5C,KAAa,EACb,KAAa,EACb,YAA0B;IAE1B,IAAI,YAAY,EAAE,OAAO;QAAE,OAAO,EAAE,CAAC;IACrC,MAAM,GAAG,GAAmB,EAAE,CAAC;IAC/B,MAAM,OAAO,GAAG,IAAI,GAAG,EAAU,CAAC;IAClC,MAAM,CAAC,KAAK,EAAE,MAAM,EAAE,QAAQ,CAAC,GAAG,MAAM,OAAO,CAAC,GAAG,CAAC;QAClD,OAAO,CAAC,WAAW,CAAC,EAAE,KAAK,EAAE,KAAK,EAAE,CAAC;QACrC,OAAO,CAAC,YAAY,CAAC,EAAE,KAAK,EAAE,KAAK,EAAE,CAAC;QACtC,OAAO;aACJ,MAAM,CAAC,KAAK,EAAE,EAAE,KAAK,EAAE,CAAC;aACxB,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,QAAQ,CAAC;aACvB,KAAK,CAAC,GAAG,EAAE,CAAC,EAAE,CAAC;KACnB,CAAC,CAAC;IACH,IAAI,YAAY,EAAE,OAAO;QAAE,OAAO,EAAE,CAAC;IACrC,KAAK,MAAM,IAAI,IAAI,KAAK,EAAE,CAAC;QACzB,IAAI,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC;YAAE,SAAS;QACnC,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;QACrB,GAAG,CAAC,IAAI,CAAC;YACP,IAAI,EAAE,MAAM;YACZ,EAAE,EAAE,IAAI,CAAC,EAAE;YACX,IAAI,EAAE,IAAI,CAAC,IAAI;YACf,WAAW,EAAE,IAAI,CAAC,WAAW,IAAI,EAAE;YACnC,MAAM,EAAE,SAAS;YACjB,QAAQ,EAAE,IAAI;YACd,MAAM,EAAE,MAAM;SACf,CAAC,CAAC;IACL,CAAC;IACD,KAAK,MAAM,KAAK,IAAI,MAAM,EAAE,CAAC;QAC3B,IAAI,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,EAAE,CAAC;YAAE,SAAS;QACpC,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;QACtB,GAAG,CAAC,IAAI,CAAC;YACP,IAAI,EAAE,OAAO;YACb,EAAE,EAAE,KAAK,CAAC,EAAE;YACZ,IAAI,EAAE,KAAK,CAAC,IAAI;YAChB,WAAW,EAAE,KAAK,CAAC,WAAW,IAAI,EAAE;YACpC,MAAM,EAAE,SAAS;YACjB,QAAQ,EAAE,IAAI;YACd,MAAM,EAAE,YAAY;SACrB,CAAC,CAAC;IACL,CAAC;IACD,iEAAiE;IACjE,KAAK,MAAM,GAAG,IAAI,QAAQ,EAAE,CAAC;QAC3B,IAAI,OAAO,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE,CAAC;YAAE,SAAS;QAClC,OAAO,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;QACpB,GAAG,CAAC,IAAI,CAAC;YACP,IAAI,EAAE,QAAQ;YACd,EAAE,EAAE,GAAG,CAAC,EAAE;YACV,IAAI,EACF,GAAG,CAAC,OAAO,IAAI,CAAC,GAAG,CAAC,OAAO,CAAC,MAAM,GAAG,EAAE,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,EAAE,EAAE,CAAC,GAAG,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC;YAC3F,WAAW,EAAE,GAAG,CAAC,OAAO,IAAI,GAAG,CAAC,OAAO;YACvC,MAAM,EAAE,SAAS;YACjB,QAAQ,EAAE,KAAK;YACf,MAAM,EAAE,QAAQ;SACjB,CAAC,CAAC;IACL,CAAC;IACD,OAAO,GAAG,CAAC;AACb,CAAC;AAEM,KAAK,UAAU,iBAAiB,CACrC,KAAa,EACb,UAAkB,EAClB,KAAa,EACb,YAA0B,EAC1B,GAAwC;IAExC,IAAI,YAAY,EAAE,OAAO;QAAE,OAAO,EAAE,CAAC;IACrC,MAAM,cAAc,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,CAAC,GAAG,CAAC,EAAE,EAAE,KAAK,CAAC,CAAC,CAAC;IACxD,MAAM,WAAW,GAAG,GAAG,IAAI,OAAO,CAAC,GAAG,CAAC;IACvC,gFAAgF;IAChF,MAAM,YAAY,GAAG,WAAW,CAAC,eAAe,EAAE,KAAK,CAAC,mBAAI,CAAC,SAAS,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,IAAI,EAAE,CAAC;IAC9F,MAAM,UAAU,GAAG,2BAA2B,CAAC,WAAW,CAAC,CAAC;IAC5D,MAAM,kBAAkB,GAAG,CAAC,mBAAI,CAAC,IAAI,CAAC,UAAU,EAAE,QAAQ,CAAC,EAAE,mBAAI,CAAC,IAAI,CAAC,UAAU,EAAE,SAAS,CAAC,CAAC,CAAC;IAC/F,MAAM,sBAAsB,GAAG,mBAAI,CAAC,IAAI,CAAC,UAAU,EAAE,UAAU,CAAC,CAAC;IAEjE,MAAM,GAAG,GAAmB,EAAE,CAAC;IAC/B,MAAM,UAAU,GAAG,KAAK,CAAC,WAAW,EAAE,CAAC;IAEvC,MAAM,aAAa,GAAG,KAAK,EAAE,KAAe,EAAiB,EAAE;QAC7D,KAAK,MAAM,IAAI,IAAI,KAAK,EAAE,CAAC;YACzB,IAAI,YAAY,EAAE,OAAO;gBAAE,MAAM;YACjC,IAAI,GAAG,CAAC,MAAM,IAAI,cAAc;gBAAE,MAAM;YACxC,IAAI,OAAO,GAAG,EAAE,CAAC;YACjB,IAAI,CAAC;gBACH,OAAO,GAAG,MAAM,kBAAE,CAAC,QAAQ,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC;YAC7C,CAAC;YAAC,MAAM,CAAC;gBACP,SAAS;YACX,CAAC;YACD,MAAM,EAAE,WAAW,EAAE,IAAI,EAAE,GAAG,gBAAgB,CAAC,OAAO,CAAC,CAAC;YACxD,MAAM,IAAI,GACR,CAAC,OAAO,WAAW,CAAC,IAAI,KAAK,QAAQ,IAAI,WAAW,CAAC,IAAI,CAAC;gBAC1D,mBAAI,CAAC,QAAQ,CAAC,mBAAI,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC;YACpC,MAAM,WAAW,GACf,CAAC,OAAO,WAAW,CAAC,WAAW,KAAK,QAAQ,IAAI,WAAW,CAAC,WAAW,CAAC;gBACxE,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;gBACnB,aAAa,CAAC;YAChB,MAAM,QAAQ,GAAG,GAAG,IAAI,KAAK,WAAW,KAAK,IAAI,EAAE,CAAC,WAAW,EAAE,CAAC;YAClE,IAAI,CAAC,QAAQ,CAAC,QAAQ,CAAC,UAAU,CAAC;gBAAE,SAAS;YAC7C,GAAG,CAAC,IAAI,CAAC;gBACP,IAAI,EAAE,OAAO;gBACb,EAAE,EAAE,SAAS,IAAI,EAAE;gBACnB,IAAI;gBACJ,WAAW;gBACX,MAAM,EAAE,OAAO;gBACf,QAAQ,EAAE,IAAI;gBACd,MAAM,EAAE,YAAY;gBACpB,IAAI,EAAE,IAAI;aACX,CAAC,CAAC;QACL,CAAC;IACH,CAAC,CAAC;IAEF,MAAM,CAAC,cAAc,EAAE,kBAAkB,CAAC,GAAG,MAAM,OAAO,CAAC,GAAG,CAAC;QAC7D,uBAAuB,CAAC,kBAAkB,EAAE,UAAU,CAAC;QACvD,kBAAE;aACC,IAAI,CAAC,sBAAsB,CAAC;aAC5B,IAAI,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC,IAAI,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC,sBAAsB,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC;aAC/D,KAAK,CAAC,GAAG,EAAE,CAAC,IAAI,CAAC;KACrB,CAAC,CAAC;IAEH,MAAM,aAAa,CACjB,KAAK,CAAC,IAAI,CAAC,IAAI,GAAG,CAAC,CAAC,GAAG,cAAc,EAAE,GAAG,CAAC,kBAAkB,CAAC,CAAC,CAAC,CAAC,kBAAkB,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAC9F,CAAC;IAEF,2EAA2E;IAC3E,yEAAyE;IACzE,0DAA0D;IAC1D,IAAI,GAAG,CAAC,MAAM,GAAG,CAAC,IAAI,YAAY,EAAE,OAAO,EAAE,CAAC;QAC5C,OAAO,GAAG,CAAC;IACb,CAAC;IAED,MAAM,eAAe,GACnB,YAAY,CAAC,MAAM,GAAG,CAAC;QACrB,CAAC,CAAC,CAAC,GAAG,IAAI,GAAG,CAAC,YAAY,CAAC,CAAC;QAC5B,CAAC,CAAC;YACE,GAAG,IAAI,GAAG,CAAC;gBACT,mBAAI,CAAC,IAAI,CAAC,iBAAE,CAAC,OAAO,EAAE,EAAE,OAAO,EAAE,QAAQ,CAAC;gBAC1C,mBAAI,CAAC,IAAI,CAAC,iBAAE,CAAC,OAAO,EAAE,EAAE,SAAS,EAAE,QAAQ,CAAC;gBAC5C,GAAG,CAAC,MAAM,4BAA4B,EAAE,CAAC;gBACzC,mBAAI,CAAC,IAAI,CAAC,iBAAE,CAAC,OAAO,EAAE,EAAE,QAAQ,EAAE,QAAQ,CAAC;gBAC3C,mBAAI,CAAC,IAAI,CAAC,iBAAE,CAAC,OAAO,EAAE,EAAE,SAAS,EAAE,QAAQ,CAAC;aAC7C,CAAC;SACH,CAAC;IACR,MAAM,WAAW,GAAG,MAAM,uBAAuB,CAAC,eAAe,EAAE,UAAU,CAAC,CAAC;IAC/E,MAAM,aAAa,CAAC,WAAW,CAAC,CAAC;IAEjC,OAAO,GAAG,CAAC;AACb,CAAC;AAEM,KAAK,UAAU,qBAAqB,CACzC,KAAa,EACb,KAAa,EACb,YAA0B;IAE1B,MAAM,aAAa,GAAG,IAAI,CAAC,GAAG,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC;IAC1C,+EAA+E;IAC/E,MAAM,YAAY,GAAG,kBAAkB,CAAC,KAAK,CAAC,CAAC;IAC/C,MAAM,GAAG,GAAmB,EAAE,CAAC;IAE/B,MAAM,CAAC,cAAc,EAAE,aAAa,CAAC,GAAG,MAAM,OAAO,CAAC,UAAU,CAAC;QAC/D,SAAS,CACP,kCAAkC,YAAY,UAAU,aAAa,EAAE,EACvE,KAAK,EACL,YAAY,CACb;QACD,SAAS,CACP,mCAAmC,YAAY,UAAU,aAAa,EAAE,EACxE,KAAK,EACL,YAAY,CACb;KACF,CAAC,CAAC;IAEH,IAAI,cAAc,CAAC,MAAM,KAAK,WAAW,IAAI,cAAc,CAAC,KAAK,EAAE,MAAM,EAAE,CAAC;QAC1E,KAAK,MAAM,CAAC,IAAI,cAAc,CAAC,KAAK,CAAC,MAAwC,EAAE,CAAC;YAC9E,GAAG,CAAC,IAAI,CAAC;gBACP,IAAI,EAAE,OAAO;gBACb,EAAE,EAAE,aAAa,CAAC,CAAC,EAAE,IAAI,CAAC,CAAC,OAAO,EAAE;gBACpC,IAAI,EAAE,MAAM,CAAC,CAAC,CAAC,IAAI,IAAI,CAAC,CAAC,OAAO,IAAI,SAAS,CAAC;gBAC9C,WAAW,EAAE,GAAG,CAAC,CAAC,MAAM,IAAI,EAAE,KAAK,CAAC,CAAC,QAAQ,IAAI,CAAC,YAAY,CAAC,IAAI,EAAE;gBACrE,MAAM,EAAE,WAAW;gBACnB,QAAQ,EAAE,KAAK;gBACf,MAAM,EAAE,SAAS;gBACjB,QAAQ,EAAE,CAAC,CAAC,QAA8B;aAC3C,CAAC,CAAC;QACL,CAAC;IACH,CAAC;IAED,IAAI,aAAa,CAAC,MAAM,KAAK,WAAW,IAAI,aAAa,CAAC,KAAK,EAAE,OAAO,EAAE,CAAC;QACzE,KAAK,MAAM,CAAC,IAAI,aAAa,CAAC,KAAK,CAAC,OAAyC,EAAE,CAAC;YAC9E,GAAG,CAAC,IAAI,CAAC;gBACP,IAAI,EAAE,OAAO;gBACb,EAAE,EAAE,WAAW,CAAC,CAAC,IAAI,EAAE;gBACvB,IAAI,EAAE,MAAM,CAAC,CAAC,CAAC,WAAW,IAAI,CAAC,CAAC,IAAI,IAAI,SAAS,CAAC;gBAClD,WAAW,EAAG,CAAC,CAAC,OAAkB,IAAI,EAAE;gBACxC,MAAM,EAAE,SAAS;gBACjB,QAAQ,EAAE,KAAK;gBACf,MAAM,EAAE,SAAS;gBACjB,OAAO,EAAE,CAAC,CAAC,OAA6B;aACzC,CAAC,CAAC;QACL,CAAC;IACH,CAAC;IAED,OAAO,GAAG,CAAC;AACb,CAAC;AAED,+EAA+E;AAC/E,IAAI,aAAa,GAAqD,IAAI,CAAC;AAC3E,SAAS,eAAe;IACtB,IAAI,CAAC,aAAa,EAAE,CAAC;QACnB,aAAa,GAAG,IAAI,+BAAoB,CAAC;YACvC,IAAI,8BAAmB,EAAE;YACzB,IAAI,mCAAwB,EAAE;YAC9B,IAAI,+BAAoB,EAAE;YAC1B,IAAI,4BAAiB,EAAE;YACvB,IAAI,6BAAkB,EAAE;YACxB,IAAI,kCAAuB,EAAE;SAC9B,CAAC,CAAC;IACL,CAAC;IACD,OAAO,aAAa,CAAC;AACvB,CAAC;AAED,KAAK,UAAU,iBAAiB,CAC9B,KAAa,EACb,KAAa,EACb,YAA0B;IAE1B,MAAM,YAAY,GAAG,IAAI,CAAC,GAAG,CAAC,KAAK,EAAE,oBAAoB,CAAC,CAAC;IAC3D,MAAM,YAAY,GAAG,kBAAkB,CAAC,KAAK,CAAC,CAAC;IAC/C,MAAM,OAAO,GAAG,MAAM,SAAS,CAC7B,+CAA+C,YAAY,SAAS,YAAY,EAAE,EAClF,KAAK,EACL,YAAY,CACb,CAAC;IACF,IAAI,CAAC,OAAO,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,OAAO,CAAC,OAAO,CAAC;QAAE,OAAO,EAAE,CAAC;IAE3D,MAAM,GAAG,GAAmB,EAAE,CAAC;IAC/B,KAAK,MAAM,IAAI,IAAI,OAAO,CAAC,OAAyC,EAAE,CAAC;QACrE,MAAM,GAAG,GAAG,IAAI,CAAC,OAAO,CAAC;QACzB,IAAI,CAAC,GAAG,IAAI,OAAO,GAAG,KAAK,QAAQ;YAAE,SAAS;QAC9C,MAAM,IAAI,GAAI,GAA+B,CAAC,IAAI,CAAC;QACnD,IAAI,OAAO,IAAI,KAAK,QAAQ,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE;YAAE,SAAS;QACvD,MAAM,gBAAgB,GAAI,GAA+B,CAAC,WAAW,CAAC;QACtE,MAAM,YAAY,GAAI,GAA+B,CAAC,OAAO,CAAC;QAE9D,GAAG,CAAC,IAAI,CAAC;YACP,IAAI,EAAE,MAAM;YACZ,EAAE,EAAE,OAAO,IAAI,EAAE;YACjB,IAAI;YACJ,WAAW,EACT,OAAO,gBAAgB,KAAK,QAAQ,IAAI,gBAAgB,CAAC,IAAI,EAAE;gBAC7D,CAAC,CAAC,gBAAgB;gBAClB,CAAC,CAAC,gBAAgB,IAAI,EAAE;YAC5B,MAAM,EAAE,KAAK;YACb,QAAQ,EAAE,KAAK;YACf,MAAM,EAAE,SAAS;YACjB,UAAU,EAAE,kBAAkB,IAAI,EAAE;YACpC,OAAO,EAAE,OAAO,YAAY,KAAK,QAAQ,CAAC,CAAC,CAAC,YAAY,CAAC,CAAC,CAAC,SAAS;SACrE,CAAC,CAAC;QACH,IAAI,GAAG,CAAC,MAAM,IAAI,YAAY;YAAE,MAAM;IACxC,CAAC;IACD,OAAO,GAAG,CAAC;AACb,CAAC;AAED,KAAK,UAAU,kBAAkB,CAAC,KAAa,EAAE,KAAa;IAC5D,MAAM,YAAY,GAAG,IAAI,CAAC,GAAG,CAAC,KAAK,EAAE,oBAAoB,CAAC,CAAC;IAC3D,IAAI,YAAY,IAAI,CAAC;QAAE,OAAO,EAAE,CAAC;IAEjC,IAAI,CAAC;QACH,MAAM,EAAE,MAAM,EAAE,GAAG,MAAM,QAAQ,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,KAAK,CAAC,EAAE;YAC3D,OAAO,EAAE,KAAK;YACd,SAAS,EAAE,IAAI,GAAG,IAAI;SACvB,CAAC,CAAC;QACH,MAAM,UAAU,GAAG,MAAM;aACtB,KAAK,CAAC,KAAK,CAAC;aACZ,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC;aAC1B,MAAM,CAAC,OAAO,CAAC;aACf,MAAM,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC,IAAI,CAAC,UAAU,CAAC,KAAK,CAAC,CAAC,CAAC;QAE7C,MAAM,GAAG,GAAmB,EAAE,CAAC;QAC/B,KAAK,MAAM,IAAI,IAAI,UAAU,EAAE,CAAC;YAC9B,GAAG,CAAC,IAAI,CAAC;gBACP,IAAI,EAAE,MAAM;gBACZ,EAAE,EAAE,QAAQ,IAAI,EAAE;gBAClB,IAAI;gBACJ,WAAW,EAAE,qBAAqB,IAAI,EAAE;gBACxC,MAAM,EAAE,MAAM;gBACd,QAAQ,EAAE,KAAK;gBACf,MAAM,EAAE,SAAS;gBACjB,UAAU,EAAE,gBAAgB,IAAI,EAAE;aACnC,CAAC,CAAC;YACH,IAAI,GAAG,CAAC,MAAM,IAAI,YAAY;gBAAE,MAAM;QACxC,CAAC;QACD,OAAO,GAAG,CAAC;IACb,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,EAAE,CAAC;IACZ,CAAC;AACH,CAAC;AAED,KAAK,UAAU,cAAc,CAC3B,KAAa,EACb,KAAa,EACb,QAAmB,EACnB,YAA0B;IAE1B,MAAM,KAAK,GAAmC,CAAC,iBAAiB,CAAC,KAAK,EAAE,KAAK,EAAE,YAAY,CAAC,CAAC,CAAC;IAC9F,IAAI,QAAQ,CAAC,EAAE,KAAK,OAAO,EAAE,CAAC;QAC5B,KAAK,CAAC,IAAI,CAAC,kBAAkB,CAAC,KAAK,EAAE,KAAK,CAAC,CAAC,CAAC;IAC/C,CAAC;IAED,MAAM,OAAO,GAAG,MAAM,OAAO,CAAC,UAAU,CAAC,KAAK,CAAC,CAAC;IAChD,MAAM,GAAG,GAAmB,EAAE,CAAC;IAC/B,KAAK,MAAM,MAAM,IAAI,OAAO,EAAE,CAAC;QAC7B,IAAI,MAAM,CAAC,MAAM,KAAK,WAAW,EAAE,CAAC;YAClC,GAAG,CAAC,IAAI,CAAC,GAAG,MAAM,CAAC,KAAK,CAAC,CAAC;QAC5B,CAAC;IACH,CAAC;IACD,OAAO,GAAG,CAAC;AACb,CAAC;AAEM,KAAK,UAAU,SAAS,CAC7B,KAAa,EACb,KAAa,EACb,QAAoB,EACpB,YAA0B;IAE1B,MAAM,gBAAgB,GAAG,QAAQ,IAAI,YAAY,EAAE,CAAC;IACpD,MAAM,MAAM,GAAG,eAAe,EAAE,CAAC;IAEjC,4EAA4E;IAC5E,MAAM,MAAM,GAAG,gBAAgB,CAAC,MAAM;QACpC,CAAC,CAAC,GAAG,gBAAgB,CAAC,EAAE,IAAI,gBAAgB,CAAC,MAAM,EAAE;QACrD,CAAC,CAAC,gBAAgB,CAAC,EAAE,CAAC;IACxB,MAAM,cAAc,GAAG,GAAG,KAAK,IAAI,MAAM,EAAE,CAAC,IAAI,EAAE,CAAC;IAEnD,MAAM,CAAC,cAAc,EAAE,UAAU,CAAC,GAAG,MAAM,OAAO,CAAC,GAAG,CAAC;QACrD,cAAc,CAAC,KAAK,EAAE,KAAK,EAAE,gBAAgB,EAAE,YAAY,CAAC;QAC5D,MAAM;aACH,MAAM,CAAC,cAAc,EAAE,EAAE,KAAK,EAAE,IAAI,CAAC,GAAG,CAAC,KAAK,EAAE,CAAC,CAAC,EAAE,MAAM,EAAE,YAAY,EAAE,CAAC;aAC3E,KAAK,CAAC,GAAG,EAAE,CAAC,EAAE,CAAC;KACnB,CAAC,CAAC;IAEH,MAAM,oBAAoB,GAAmB,UAAU,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC;QACrE,IAAI,EAAE,MAAe;QACrB,EAAE,EAAE,OAAO,IAAI,CAAC,GAAG,EAAE;QACrB,IAAI,EAAE,IAAI,CAAC,KAAK;QAChB,WAAW,EAAE,IAAI,CAAC,OAAO;QACzB,MAAM,EAAE,KAAc;QACtB,QAAQ,EAAE,KAAK;QACf,MAAM,EAAE,SAAkB;QAC1B,GAAG,EAAE,IAAI,CAAC,GAAG;KACd,CAAC,CAAC,CAAC;IAEJ,OAAO,CAAC,GAAG,cAAc,EAAE,GAAG,oBAAoB,CAAC,CAAC;AACtD,CAAC;AAEM,KAAK,UAAU,sBAAsB,CAC1C,KAA2B,EAC3B,GAAgB;IAEhB,IAAI,GAAG,CAAC,WAAW,EAAE,OAAO;QAAE,OAAO,IAAA,eAAI,EAAC,qBAAqB,CAAC,CAAC;IAEjE,MAAM,KAAK,GAAG,CAAC,KAAK,CAAC,KAAK,IAAI,EAAE,CAAC,CAAC,IAAI,EAAE,CAAC;IACzC,IAAI,CAAC,KAAK;QAAE,OAAO,IAAA,eAAI,EAAC,mBAAmB,CAAC,CAAC;IAE7C,MAAM,KAAK,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,CAAC,GAAG,CAAC,EAAE,EAAE,KAAK,CAAC,KAAK,IAAI,EAAE,CAAC,CAAC,CAAC;IAC3D,+FAA+F;IAC/F,MAAM,OAAO,GAAG,KAAK,CAAC,OAAO,IAAI,CAAC,SAAS,EAAE,OAAO,EAAE,UAAU,CAAC,CAAC;IAClE,MAAM,eAAe,GAAG,OAAO,CAAC,QAAQ,CAAC,SAAS,CAAC,CAAC;IACpD,IAAI,eAAe,IAAI,CAAC,GAAG,CAAC,OAAO,EAAE,CAAC;QACpC,OAAO,IAAA,eAAI,EAAC,0CAA0C,CAAC,CAAC;IAC1D,CAAC;IACD,MAAM,OAAO,GAAmB,EAAE,CAAC;IACnC,IAAI,QAAQ,GAAG,CAAC,CAAC;IAEjB,4EAA4E;IAC5E,MAAM,QAAQ,GAAG,YAAY,EAAE,CAAC;IAEhC,IAAI,CAAC;QACH,0EAA0E;QAC1E,iFAAiF;QACjF,uDAAuD;QACvD,MAAM,KAAK,GAAwC,EAAE,CAAC;QAEtD,4BAA4B;QAC5B,IAAI,eAAe,EAAE,CAAC;YACpB,MAAM,OAAO,GAAG,GAAG,CAAC,OAAO,CAAC;YAC5B,IAAI,CAAC,OAAO,EAAE,CAAC;gBACb,OAAO,IAAA,eAAI,EAAC,0CAA0C,CAAC,CAAC;YAC1D,CAAC;YACD,KAAK,CAAC,IAAI,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,aAAa,CAAC,OAAO,EAAE,KAAK,EAAE,KAAK,EAAE,MAAM,CAAC,CAAC,CAAC;QACvE,CAAC;QAED,2EAA2E;QAC3E,IAAI,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAC,EAAE,CAAC;YAC9B,KAAK,CAAC,IAAI,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,iBAAiB,CAAC,KAAK,EAAE,GAAG,CAAC,UAAU,EAAE,KAAK,EAAE,MAAM,EAAE,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC;QAC3F,CAAC;QAED,+CAA+C;QAC/C,IAAI,OAAO,CAAC,QAAQ,CAAC,UAAU,CAAC,EAAE,CAAC;YACjC,KAAK,CAAC,IAAI,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,qBAAqB,CAAC,KAAK,EAAE,KAAK,EAAE,MAAM,CAAC,CAAC,CAAC;QACtE,CAAC;QAED,uDAAuD;QACvD,IAAI,OAAO,CAAC,QAAQ,CAAC,KAAK,CAAC,EAAE,CAAC;YAC5B,KAAK,CAAC,IAAI,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,SAAS,CAAC,KAAK,EAAE,KAAK,EAAE,QAAQ,EAAE,MAAM,CAAC,CAAC,CAAC;QACpE,CAAC;QAED,sEAAsE;QACtE,qEAAqE;QACrE,kDAAkD;QAClD,uEAAuE;QACvE,MAAM,WAAW,GAAG,KAAK,CAAC;QAC1B,MAAM,QAAQ,GAAG,MAAM,kBAAkB,CAAC,KAAK,EAAE,WAAW,EAAE,GAAG,CAAC,WAAW,CAAC,CAAC;QAC/E,MAAM,OAAO,GAAG,QAAQ,CAAC,OAAO,CAAC;QACjC,QAAQ,GAAG,QAAQ,CAAC,QAAQ,CAAC;QAC7B,KAAK,MAAM,CAAC,IAAI,OAAO,EAAE,CAAC;YACxB,IAAI,CAAC,CAAC,MAAM,KAAK,WAAW;gBAAE,OAAO,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,KAAK,CAAC,CAAC;QACzD,CAAC;IACH,CAAC;IAAC,OAAO,GAAG,EAAE,CAAC;QACb,OAAO,IAAA,eAAI,EAAC,kBAAkB,IAAA,0BAAe,EAAC,GAAG,CAAC,EAAE,CAAC,CAAC;IACxD,CAAC;IAED,MAAM,KAAK,GAAG,IAAA,oCAAkB,EAAC,OAAO,EAAE,KAAK,CAAC,CAAC;IACjD,MAAM,WAAW,GACf,QAAQ,GAAG,CAAC;QACV,CAAC,CAAC,KAAK,QAAQ,UAAU,QAAQ,KAAK,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,GAAG,0CAA0C;QAC5F,CAAC,CAAC,EAAE,CAAC;IACT,MAAM,GAAG,GAAG,SAAS,KAAK,CAAC,MAAM,UAAU,KAAK,CAAC,MAAM,KAAK,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,GAAG,OAAO,QAAQ,CAAC,EAAE,IAAI,QAAQ,CAAC,IAAI,GAAG,WAAW,EAAE,CAAC;IAC5H,OAAO,IAAA,kBAAO,EAAC,GAAG,EAAE,EAAE,OAAO,EAAE,KAAK,EAAE,QAAQ,EAAE,CAAC,CAAC;AACpD,CAAC;AASM,KAAK,UAAU,gBAAgB,CACpC,KAAqB,EACrB,GAAgB;IAEhB,IAAI,GAAG,CAAC,WAAW,EAAE,OAAO;QAAE,OAAO,IAAA,eAAI,EAAC,qBAAqB,CAAC,CAAC;IACjE,IAAI,CAAC,GAAG,CAAC,OAAO;QAAE,OAAO,IAAA,eAAI,EAAC,0CAA0C,CAAC,CAAC;IAC1E,MAAM,OAAO,GAAG,CAAC,KAAK,CAAC,OAAO,IAAI,EAAE,CAAC,CAAC,IAAI,EAAE,CAAC;IAC7C,IAAI,CAAC,OAAO;QAAE,OAAO,IAAA,eAAI,EAAC,qBAAqB,CAAC,CAAC;IACjD,IAAI,CAAC,4CAA4C,CAAC,IAAI,CAAC,OAAO,CAAC,EAAE,CAAC;QAChE,OAAO,IAAA,eAAI,EAAC,qBAAqB,OAAO,GAAG,CAAC,CAAC;IAC/C,CAAC;IAED,IAAI,CAAC;QACH,MAAM,EAAE,MAAM,EAAE,GAAG,MAAM,IAAI,CAAC,GAAG,OAAO,SAAS,EAAE;YACjD,GAAG,EAAE,GAAG,CAAC,UAAU;YACnB,GAAG,EAAE,GAAG,CAAC,GAAG;YACZ,OAAO,EAAE,MAAM;YACf,SAAS,EAAE,IAAI,GAAG,IAAI;SACvB,CAAC,CAAC;QACH,MAAM,KAAK,GAAG,MAAM;aACjB,KAAK,CAAC,IAAI,CAAC;aACX,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC;aAC1B,MAAM,CAAC,OAAO,CAAC,CAAC;QACnB,MAAM,QAAQ,GAAG,KAAK,CAAC,IAAI,EAAE,IAAI,EAAE,IAAI,OAAO,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,CAAE,CAAC;QAChE,MAAM,WAAW,GAAG,KAAK,CAAC,WAAW,EAAE,IAAI,EAAE,IAAI,KAAK,CAAC,CAAC,CAAC,IAAI,aAAa,QAAQ,EAAE,CAAC;QACrF,MAAM,SAAS,GAAG,KAAK,CAAC,KAAK,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QAEhD,MAAM,MAAM,GAAG,MAAM,GAAG,CAAC,OAAO,CAAC,YAAY,CAAC;YAC5C,IAAI,EAAE,QAAQ;YACd,WAAW;YACX,MAAM,EAAE,EAAE,IAAI,EAAE,UAAU,EAAE,GAAG,EAAE,OAAO,OAAO,EAAE,EAAE,MAAM,EAAE,UAAU,EAAE;YACvE,QAAQ,EAAE,KAAK,CAAC,QAAQ,IAAI,OAAO;YACnC,SAAS,EAAE,UAAU;YACrB,UAAU,EAAE;gBACV,IAAI,EAAE,QAAQ;gBACd,UAAU,EAAE;oBACV,IAAI,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,WAAW,EAAE,0BAA0B,OAAO,GAAG,EAAE;iBAC5E;gBACD,oBAAoB,EAAE,IAAI;aAC3B;YACD,gBAAgB,EAAE,QAAQ,OAAO,WAAW;YAC5C,SAAS;YACT,SAAS,EAAE,GAAG,OAAO,MAAM;YAC3B,IAAI,EAAE,CAAC,KAAK,EAAE,SAAS,CAAC;YACxB,UAAU,EAAE,GAAG;YACf,UAAU,EAAE,GAAG;SAChB,CAAC,CAAC;QAEH,MAAM,0BAA0B,CAAC,GAAG,CAAC,CAAC;QAEtC,OAAO,IAAA,kBAAO,EAAC,iBAAiB,QAAQ,GAAG,EAAE,EAAE,MAAM,EAAE,IAAI,EAAE,QAAQ,EAAE,WAAW,EAAE,CAAC,CAAC;IACxF,CAAC;IAAC,OAAO,GAAG,EAAE,CAAC;QACb,OAAO,IAAA,eAAI,EAAC,sBAAsB,IAAA,0BAAe,EAAC,GAAG,CAAC,EAAE,CAAC,CAAC;IAC5D,CAAC;AACH,CAAC;AAWM,KAAK,UAAU,iBAAiB,CACrC,KAAsB,EACtB,GAAgB;IAEhB,IAAI,GAAG,CAAC,WAAW,EAAE,OAAO;QAAE,OAAO,IAAA,eAAI,EAAC,qBAAqB,CAAC,CAAC;IACjE,IAAI,CAAC,GAAG,CAAC,OAAO;QAAE,OAAO,IAAA,eAAI,EAAC,0CAA0C,CAAC,CAAC;IAE1E,IAAI,IAAI,GAAG,KAAK,CAAC,IAAI,EAAE,IAAI,EAAE,CAAC;IAC9B,IAAI,WAAW,GAAG,KAAK,CAAC,WAAW,EAAE,IAAI,EAAE,CAAC;IAC5C,IAAI,OAAO,GAAG,KAAK,CAAC,OAAO,EAAE,IAAI,EAAE,CAAC;IACpC,IAAI,MAAM,GAE2B,EAAE,IAAI,EAAE,MAAM,EAAE,GAAG,EAAE,aAAa,EAAE,CAAC;IAE1E,IAAI,KAAK,CAAC,IAAI,EAAE,CAAC;QACf,IAAI,CAAC;YACH,MAAM,GAAG,GAAG,MAAM,kBAAE,CAAC,QAAQ,CAAC,mBAAI,CAAC,OAAO,CAAC,GAAG,CAAC,UAAU,EAAE,KAAK,CAAC,IAAI,CAAC,EAAE,OAAO,CAAC,CAAC;YACjF,MAAM,MAAM,GAAG,gBAAgB,CAAC,GAAG,CAAC,CAAC;YACrC,IAAI;gBACF,IAAI;oBACJ,CAAC,OAAO,MAAM,CAAC,WAAW,CAAC,IAAI,KAAK,QAAQ,CAAC,CAAC,CAAC,MAAM,CAAC,WAAW,CAAC,IAAI,CAAC,CAAC,CAAC,SAAS,CAAC;oBACnF,mBAAI,CAAC,QAAQ,CAAC,mBAAI,CAAC,OAAO,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC;YAC1C,WAAW;gBACT,WAAW;oBACX,CAAC,OAAO,MAAM,CAAC,WAAW,CAAC,WAAW,KAAK,QAAQ;wBACjD,CAAC,CAAC,MAAM,CAAC,WAAW,CAAC,WAAW;wBAChC,CAAC,CAAC,SAAS,CAAC;oBACd,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC;YAC7B,OAAO,GAAG,OAAO,IAAI,MAAM,CAAC,IAAI,CAAC;YACjC,MAAM,GAAG;gBACP,IAAI,EAAE,MAAM;gBACZ,IAAI,EAAE,mBAAI,CAAC,OAAO,CAAC,GAAG,CAAC,UAAU,EAAE,KAAK,CAAC,IAAI,CAAC;gBAC9C,MAAM,EAAE,YAAY;aACrB,CAAC;QACJ,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACb,OAAO,IAAA,eAAI,EAAC,8BAA8B,IAAA,0BAAe,EAAC,GAAG,CAAC,EAAE,CAAC,CAAC;QACpE,CAAC;IACH,CAAC;IAED,IAAI,CAAC,IAAI;QAAE,OAAO,IAAA,eAAI,EAAC,0DAA0D,CAAC,CAAC;IACnF,IAAI,CAAC,OAAO;QAAE,OAAO,IAAA,eAAI,EAAC,uCAAuC,CAAC,CAAC;IAEnE,IAAI,CAAC;QACH,MAAM,OAAO,GAAG,MAAM,GAAG,CAAC,OAAO,CAAC,aAAa,CAAC;YAC9C,IAAI;YACJ,WAAW,EAAE,WAAW,IAAI,kBAAkB,IAAI,EAAE;YACpD,OAAO;YACP,MAAM;YACN,OAAO,EAAE,KAAK,CAAC,OAAO,IAAI,EAAE;YAC5B,IAAI,EAAE,KAAK,CAAC,IAAI,IAAI,EAAE;YACtB,UAAU,EAAE,IAAI;YAChB,UAAU,EAAE,GAAG;SAChB,CAAC,CAAC;QACH,OAAO,IAAA,kBAAO,EAAC,kBAAkB,IAAI,GAAG,EAAE,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC,CAAC;IAC/D,CAAC;IAAC,OAAO,GAAG,EAAE,CAAC;QACb,OAAO,IAAA,eAAI,EAAC,uBAAuB,IAAA,0BAAe,EAAC,GAAG,CAAC,EAAE,CAAC,CAAC;IAC7D,CAAC;AACH,CAAC;AAQM,KAAK,UAAU,kBAAkB,CACtC,KAAuB,EACvB,GAAgB;IAEhB,wCAAwC;IACxC,IAAI,KAAK,EAAE,OAAO,IAAI,CAAC,KAAK,EAAE,MAAM,EAAE,CAAC;QACrC,OAAO,IAAA,2BAAe,EAAC,EAAE,OAAO,EAAE,KAAK,CAAC,OAAO,EAAE,EAAE,GAAG,CAAC,CAAC;IAC1D,CAAC;IACD,IAAI,CAAC,KAAK,EAAE,MAAM;QAAE,OAAO,IAAA,eAAI,EAAC,+BAA+B,CAAC,CAAC;IACjE,IAAI,KAAK,CAAC,MAAM,CAAC,IAAI,KAAK,KAAK,EAAE,CAAC;QAChC,OAAO,gBAAgB,CAAC,EAAE,OAAO,EAAE,KAAK,CAAC,MAAM,CAAC,OAAO,EAAE,EAAE,GAAG,CAAC,CAAC;IAClE,CAAC;IACD,IAAI,KAAK,CAAC,MAAM,CAAC,IAAI,KAAK,MAAM,EAAE,CAAC;QACjC,OAAO,iBAAiB,CAAC,EAAE,IAAI,EAAE,KAAK,CAAC,MAAM,CAAC,IAAI,EAAE,EAAE,GAAG,CAAC,CAAC;IAC7D,CAAC;IACD,OAAO,IAAA,eAAI,EAAC,4BAA6B,KAAsC,CAAC,MAAM,CAAC,IAAI,EAAE,CAAC,CAAC;AACjG,CAAC;AAWM,KAAK,UAAU,iBAAiB,CACrC,KAAsB,EACtB,GAAgB;IAEhB,IAAI,GAAG,CAAC,WAAW,EAAE,OAAO;QAAE,OAAO,IAAA,eAAI,EAAC,qBAAqB,CAAC,CAAC;IACjE,IAAI,CAAC,GAAG,CAAC,OAAO;QAAE,OAAO,IAAA,eAAI,EAAC,0CAA0C,CAAC,CAAC;IAE1E,MAAM,IAAI,GAAG,CAAC,KAAK,CAAC,IAAI,IAAI,EAAE,CAAC,CAAC,IAAI,EAAE,CAAC;IACvC,MAAM,WAAW,GAAG,CAAC,KAAK,CAAC,WAAW,IAAI,EAAE,CAAC,CAAC,IAAI,EAAE,CAAC;IACrD,IAAI,CAAC,IAAI;QAAE,OAAO,IAAA,eAAI,EAAC,kBAAkB,CAAC,CAAC;IAC3C,IAAI,CAAC,WAAW;QAAE,OAAO,IAAA,eAAI,EAAC,yBAAyB,CAAC,CAAC;IACzD,IAAI,CAAC,KAAK,CAAC,OAAO,IAAI,CAAC,KAAK,CAAC,MAAM;QAAE,OAAO,IAAA,eAAI,EAAC,kCAAkC,CAAC,CAAC;IAErF,IAAI,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,EAAE,CAAC;QACzB,OAAO,IAAA,eAAI,EAAC,uBAAuB,IAAI,kCAAkC,CAAC,CAAC;IAC7E,CAAC;IAED,IAAI,QAAQ,GAAG,IAAI,CAAC,OAAO,CAAC,iBAAiB,EAAE,GAAG,CAAC,CAAC;IAEpD,+DAA+D;IAC/D,QAAQ,GAAG,QAAQ,CAAC,OAAO,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC;IAEvC,iEAAiE;IACjE,IAAI,CAAC,QAAQ,EAAE,CAAC;QACd,OAAO,IAAA,eAAI,EAAC,uBAAuB,IAAI,oDAAoD,CAAC,CAAC;IAC/F,CAAC;IAED,wEAAwE;IACxE,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC,QAAQ,CAAC,EAAE,CAAC;QAClC,OAAO,IAAA,eAAI,EAAC,uBAAuB,IAAI,+CAA+C,CAAC,CAAC;IAC1F,CAAC;IAED,IAAI,CAAC;QACH,MAAM,aAAa,GAAG,MAAM,GAAG,CAAC,OAAO,CAAC,WAAW,CAAC;YAClD,KAAK,EAAE,EAAE;YACT,QAAQ,EAAE,IAAI;YACd,KAAK,EAAE,iBAAiB,GAAG,CAAC;YAC5B,iBAAiB,EAAE,KAAK;SACzB,CAAC,CAAC;QACH,IAAI,aAAa,CAAC,MAAM,IAAI,iBAAiB,EAAE,CAAC;YAC9C,OAAO,IAAA,eAAI,EACT,uBAAuB,iBAAiB,+DAA+D,CACxG,CAAC;QACJ,CAAC;IACH,CAAC;IAAC,OAAO,GAAG,EAAE,CAAC;QACb,OAAO,IAAA,eAAI,EAAC,iCAAiC,IAAA,0BAAe,EAAC,GAAG,CAAC,EAAE,CAAC,CAAC;IACvE,CAAC;IAED,MAAM,OAAO,GAAG,mBAAI,CAAC,OAAO,CAAC,iBAAE,CAAC,OAAO,EAAE,EAAE,OAAO,EAAE,OAAO,CAAC,CAAC;IAC7D,MAAM,UAAU,GAAG,mBAAI,CAAC,OAAO,CAAC,OAAO,EAAE,GAAG,QAAQ,KAAK,CAAC,CAAC;IAC3D,IAAI,mBAAI,CAAC,OAAO,CAAC,UAAU,CAAC,KAAK,OAAO,EAAE,CAAC;QACzC,OAAO,IAAA,eAAI,EAAC,uBAAuB,IAAI,kCAAkC,CAAC,CAAC;IAC7E,CAAC;IAED,IAAI,CAAC;QACH,MAAM,kBAAE,CAAC,KAAK,CAAC,OAAO,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;QAC7C,MAAM,IAAI,GAAG,KAAK,CAAC,MAAM,IAAI,KAAK,CAAC,MAAM,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,GAAG,KAAK,CAAC,OAAO,OAAO,CAAC;QAC1F,gFAAgF;QAChF,MAAM,UAAU,GAAG,IAAI,CAAC,SAAS,EAAE,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC;QACrD,MAAM,aAAa,GAAG,UAAU;YAC9B,CAAC,CAAC,GAAG,IAAI,IAAI;YACb,CAAC,CAAC,2CAA2C,IAAI,IAAI,CAAC;QACxD,MAAM,kBAAE,CAAC,SAAS,CAAC,UAAU,EAAE,aAAa,EAAE,OAAO,CAAC,CAAC;QACvD,MAAM,kBAAE,CAAC,KAAK,CAAC,UAAU,EAAE,KAAK,CAAC,CAAC;QAElC,iDAAiD;QACjD,IAAI,SAAS,GAAsC,WAAW,CAAC,CAAC,8CAA8C;QAC9G,MAAM,YAAY,GAAa,EAAE,CAAC;QAClC,IAAI,GAAG,CAAC,MAAM,IAAI,OAAO,GAAG,CAAC,MAAM,CAAC,IAAI,KAAK,UAAU,EAAE,CAAC;YACxD,IAAI,CAAC;gBACH,MAAM,cAAc,GAAG,MAAM,GAAG,CAAC,MAAM,CAAC,IAAI,CAAC;oBAC3C,QAAQ,EAAE;wBACR;4BACE,IAAI,EAAE,QAAQ;4BACd,OAAO,EACL,wPAAwP;yBAC3P;wBACD;4BACE,IAAI,EAAE,MAAM;4BACZ,OAAO,EAAE;;eAER,IAAI;oBACC,WAAW;;;EAG7B,aAAa;;;;;;;;;;;;;;;;;;;4EAmB6D,WAAW;;;;;wFAKC;yBAC3E;qBACF;oBACD,IAAI,EAAE,MAAM;iBACb,CAAC,CAAC;gBACH,0EAA0E;gBAC1E,MAAM,YAAY,GAAG,IAAA,kCAAa,EAAC,cAAc,CAAC,OAAO,EAAE,sBAAsB,CAAC,CAAC;gBACnF,IAAI,YAAY,CAAC,EAAE,EAAE,CAAC;oBACpB,MAAM,gBAAgB,GAAG,CAAC,YAAY,CAAC,IAAI,CAAC,MAAM,IAAI,EAAE,CAAC;yBACtD,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,IAAI,EAAE,CAAC;yBAC5B,MAAM,CAAC,OAAO,CAAC,CAAC;oBACnB,YAAY,CAAC,IAAI,CAAC,GAAG,gBAAgB,CAAC,CAAC;oBACvC,IAAI,YAAY,CAAC,IAAI,CAAC,IAAI,KAAK,IAAI,IAAI,gBAAgB,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;wBACrE,SAAS,GAAG,UAAU,CAAC;oBACzB,CAAC;gBACH,CAAC;qBAAM,CAAC;oBACN,YAAY,CAAC,IAAI,CAAC,oCAAoC,YAAY,CAAC,MAAM,GAAG,CAAC,CAAC;gBAChF,CAAC;YACH,CAAC;YAAC,MAAM,CAAC;gBACP,sDAAsD;gBACtD,YAAY,CAAC,IAAI,CAAC,mCAAmC,CAAC,CAAC;YACzD,CAAC;QACH,CAAC;QAED,MAAM,YAAY,GAAG,CAAC,GAAG,IAAI,GAAG,CAAC,YAAY,CAAC,CAAC,CAAC;QAChD,MAAM,QAAQ,GACZ,YAAY,CAAC,MAAM,GAAG,CAAC;YACrB,CAAC,CAAC,YAAY,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC;gBAC3B,SAAS,EAAE,IAAI,IAAI,EAAE;gBACrB,KAAK,EAAE,KAAK;gBACZ,KAAK,EAAE,EAAE,QAAQ,EAAE,IAAI,EAAE;aAC1B,CAAC,CAAC;YACL,CAAC,CAAC,SAAS,CAAC;QAEhB,MAAM,MAAM,GAAG,MAAM,GAAG,CAAC,OAAO,CAAC,YAAY,CAAC;YAC5C,IAAI;YACJ,WAAW;YACX,MAAM,EAAE,EAAE,IAAI,EAAE,UAAU,EAAE,GAAG,EAAE,QAAQ,UAAU,EAAE,EAAE,MAAM,EAAE,UAAU,EAAE;YAC3E,QAAQ,EAAE,OAAO;YACjB,SAAS;YACT,GAAG,CAAC,QAAQ,CAAC,CAAC,CAAC,EAAE,QAAQ,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;YACjC,UAAU,EAAE;gBACV,IAAI,EAAE,QAAQ;gBACd,UAAU,EAAE;oBACV,IAAI,EAAE;wBACJ,IAAI,EAAE,QAAQ;wBACd,WAAW,EAAE,uBAAuB,UAAU,EAAE;qBACjD;oBACD,GAAG,CAAC,KAAK,CAAC,UAAU,CAAC,CAAC,CAAC,EAAE,MAAM,EAAE,KAAK,CAAC,UAAU,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;iBAC1D;gBACD,oBAAoB,EAAE,IAAI;aAC3B;YACD,gBAAgB,EAAE,QAAQ,UAAU,WAAW;YAC/C,SAAS,EAAE,WAAW;YACtB,SAAS,EAAE,GAAG,UAAU,MAAM;YAC9B,IAAI,EAAE,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,IAAI,EAAE,CAAC,EAAE,SAAS,CAAC;YACxC,UAAU,EAAE,GAAG;YACf,UAAU,EAAE,GAAG;SAChB,CAAC,CAAC;QAEH,MAAM,0BAA0B,CAAC,GAAG,CAAC,CAAC;QAEtC,OAAO,IAAA,kBAAO,EAAC,iBAAiB,IAAI,GAAG,EAAE,EAAE,MAAM,EAAE,UAAU,EAAE,CAAC,CAAC;IACnE,CAAC;IAAC,OAAO,GAAG,EAAE,CAAC;QACb,OAAO,IAAA,eAAI,EAAC,uBAAuB,IAAA,0BAAe,EAAC,GAAG,CAAC,EAAE,CAAC,CAAC;IAC7D,CAAC;AACH,CAAC;AAWM,KAAK,UAAU,kBAAkB,CACtC,KAAuB,EACvB,GAAgB;IAEhB,IAAI,GAAG,CAAC,WAAW,EAAE,OAAO;QAAE,OAAO,IAAA,eAAI,EAAC,qBAAqB,CAAC,CAAC;IACjE,IAAI,CAAC,GAAG,CAAC,OAAO;QAAE,OAAO,IAAA,eAAI,EAAC,0CAA0C,CAAC,CAAC;IAE1E,MAAM,IAAI,GAAG,CAAC,KAAK,CAAC,IAAI,IAAI,EAAE,CAAC,CAAC,IAAI,EAAE,CAAC;IACvC,IAAI,CAAC,IAAI;QAAE,OAAO,IAAA,eAAI,EAAC,kBAAkB,CAAC,CAAC;IAC3C,IAAI,CAAC,CAAC,KAAK,CAAC,OAAO,IAAI,EAAE,CAAC,CAAC,IAAI,EAAE;QAAE,OAAO,IAAA,eAAI,EAAC,qBAAqB,CAAC,CAAC;IAEtE,IAAI,CAAC;QACH,MAAM,OAAO,GAAG,MAAM,GAAG,CAAC,OAAO,CAAC,aAAa,CAAC;YAC9C,IAAI;YACJ,WAAW,EAAE,KAAK,CAAC,WAAW,IAAI,UAAU,IAAI,EAAE;YAClD,OAAO,EAAE,KAAK,CAAC,OAAO;YACtB,MAAM,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE,GAAG,EAAE,cAAc,EAAE;YAC7C,IAAI,EAAE,KAAK,CAAC,IAAI,IAAI,EAAE;YACtB,OAAO,EAAE,KAAK,CAAC,OAAO,IAAI,EAAE;YAC5B,UAAU,EAAE,IAAI;YAChB,UAAU,EAAE,GAAG;SAChB,CAAC,CAAC;QAEH,IAAI,GAAG,CAAC,OAAO,EAAE,YAAY,IAAI,GAAG,CAAC,KAAK,EAAE,IAAI,EAAE,CAAC;YACjD,MAAM,GAAG,CAAC,OAAO,CAAC,YAAY,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,EAAE;gBAC7C,SAAS,EAAE;oBACT;wBACE,IAAI;wBACJ,KAAK,EAAE,KAAK,CAAC,KAAK,IAAI,cAAc;wBACpC,WAAW,EAAE,KAAK,CAAC,WAAW;wBAC9B,OAAO;qBACR;iBACF;aACF,CAAC,CAAC;QACL,CAAC;QAED,6EAA6E;QAC7E,iFAAiF;QACjF,IAAI,GAAG,CAAC,OAAO,IAAI,GAAG,CAAC,cAAc,EAAE,CAAC;YACtC,IAAI,CAAC;gBACH,MAAM,SAAS,GAAG,GAAG,CAAC,cAAc,CAAC,MAAM,EAAE,CAAC;gBAC9C,MAAM,aAAa,GAAG,SAAS,CAAC,gBAAgB,IAAI,EAAE,CAAC;gBACvD,MAAM,WAAW,GAAG,2BAA2B,CAAC,aAAa,CAAC,CAAC;gBAC/D,MAAM,kBAAkB,GAAG,+BAAY,CAAC,SAAS,CAAC,SAAS,CAAC,MAAM,EAAE,IAAI,EAAE,CAAC,CAAC;gBAC5E,IAAI,CAAC,kBAAkB,CAAC,OAAO,IAAI,CAAC,WAAW,EAAE,CAAC;oBAChD,OAAO,IAAA,kBAAO,EAAC,kBAAkB,IAAI,GAAG,EAAE,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC,CAAC;gBAC/D,CAAC;gBACD,MAAM,YAAY,GAAG,kBAAkB,CAAC,IAAI,CAAC;gBAC7C,MAAM,iBAAiB,GAAG,GAAG,CAAC,KAAK,EAAE,IAAI,IAAI,SAAS,CAAC,MAAM,EAAE,IAAI,EAAE,IAAI,YAAY,CAAC;gBAEtF,kFAAkF;gBAClF,MAAM,UAAU,GAAG;oBACjB,OAAO;oBACP,IAAI;oBACJ,SAAS,EAAE,KAAK,CAAC,OAAO;oBACxB,QAAQ,EAAE,KAAK,CAAC,IAAI,IAAI,EAAE;oBAC1B,UAAU,EAAE,KAAK,CAAC,IAAI,IAAI,EAAE;oBAC5B,YAAY;oBACZ,iBAAiB;oBACjB,iBAAiB,EAAE,WAAW;oBAC9B,UAAU,EAAE,GAAG;oBACf,cAAc,EAAE,CAAC;oBACjB,WAAW,EAAE,CAAC;oBACd,SAAS,EAAE,IAAI,CAAC,GAAG,EAAE;iBACtB,CAAC;gBAEF,2EAA2E;gBAC3E,MAAM,KAAK,GAAG,GAAG,CAAC,cAAc,CAAC,SAAS,EAAE,CAAC;gBAC7C,KAAK,MAAM,IAAI,IAAI,KAAK,EAAE,CAAC;oBACzB,IAAI,IAAI,CAAC,MAAM,KAAK,QAAQ;wBAAE,SAAS;oBACvC,MAAM,oBAAoB,GAAG,IAAI,CAAC,mBAAmB,IAAI,IAAI,CAAC,MAAM,CAAC;oBACrE,GAAG,CAAC,OAAO;yBACR,cAAc,CAAC;wBACd,EAAE,EAAE,OAAO,qBAAM,CAAC,UAAU,EAAE,EAAE;wBAChC,OAAO,EAAE,CAAC;wBACV,MAAM,EAAE,EAAE,EAAE,EAAE,YAAY,EAAE,IAAI,EAAE,iBAAiB,EAAE,IAAI,EAAE,QAAQ,EAAE;wBACrE,SAAS,EAAE,EAAE,EAAE,EAAE,IAAI,CAAC,MAAM,EAAE,IAAI,EAAE,oBAAoB,EAAE;wBAC1D,IAAI,EAAE,OAAO;wBACb,OAAO,EAAE,IAAI,CAAC,SAAS,CAAC;4BACtB,GAAG,UAAU;4BACb,kEAAkE;4BAClE,oEAAoE;4BACpE,4EAA4E;4BAC5E,OAAO,EAAE,eAAe,qBAAM,CAAC,UAAU,EAAE,EAAE;4BAC7C,IAAI,EAAE,+CAA+C,IAAI,eAAe,iBAAiB,EAAE;4BAC3F,cAAc,EAAE,QAAQ;yBACzB,CAAC;wBACF,QAAQ,EAAE,EAAE,UAAU,EAAE,IAAI,EAAE,cAAc,EAAE,QAAQ,EAAE;wBACxD,SAAS,EAAE,IAAI,CAAC,GAAG,EAAE;wBACrB,2EAA2E;wBAC3E,mFAAmF;wBACnF,oFAAoF;wBACpF,QAAQ,EAAE,CAAC;qBACZ,CAAC;yBACD,KAAK,CAAC,GAAG,EAAE;wBACV,yDAAyD;oBAC3D,CAAC,CAAC,CAAC;gBACP,CAAC;YACH,CAAC;YAAC,MAAM,CAAC;gBACP,4DAA4D;YAC9D,CAAC;QACH,CAAC;QAED,OAAO,IAAA,kBAAO,EAAC,kBAAkB,IAAI,GAAG,EAAE,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC,CAAC;IAC/D,CAAC;IAAC,OAAO,GAAG,EAAE,CAAC;QACb,OAAO,IAAA,eAAI,EAAC,wBAAwB,IAAA,0BAAe,EAAC,GAAG,CAAC,EAAE,CAAC,CAAC;IAC9D,CAAC;AACH,CAAC;AAUM,KAAK,UAAU,eAAe,CAAC,KAAoB,EAAE,GAAgB;IAC1E,IAAI,GAAG,CAAC,WAAW,EAAE,OAAO;QAAE,OAAO,IAAA,eAAI,EAAC,qBAAqB,CAAC,CAAC;IACjE,IAAI,CAAC,GAAG,CAAC,OAAO;QAAE,OAAO,IAAA,eAAI,EAAC,0CAA0C,CAAC,CAAC;IAC1E,MAAM,UAAU,GAAG,CAAC,KAAK,CAAC,OAAO,IAAI,KAAK,CAAC,IAAI,IAAI,EAAE,CAAC,CAAC,IAAI,EAAE,CAAC;IAC9D,IAAI,CAAC,UAAU;QAAE,OAAO,IAAA,eAAI,EAAC,6BAA6B,CAAC,CAAC;IAE5D,IAAI,CAAC;QACH,MAAM,KAAK,GAAG,MAAM,GAAG,CAAC,OAAO,CAAC,QAAQ,CAAC,UAAU,CAAC,CAAC;QACrD,IAAI,CAAC,KAAK;YAAE,OAAO,IAAA,eAAI,EAAC,oBAAoB,UAAU,EAAE,CAAC,CAAC;QAE1D,IAAI,CAAC;YACH,MAAM,GAAG,CAAC,OAAO,CAAC,oBAAoB,CAAC;gBACrC,OAAO,EAAE,KAAK,CAAC,EAAE;gBACjB,OAAO,EAAE,KAAK,CAAC,OAAO,IAAI,IAAI;gBAC9B,UAAU,EAAE,KAAK,CAAC,UAAU;gBAC5B,KAAK,EAAE,KAAK,CAAC,KAAK;aACnB,CAAC,CAAC;QACL,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACb,OAAO,IAAA,kBAAO,EAAC,iBAAiB,KAAK,CAAC,IAAI,mCAAmC,EAAE;gBAC7E,KAAK;gBACL,OAAO,EAAE,IAAA,0BAAe,EAAC,GAAG,CAAC;aAC9B,CAAC,CAAC;QACL,CAAC;QAED,OAAO,IAAA,kBAAO,EAAC,iBAAiB,KAAK,CAAC,IAAI,GAAG,EAAE,EAAE,KAAK,EAAE,CAAC,CAAC;IAC5D,CAAC;IAAC,OAAO,GAAG,EAAE,CAAC;QACb,OAAO,IAAA,eAAI,EAAC,qBAAqB,IAAA,0BAAe,EAAC,GAAG,CAAC,EAAE,CAAC,CAAC;IAC3D,CAAC;AACH,CAAC"}
@@ -1,311 +0,0 @@
1
- "use strict";
2
- /**
3
- * Native LSP Client — uses vscode-jsonrpc for proper message framing.
4
- *
5
- * Same approach as Claude Code: createMessageConnection over stdio.
6
- * Same configuration as Claude Code's LSP plugins.
7
- * Supports: TypeScript, Python, Go, Rust, C/C++, Swift, Java, Kotlin, Lua, PHP, Ruby, C#.
8
- */
9
- Object.defineProperty(exports, "__esModule", { value: true });
10
- exports.LspServer = exports.LSP_SERVERS = void 0;
11
- exports.getServerForFile = getServerForFile;
12
- exports.getLanguageId = getLanguageId;
13
- exports.getOrCreateServer = getOrCreateServer;
14
- exports.shutdownAll = shutdownAll;
15
- const node_child_process_1 = require("node:child_process");
16
- const node_fs_1 = require("node:fs");
17
- const node_path_1 = require("node:path");
18
- const node_url_1 = require("node:url");
19
- const node_module_1 = require("node:module");
20
- let vscodeJsonrpc;
21
- // ESM module path for createRequire
22
- const __esmFilePath = (0, node_url_1.fileURLToPath)(import.meta.url);
23
- function getJsonRpc() {
24
- if (!vscodeJsonrpc) {
25
- vscodeJsonrpc = (0, node_module_1.createRequire)(__esmFilePath)("vscode-jsonrpc/node");
26
- }
27
- return vscodeJsonrpc;
28
- }
29
- exports.LSP_SERVERS = {
30
- typescript: {
31
- command: "typescript-language-server",
32
- args: ["--stdio"],
33
- extensionToLanguage: {
34
- ".ts": "typescript",
35
- ".tsx": "typescriptreact",
36
- ".js": "javascript",
37
- ".jsx": "javascriptreact",
38
- ".mts": "typescript",
39
- ".cts": "typescript",
40
- ".mjs": "javascript",
41
- ".cjs": "javascript",
42
- },
43
- startupTimeout: 30_000,
44
- },
45
- python: {
46
- command: "pyright-langserver",
47
- args: ["--stdio"],
48
- extensionToLanguage: { ".py": "python", ".pyi": "python" },
49
- startupTimeout: 60_000,
50
- },
51
- go: {
52
- command: "gopls",
53
- args: [],
54
- extensionToLanguage: { ".go": "go" },
55
- startupTimeout: 30_000,
56
- },
57
- rust: {
58
- command: "rust-analyzer",
59
- args: [],
60
- extensionToLanguage: { ".rs": "rust" },
61
- startupTimeout: 60_000,
62
- },
63
- "c/cpp": {
64
- command: "clangd",
65
- args: ["--background-index"],
66
- extensionToLanguage: {
67
- ".c": "c",
68
- ".h": "c",
69
- ".cpp": "cpp",
70
- ".cc": "cpp",
71
- ".cxx": "cpp",
72
- ".hpp": "cpp",
73
- ".hxx": "cpp",
74
- },
75
- startupTimeout: 30_000,
76
- },
77
- swift: {
78
- command: "sourcekit-lsp",
79
- args: [],
80
- extensionToLanguage: { ".swift": "swift" },
81
- startupTimeout: 30_000,
82
- },
83
- java: {
84
- command: "jdtls",
85
- args: [],
86
- extensionToLanguage: { ".java": "java" },
87
- startupTimeout: 120_000,
88
- },
89
- kotlin: {
90
- command: "kotlin-language-server",
91
- args: ["--stdio"],
92
- extensionToLanguage: { ".kt": "kotlin", ".kts": "kotlin" },
93
- startupTimeout: 120_000,
94
- },
95
- lua: {
96
- command: "lua-language-server",
97
- args: [],
98
- extensionToLanguage: { ".lua": "lua" },
99
- startupTimeout: 30_000,
100
- },
101
- php: {
102
- command: "intelephense",
103
- args: ["--stdio"],
104
- extensionToLanguage: { ".php": "php" },
105
- startupTimeout: 30_000,
106
- },
107
- ruby: {
108
- command: "ruby-lsp",
109
- args: [],
110
- extensionToLanguage: { ".rb": "ruby", ".rake": "ruby", ".gemspec": "ruby" },
111
- startupTimeout: 30_000,
112
- },
113
- csharp: {
114
- command: "csharp-ls",
115
- args: [],
116
- extensionToLanguage: { ".cs": "csharp" },
117
- startupTimeout: 30_000,
118
- },
119
- };
120
- // Build reverse lookup: file extension → server name
121
- const EXT_TO_SERVER = new Map();
122
- for (const [serverName, config] of Object.entries(exports.LSP_SERVERS)) {
123
- for (const ext of Object.keys(config.extensionToLanguage)) {
124
- EXT_TO_SERVER.set(ext, serverName);
125
- }
126
- }
127
- function getServerForFile(filePath) {
128
- const ext = filePath.slice(filePath.lastIndexOf("."));
129
- return EXT_TO_SERVER.get(ext);
130
- }
131
- function getLanguageId(filePath) {
132
- const ext = filePath.slice(filePath.lastIndexOf("."));
133
- const serverName = EXT_TO_SERVER.get(ext);
134
- if (!serverName)
135
- return undefined;
136
- return exports.LSP_SERVERS[serverName]?.extensionToLanguage[ext];
137
- }
138
- // ---------------------------------------------------------------------------
139
- // LSP Server Instance — uses vscode-jsonrpc createMessageConnection
140
- // ---------------------------------------------------------------------------
141
- class LspServer {
142
- process = null;
143
- connection = null;
144
- initialized = false;
145
- openFiles = new Set();
146
- diagnosticsReceived = new Set();
147
- serverName;
148
- config;
149
- rootUri;
150
- constructor(serverName, rootPath) {
151
- this.serverName = serverName;
152
- const cfg = exports.LSP_SERVERS[serverName];
153
- if (!cfg)
154
- throw new Error(`Unknown LSP server: ${serverName}`);
155
- this.config = cfg;
156
- this.rootUri = `file://${(0, node_path_1.resolve)(rootPath)}`;
157
- }
158
- async start() {
159
- if (this.connection)
160
- return;
161
- this.process = (0, node_child_process_1.spawn)(this.config.command, this.config.args, {
162
- stdio: ["pipe", "pipe", "pipe"],
163
- });
164
- this.process.stderr?.on("data", () => {
165
- // Swallow stderr — language servers are noisy
166
- });
167
- this.process.on("exit", () => {
168
- this.connection?.dispose();
169
- this.connection = null;
170
- this.process = null;
171
- this.initialized = false;
172
- this.openFiles.clear();
173
- this.diagnosticsReceived.clear();
174
- });
175
- // Create vscode-jsonrpc connection — handles Content-Length framing,
176
- // request/response matching, notification routing. Same as Claude Code.
177
- const jsonrpc = getJsonRpc();
178
- this.connection = jsonrpc.createMessageConnection(new jsonrpc.StreamMessageReader(this.process.stdout), new jsonrpc.StreamMessageWriter(this.process.stdin));
179
- // Listen for diagnostics notifications (signals file analysis complete)
180
- this.connection.onNotification("textDocument/publishDiagnostics", (params) => {
181
- const p = params;
182
- if (p.uri)
183
- this.diagnosticsReceived.add(p.uri);
184
- });
185
- this.connection.listen();
186
- // Initialize handshake
187
- await this.connection.sendRequest("initialize", {
188
- processId: globalThis.process.pid,
189
- rootUri: this.rootUri,
190
- capabilities: {
191
- textDocument: {
192
- definition: { dynamicRegistration: false },
193
- references: { dynamicRegistration: false },
194
- hover: { dynamicRegistration: false, contentFormat: ["plaintext", "markdown"] },
195
- documentSymbol: { dynamicRegistration: false },
196
- rename: { dynamicRegistration: false, prepareSupport: false },
197
- publishDiagnostics: { relatedInformation: true },
198
- },
199
- workspace: {
200
- workspaceFolders: true,
201
- },
202
- },
203
- workspaceFolders: [{ uri: this.rootUri, name: "root" }],
204
- });
205
- this.connection.sendNotification("initialized", {});
206
- this.initialized = true;
207
- }
208
- async stop() {
209
- if (!this.connection)
210
- return;
211
- try {
212
- await this.connection.sendRequest("shutdown");
213
- this.connection.sendNotification("exit");
214
- }
215
- catch {
216
- // Force kill if graceful shutdown fails
217
- }
218
- this.connection.dispose();
219
- this.connection = null;
220
- this.process?.kill("SIGTERM");
221
- this.process = null;
222
- this.initialized = false;
223
- }
224
- // Ensure a file is opened in the language server
225
- async openFile(filePath) {
226
- const uri = `file://${(0, node_path_1.resolve)(filePath)}`;
227
- if (this.openFiles.has(uri))
228
- return;
229
- const languageId = getLanguageId(filePath);
230
- if (!languageId)
231
- return;
232
- let text;
233
- try {
234
- text = (0, node_fs_1.readFileSync)((0, node_path_1.resolve)(filePath), "utf-8");
235
- }
236
- catch {
237
- return;
238
- }
239
- this.connection?.sendNotification("textDocument/didOpen", {
240
- textDocument: { uri, languageId, version: 1, text },
241
- });
242
- this.openFiles.add(uri);
243
- // No wait needed. LSP servers queue requests after didOpen and respond
244
- // when ready. Tested: TypeScript responds to hover in 239ms with zero
245
- // wait (before diagnostics arrive). Pyright responds after its analysis.
246
- // The sendRequest in the caller will block until the server responds.
247
- }
248
- // --- LSP Operations ---
249
- async definition(filePath, line, character) {
250
- await this.ensureReady(filePath);
251
- return this.connection.sendRequest("textDocument/definition", {
252
- textDocument: { uri: `file://${(0, node_path_1.resolve)(filePath)}` },
253
- position: { line, character },
254
- });
255
- }
256
- async references(filePath, line, character) {
257
- await this.ensureReady(filePath);
258
- return this.connection.sendRequest("textDocument/references", {
259
- textDocument: { uri: `file://${(0, node_path_1.resolve)(filePath)}` },
260
- position: { line, character },
261
- context: { includeDeclaration: true },
262
- });
263
- }
264
- async hover(filePath, line, character) {
265
- await this.ensureReady(filePath);
266
- return this.connection.sendRequest("textDocument/hover", {
267
- textDocument: { uri: `file://${(0, node_path_1.resolve)(filePath)}` },
268
- position: { line, character },
269
- });
270
- }
271
- async documentSymbols(filePath) {
272
- await this.ensureReady(filePath);
273
- return this.connection.sendRequest("textDocument/documentSymbol", {
274
- textDocument: { uri: `file://${(0, node_path_1.resolve)(filePath)}` },
275
- });
276
- }
277
- async rename(filePath, line, character, newName) {
278
- await this.ensureReady(filePath);
279
- return this.connection.sendRequest("textDocument/rename", {
280
- textDocument: { uri: `file://${(0, node_path_1.resolve)(filePath)}` },
281
- position: { line, character },
282
- newName,
283
- });
284
- }
285
- // --- Internals ---
286
- async ensureReady(filePath) {
287
- if (!this.initialized)
288
- await this.start();
289
- await this.openFile(filePath);
290
- }
291
- }
292
- exports.LspServer = LspServer;
293
- // ---------------------------------------------------------------------------
294
- // Server Pool — one server per language, shared across queries
295
- // ---------------------------------------------------------------------------
296
- const serverPool = new Map();
297
- function getOrCreateServer(serverName, rootPath) {
298
- const key = `${serverName}:${rootPath}`;
299
- let server = serverPool.get(key);
300
- if (!server) {
301
- server = new LspServer(serverName, rootPath);
302
- serverPool.set(key, server);
303
- }
304
- return server;
305
- }
306
- async function shutdownAll() {
307
- const stops = [...serverPool.values()].map((s) => s.stop());
308
- await Promise.allSettled(stops);
309
- serverPool.clear();
310
- }
311
- //# sourceMappingURL=lsp-client.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"lsp-client.js","sourceRoot":"","sources":["../../src/executors/lsp-client.ts"],"names":[],"mappings":"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"}