@just-every/ensemble 0.2.87 → 0.2.88

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 (215) hide show
  1. package/dist/cjs/config/tool_execution.cjs +47 -0
  2. package/dist/cjs/config/tool_execution.d.ts +12 -0
  3. package/dist/cjs/config/tool_execution.d.ts.map +1 -0
  4. package/dist/cjs/config/tool_execution.js.map +1 -0
  5. package/dist/cjs/core/ensemble_embed.cjs +35 -0
  6. package/dist/cjs/core/ensemble_embed.d.ts +3 -0
  7. package/dist/cjs/core/ensemble_embed.d.ts.map +1 -0
  8. package/dist/cjs/core/ensemble_embed.js.map +1 -0
  9. package/dist/cjs/core/ensemble_image.cjs +13 -0
  10. package/dist/cjs/core/ensemble_image.d.ts +3 -0
  11. package/dist/cjs/core/ensemble_image.d.ts.map +1 -0
  12. package/dist/cjs/core/ensemble_image.js.map +1 -0
  13. package/dist/cjs/core/ensemble_listen.cjs +162 -0
  14. package/dist/cjs/core/ensemble_listen.d.ts +5 -0
  15. package/dist/cjs/core/ensemble_listen.d.ts.map +1 -0
  16. package/dist/cjs/core/ensemble_listen.js.map +1 -0
  17. package/dist/cjs/core/ensemble_live.cjs +387 -0
  18. package/dist/cjs/core/ensemble_live.d.ts +14 -0
  19. package/dist/cjs/core/ensemble_live.d.ts.map +1 -0
  20. package/dist/cjs/core/ensemble_live.js.map +1 -0
  21. package/dist/cjs/core/ensemble_request.cjs +409 -0
  22. package/dist/cjs/core/ensemble_request.d.ts +4 -0
  23. package/dist/cjs/core/ensemble_request.d.ts.map +1 -0
  24. package/dist/cjs/core/ensemble_request.js.map +1 -0
  25. package/dist/cjs/core/ensemble_voice.cjs +284 -0
  26. package/dist/cjs/core/ensemble_voice.d.ts +4 -0
  27. package/dist/cjs/core/ensemble_voice.d.ts.map +1 -0
  28. package/dist/cjs/core/ensemble_voice.js.map +1 -0
  29. package/dist/cjs/data/model_data.cjs +1460 -0
  30. package/dist/cjs/data/model_data.d.ts +71 -0
  31. package/dist/cjs/data/model_data.d.ts.map +1 -0
  32. package/dist/cjs/data/model_data.js.map +1 -0
  33. package/dist/cjs/index.cjs +139 -0
  34. package/dist/cjs/index.d.ts +37 -0
  35. package/dist/cjs/index.d.ts.map +1 -0
  36. package/dist/cjs/index.js.map +1 -0
  37. package/dist/cjs/model_providers/base_provider.cjs +46 -0
  38. package/dist/cjs/model_providers/base_provider.d.ts +13 -0
  39. package/dist/cjs/model_providers/base_provider.d.ts.map +1 -0
  40. package/dist/cjs/model_providers/base_provider.js.map +1 -0
  41. package/dist/cjs/model_providers/claude.cjs +782 -0
  42. package/dist/cjs/model_providers/claude.d.ts +12 -0
  43. package/dist/cjs/model_providers/claude.d.ts.map +1 -0
  44. package/dist/cjs/model_providers/claude.js.map +1 -0
  45. package/dist/cjs/model_providers/deepseek.cjs +129 -0
  46. package/dist/cjs/model_providers/deepseek.d.ts +8 -0
  47. package/dist/cjs/model_providers/deepseek.d.ts.map +1 -0
  48. package/dist/cjs/model_providers/deepseek.js.map +1 -0
  49. package/dist/cjs/model_providers/elevenlabs.cjs +140 -0
  50. package/dist/cjs/model_providers/elevenlabs.d.ts +37 -0
  51. package/dist/cjs/model_providers/elevenlabs.d.ts.map +1 -0
  52. package/dist/cjs/model_providers/elevenlabs.js.map +1 -0
  53. package/dist/cjs/model_providers/gemini.cjs +1654 -0
  54. package/dist/cjs/model_providers/gemini.d.ts +22 -0
  55. package/dist/cjs/model_providers/gemini.d.ts.map +1 -0
  56. package/dist/cjs/model_providers/gemini.js.map +1 -0
  57. package/dist/cjs/model_providers/grok.cjs +25 -0
  58. package/dist/cjs/model_providers/grok.d.ts +8 -0
  59. package/dist/cjs/model_providers/grok.d.ts.map +1 -0
  60. package/dist/cjs/model_providers/grok.js.map +1 -0
  61. package/dist/cjs/model_providers/model_provider.cjs +296 -0
  62. package/dist/cjs/model_providers/model_provider.d.ts +10 -0
  63. package/dist/cjs/model_providers/model_provider.d.ts.map +1 -0
  64. package/dist/cjs/model_providers/model_provider.js.map +1 -0
  65. package/dist/cjs/model_providers/openai.cjs +1117 -0
  66. package/dist/cjs/model_providers/openai.d.ts +19 -0
  67. package/dist/cjs/model_providers/openai.d.ts.map +1 -0
  68. package/dist/cjs/model_providers/openai.js.map +1 -0
  69. package/dist/cjs/model_providers/openai_chat.cjs +787 -0
  70. package/dist/cjs/model_providers/openai_chat.d.ts +20 -0
  71. package/dist/cjs/model_providers/openai_chat.d.ts.map +1 -0
  72. package/dist/cjs/model_providers/openai_chat.js.map +1 -0
  73. package/dist/cjs/model_providers/openrouter.cjs +22 -0
  74. package/dist/cjs/model_providers/openrouter.d.ts +6 -0
  75. package/dist/cjs/model_providers/openrouter.d.ts.map +1 -0
  76. package/dist/cjs/model_providers/openrouter.js.map +1 -0
  77. package/dist/cjs/model_providers/test_provider.cjs +236 -0
  78. package/dist/cjs/model_providers/test_provider.d.ts +29 -0
  79. package/dist/cjs/model_providers/test_provider.d.ts.map +1 -0
  80. package/dist/cjs/model_providers/test_provider.js.map +1 -0
  81. package/dist/cjs/tsconfig.cjs.tsbuildinfo +1 -0
  82. package/dist/cjs/types/api_types.cjs +3 -0
  83. package/dist/cjs/types/api_types.d.ts +249 -0
  84. package/dist/cjs/types/api_types.d.ts.map +1 -0
  85. package/dist/cjs/types/api_types.js.map +1 -0
  86. package/dist/cjs/types/errors.cjs +76 -0
  87. package/dist/cjs/types/errors.d.ts +34 -0
  88. package/dist/cjs/types/errors.d.ts.map +1 -0
  89. package/dist/cjs/types/errors.js.map +1 -0
  90. package/dist/cjs/types/types.cjs +3 -0
  91. package/dist/cjs/types/types.d.ts +638 -0
  92. package/dist/cjs/types/types.d.ts.map +1 -0
  93. package/dist/cjs/types/types.js.map +1 -0
  94. package/dist/cjs/utils/agent.cjs +384 -0
  95. package/dist/cjs/utils/agent.d.ts +48 -0
  96. package/dist/cjs/utils/agent.d.ts.map +1 -0
  97. package/dist/cjs/utils/agent.js.map +1 -0
  98. package/dist/cjs/utils/audio_stream_player.cjs +342 -0
  99. package/dist/cjs/utils/audio_stream_player.d.ts +37 -0
  100. package/dist/cjs/utils/audio_stream_player.d.ts.map +1 -0
  101. package/dist/cjs/utils/audio_stream_player.js.map +1 -0
  102. package/dist/cjs/utils/citation_tracker.cjs +25 -0
  103. package/dist/cjs/utils/citation_tracker.d.ts +12 -0
  104. package/dist/cjs/utils/citation_tracker.d.ts.map +1 -0
  105. package/dist/cjs/utils/citation_tracker.js.map +1 -0
  106. package/dist/cjs/utils/config_manager.cjs +105 -0
  107. package/dist/cjs/utils/config_manager.d.ts +31 -0
  108. package/dist/cjs/utils/config_manager.d.ts.map +1 -0
  109. package/dist/cjs/utils/config_manager.js.map +1 -0
  110. package/dist/cjs/utils/cost_tracker.cjs +226 -0
  111. package/dist/cjs/utils/cost_tracker.d.ts +33 -0
  112. package/dist/cjs/utils/cost_tracker.d.ts.map +1 -0
  113. package/dist/cjs/utils/cost_tracker.js.map +1 -0
  114. package/dist/cjs/utils/create_tool_function.cjs +182 -0
  115. package/dist/cjs/utils/create_tool_function.d.ts +3 -0
  116. package/dist/cjs/utils/create_tool_function.d.ts.map +1 -0
  117. package/dist/cjs/utils/create_tool_function.js.map +1 -0
  118. package/dist/cjs/utils/delta_buffer.cjs +65 -0
  119. package/dist/cjs/utils/delta_buffer.d.ts +14 -0
  120. package/dist/cjs/utils/delta_buffer.d.ts.map +1 -0
  121. package/dist/cjs/utils/delta_buffer.js.map +1 -0
  122. package/dist/cjs/utils/ensemble_result.cjs +167 -0
  123. package/dist/cjs/utils/ensemble_result.d.ts +33 -0
  124. package/dist/cjs/utils/ensemble_result.d.ts.map +1 -0
  125. package/dist/cjs/utils/ensemble_result.js.map +1 -0
  126. package/dist/cjs/utils/event_controller.cjs +59 -0
  127. package/dist/cjs/utils/event_controller.d.ts +13 -0
  128. package/dist/cjs/utils/event_controller.d.ts.map +1 -0
  129. package/dist/cjs/utils/event_controller.js.map +1 -0
  130. package/dist/cjs/utils/external_models.cjs +42 -0
  131. package/dist/cjs/utils/external_models.d.ts +9 -0
  132. package/dist/cjs/utils/external_models.d.ts.map +1 -0
  133. package/dist/cjs/utils/external_models.js.map +1 -0
  134. package/dist/cjs/utils/image_to_text.cjs +58 -0
  135. package/dist/cjs/utils/image_to_text.d.ts +3 -0
  136. package/dist/cjs/utils/image_to_text.d.ts.map +1 -0
  137. package/dist/cjs/utils/image_to_text.js.map +1 -0
  138. package/dist/cjs/utils/image_utils.cjs +168 -0
  139. package/dist/cjs/utils/image_utils.d.ts +18 -0
  140. package/dist/cjs/utils/image_utils.d.ts.map +1 -0
  141. package/dist/cjs/utils/image_utils.js.map +1 -0
  142. package/dist/cjs/utils/image_validation.cjs +31 -0
  143. package/dist/cjs/utils/image_validation.d.ts +3 -0
  144. package/dist/cjs/utils/image_validation.d.ts.map +1 -0
  145. package/dist/cjs/utils/image_validation.js.map +1 -0
  146. package/dist/cjs/utils/llm_logger.cjs +31 -0
  147. package/dist/cjs/utils/llm_logger.d.ts +8 -0
  148. package/dist/cjs/utils/llm_logger.d.ts.map +1 -0
  149. package/dist/cjs/utils/llm_logger.js.map +1 -0
  150. package/dist/cjs/utils/message_history.cjs +560 -0
  151. package/dist/cjs/utils/message_history.d.ts +65 -0
  152. package/dist/cjs/utils/message_history.d.ts.map +1 -0
  153. package/dist/cjs/utils/message_history.js.map +1 -0
  154. package/dist/cjs/utils/model_class_config.cjs +105 -0
  155. package/dist/cjs/utils/model_class_config.d.ts +12 -0
  156. package/dist/cjs/utils/model_class_config.d.ts.map +1 -0
  157. package/dist/cjs/utils/model_class_config.js.map +1 -0
  158. package/dist/cjs/utils/pause_controller.cjs +90 -0
  159. package/dist/cjs/utils/pause_controller.d.ts +14 -0
  160. package/dist/cjs/utils/pause_controller.d.ts.map +1 -0
  161. package/dist/cjs/utils/pause_controller.js.map +1 -0
  162. package/dist/cjs/utils/quota_tracker.cjs +311 -0
  163. package/dist/cjs/utils/quota_tracker.d.ts +22 -0
  164. package/dist/cjs/utils/quota_tracker.d.ts.map +1 -0
  165. package/dist/cjs/utils/quota_tracker.js.map +1 -0
  166. package/dist/cjs/utils/retry_handler.cjs +131 -0
  167. package/dist/cjs/utils/retry_handler.d.ts +15 -0
  168. package/dist/cjs/utils/retry_handler.d.ts.map +1 -0
  169. package/dist/cjs/utils/retry_handler.js.map +1 -0
  170. package/dist/cjs/utils/running_tool_tracker.cjs +133 -0
  171. package/dist/cjs/utils/running_tool_tracker.d.ts +42 -0
  172. package/dist/cjs/utils/running_tool_tracker.d.ts.map +1 -0
  173. package/dist/cjs/utils/running_tool_tracker.js.map +1 -0
  174. package/dist/cjs/utils/sequential_queue.cjs +73 -0
  175. package/dist/cjs/utils/sequential_queue.d.ts +13 -0
  176. package/dist/cjs/utils/sequential_queue.d.ts.map +1 -0
  177. package/dist/cjs/utils/sequential_queue.js.map +1 -0
  178. package/dist/cjs/utils/stream_handler.cjs +73 -0
  179. package/dist/cjs/utils/stream_handler.d.ts +16 -0
  180. package/dist/cjs/utils/stream_handler.d.ts.map +1 -0
  181. package/dist/cjs/utils/stream_handler.js.map +1 -0
  182. package/dist/cjs/utils/summary_utils.cjs +211 -0
  183. package/dist/cjs/utils/summary_utils.d.ts +7 -0
  184. package/dist/cjs/utils/summary_utils.d.ts.map +1 -0
  185. package/dist/cjs/utils/summary_utils.js.map +1 -0
  186. package/dist/cjs/utils/test_utils.cjs +212 -0
  187. package/dist/cjs/utils/test_utils.d.ts +58 -0
  188. package/dist/cjs/utils/test_utils.d.ts.map +1 -0
  189. package/dist/cjs/utils/test_utils.js.map +1 -0
  190. package/dist/cjs/utils/tool_execution_manager.cjs +139 -0
  191. package/dist/cjs/utils/tool_execution_manager.d.ts +7 -0
  192. package/dist/cjs/utils/tool_execution_manager.d.ts.map +1 -0
  193. package/dist/cjs/utils/tool_execution_manager.js.map +1 -0
  194. package/dist/cjs/utils/tool_parameter_utils.cjs +168 -0
  195. package/dist/cjs/utils/tool_parameter_utils.d.ts +5 -0
  196. package/dist/cjs/utils/tool_parameter_utils.d.ts.map +1 -0
  197. package/dist/cjs/utils/tool_parameter_utils.js.map +1 -0
  198. package/dist/cjs/utils/tool_result_processor.cjs +363 -0
  199. package/dist/cjs/utils/tool_result_processor.d.ts +11 -0
  200. package/dist/cjs/utils/tool_result_processor.d.ts.map +1 -0
  201. package/dist/cjs/utils/tool_result_processor.js.map +1 -0
  202. package/dist/cjs/utils/verification.cjs +59 -0
  203. package/dist/cjs/utils/verification.d.ts +7 -0
  204. package/dist/cjs/utils/verification.d.ts.map +1 -0
  205. package/dist/cjs/utils/verification.js.map +1 -0
  206. package/dist/tsconfig.tsbuildinfo +1 -1
  207. package/dist/utils/audio_stream_player.d.ts +2 -0
  208. package/dist/utils/audio_stream_player.d.ts.map +1 -1
  209. package/dist/utils/audio_stream_player.js +83 -1
  210. package/dist/utils/audio_stream_player.js.map +1 -1
  211. package/dist/utils/cost_tracker.d.ts +7 -0
  212. package/dist/utils/cost_tracker.d.ts.map +1 -1
  213. package/dist/utils/cost_tracker.js +29 -0
  214. package/dist/utils/cost_tracker.js.map +1 -1
  215. package/package.json +18 -3
@@ -0,0 +1,12 @@
1
+ import { ProviderStreamEvent, ResponseInput, AgentDefinition } from "../types/types.cjs";
2
+ import { BaseModelProvider } from "./base_provider.cjs";
3
+ export declare class ClaudeProvider extends BaseModelProvider {
4
+ private _client?;
5
+ private apiKey?;
6
+ constructor(apiKey?: string);
7
+ private get client();
8
+ private prepareClaudeMessages;
9
+ createResponseStream(messages: ResponseInput, model: string, agent: AgentDefinition): AsyncGenerator<ProviderStreamEvent>;
10
+ }
11
+ export declare const claudeProvider: ClaudeProvider;
12
+ //# sourceMappingURL=claude.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"claude.d.ts","sourceRoot":"","sources":["../../../model_providers/claude.ts"],"names":[],"mappings":"AAqBA,OAAO,EAGH,mBAAmB,EAEnB,aAAa,EAEb,eAAe,EAClB,MAAM,mBAAmB,CAAC;AAC3B,OAAO,EAAE,iBAAiB,EAAE,MAAM,oBAAoB,CAAC;AAqTvD,qBAAa,cAAe,SAAQ,iBAAiB;IACjD,OAAO,CAAC,OAAO,CAAC,CAAY;IAC5B,OAAO,CAAC,MAAM,CAAC,CAAS;gBAEZ,MAAM,CAAC,EAAE,MAAM;IAS3B,OAAO,KAAK,MAAM,GAYjB;YAUa,qBAAqB;IAkF5B,oBAAoB,CACvB,QAAQ,EAAE,aAAa,EACvB,KAAK,EAAE,MAAM,EACb,KAAK,EAAE,eAAe,GACvB,cAAc,CAAC,mBAAmB,CAAC;CAgkBzC;AAGD,eAAO,MAAM,cAAc,gBAAuB,CAAC"}
@@ -0,0 +1 @@
1
+ {"version":3,"file":"claude.js","sourceRoot":"","sources":["../../../model_providers/claude.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAOA,4DAA0C;AAC1C,+BAAoC;AACpC,sEAAwG;AAKxG,SAAS,sBAAsB,CAAC,OAAc;IAC1C,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,OAAO,CAAC;QAAE,OAAO,EAAE,CAAC;IACvC,OAAO,OAAO;SACT,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,mBAAmB,CAAC;SAC3C,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,GAAG,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC,KAAK,IAAI,UAAU,MAAM,CAAC,CAAC,GAAG,EAAE,CAAC;SAC9D,IAAI,CAAC,IAAI,CAAC,CAAC;AACpB,CAAC;AAUD,yDAAuD;AACvD,0CAA0C;AAC1C,0DAA0F;AAC1F,sEAAwD;AACxD,yDAAkD;AAClD,4DAA6F;AAC7F,8DAAyF;AAGzF,MAAM,uBAAuB,GAA2B;IACpD,MAAM,EAAE,CAAC;IACT,SAAS,EAAE,IAAI;IACf,OAAO,EAAE,KAAK;IACd,MAAM,EAAE,KAAK;CAChB,CAAC;AAGF,SAAS,eAAe,CAAC,OAAY;IACjC,IAAI,OAAO,EAAE,CAAC;QACV,IAAI,KAAK,CAAC,OAAO,CAAC,OAAO,CAAC,EAAE,CAAC;YACzB,IAAI,OAAO,GAAG,EAAE,CAAC;YACjB,KAAK,MAAM,WAAW,IAAI,OAAO,EAAE,CAAC;gBAChC,MAAM,gBAAgB,GAAG,eAAe,CAAC,WAAW,CAAC,CAAC;gBACtD,IAAI,gBAAgB,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;oBAC9B,IAAI,OAAO,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;wBACrB,OAAO,IAAI,MAAM,CAAC;oBACtB,CAAC;oBACD,OAAO,IAAI,gBAAgB,CAAC;gBAChC,CAAC;YACL,CAAC;YACD,OAAO,OAAO,CAAC,IAAI,EAAE,CAAC;QAC1B,CAAC;aAAM,IAAI,OAAO,OAAO,KAAK,QAAQ,EAAE,CAAC;YACrC,OAAO,OAAO,CAAC,IAAI,EAAE,CAAC;QAC1B,CAAC;aAAM,IAAI,OAAO,OAAO,CAAC,IAAI,KAAK,QAAQ,EAAE,CAAC;YAC1C,OAAO,OAAO,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC;QAC/B,CAAC;QACD,OAAO,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,CAAC;IACnC,CAAC;IACD,OAAO,EAAE,CAAC;AACd,CAAC;AAKD,KAAK,UAAU,iBAAiB,CAAC,MAAW;IACxC,IAAI,CAAC,MAAM,IAAI,OAAO,MAAM,KAAK,QAAQ,EAAE,CAAC;QACxC,OAAO,MAAM,CAAC;IAClB,CAAC;IAED,MAAM,QAAQ,GAAG,EAAE,GAAG,MAAM,EAAE,CAAC;IAG/B,IAAI,QAAQ,CAAC,UAAU,EAAE,CAAC;QACtB,MAAM,aAAa,GAAQ,EAAE,CAAC;QAC9B,KAAK,MAAM,CAAC,GAAG,EAAE,KAAK,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,QAAQ,CAAC,UAAU,CAAC,EAAE,CAAC;YAC7D,IAAI,KAAK,IAAI,OAAO,KAAK,KAAK,QAAQ,EAAE,CAAC;gBACrC,MAAM,QAAQ,GAAG,EAAE,GAAG,KAAK,EAAS,CAAC;gBAGrC,IAAI,OAAO,QAAQ,CAAC,IAAI,KAAK,UAAU,EAAE,CAAC;oBACtC,IAAI,CAAC;wBACD,MAAM,SAAS,GAAG,MAAM,QAAQ,CAAC,IAAI,EAAE,CAAC;wBAExC,IAAI,KAAK,CAAC,OAAO,CAAC,SAAS,CAAC,IAAI,SAAS,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;4BACnD,QAAQ,CAAC,IAAI,GAAG,SAAS,CAAC;wBAC9B,CAAC;6BAAM,CAAC;4BAEJ,OAAO,QAAQ,CAAC,IAAI,CAAC;wBACzB,CAAC;oBACL,CAAC;oBAAC,MAAM,CAAC;wBAEL,OAAO,QAAQ,CAAC,IAAI,CAAC;oBACzB,CAAC;gBACL,CAAC;gBAGD,aAAa,CAAC,GAAG,CAAC,GAAG,MAAM,iBAAiB,CAAC,QAAQ,CAAC,CAAC;YAC3D,CAAC;iBAAM,CAAC;gBACJ,aAAa,CAAC,GAAG,CAAC,GAAG,KAAK,CAAC;YAC/B,CAAC;QACL,CAAC;QACD,QAAQ,CAAC,UAAU,GAAG,aAAa,CAAC;IACxC,CAAC;IAED,OAAO,QAAQ,CAAC;AACpB,CAAC;AAGD,KAAK,UAAU,oBAAoB,CAAC,KAAqB;IACrD,OAAO,MAAM,OAAO,CAAC,GAAG,CACpB,KAAK,CAAC,GAAG,CAAC,KAAK,EAAC,IAAI,EAAC,EAAE;QAEnB,IAAI,IAAI,CAAC,UAAU,CAAC,QAAQ,CAAC,IAAI,KAAK,mBAAmB,EAAE,CAAC;YACxD,OAAO;gBACH,IAAI,EAAE,qBAAqB;gBAC3B,IAAI,EAAE,YAAY;aACrB,CAAC;QACN,CAAC;QAGD,OAAO;YAEH,IAAI,EAAE,IAAI,CAAC,UAAU,CAAC,QAAQ,CAAC,IAAI;YACnC,WAAW,EAAE,IAAI,CAAC,UAAU,CAAC,QAAQ,CAAC,WAAW;YAEjD,YAAY,EAAE,MAAM,iBAAiB,CAAC,IAAI,CAAC,UAAU,CAAC,QAAQ,CAAC,UAAU,CAAC;SAC7E,CAAC;IACN,CAAC,CAAC,CACL,CAAC;AACN,CAAC;AAYD,SAAS,iBAAiB,CAAC,SAAiB;IACxC,IAAI,SAAS,CAAC,QAAQ,CAAC,iBAAiB,CAAC;QAAE,OAAO,YAAY,CAAC;IAC/D,IAAI,SAAS,CAAC,QAAQ,CAAC,gBAAgB,CAAC;QAAE,OAAO,WAAW,CAAC;IAC7D,IAAI,SAAS,CAAC,QAAQ,CAAC,gBAAgB,CAAC;QAAE,OAAO,WAAW,CAAC;IAC7D,IAAI,SAAS,CAAC,QAAQ,CAAC,iBAAiB,CAAC;QAAE,OAAO,YAAY,CAAC;IAE/D,OAAO,YAAY,CAAC;AACxB,CAAC;AAKD,SAAS,eAAe,CAAC,SAAiB;IACtC,OAAO,SAAS,CAAC,OAAO,CAAC,6BAA6B,EAAE,EAAE,CAAC,CAAC;AAChE,CAAC;AAWD,KAAK,UAAU,gBAAgB,CAAC,KAAY,EAAE,MAA8B;IAExE,KAAK,MAAM,CAAC,EAAE,SAAS,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,MAAM,CAAC,EAAE,CAAC;QAEjD,MAAM,kBAAkB,GAAG,MAAM,IAAA,2CAA0B,EAAC,SAAS,CAAC,CAAC;QACvE,MAAM,SAAS,GAAG,iBAAiB,CAAC,kBAAkB,CAAC,CAAC;QACxD,MAAM,gBAAgB,GAAG,eAAe,CAAC,kBAAkB,CAAC,CAAC;QAG7D,KAAK,CAAC,IAAI,CAAC;YACP,IAAI,EAAE,OAAO;YACb,MAAM,EAAE;gBACJ,IAAI,EAAE,QAAQ;gBACd,UAAU,EAAE,SAAS;gBACrB,IAAI,EAAE,gBAAgB;aACzB;SACJ,CAAC,CAAC;IACP,CAAC;IACD,OAAO,KAAK,CAAC;AACjB,CAAC;AAWD,KAAK,UAAU,sBAAsB,CACjC,KAAa,EACb,IAAY,EACZ,OAAe,EACf,GAAsB,EACtB,MAAc;IAEd,IAAI,CAAC,GAAG;QAAE,OAAO,IAAI,CAAC;IAGtB,IAAI,GAAG,CAAC,IAAI,KAAK,eAAe,EAAE,CAAC;QAC/B,IAAI,SAAS,GAA4B,EAAE,CAAC;QAC5C,IAAI,CAAC;YAED,MAAM,UAAU,GAAG,GAAG,CAAC,SAAS,IAAI,IAAI,CAAC;YAGzC,IAAI,UAAU,CAAC,QAAQ,CAAC,IAAI,CAAC,EAAE,CAAC;gBAC5B,OAAO,CAAC,IAAI,CAAC,6CAA6C,GAAG,CAAC,IAAI,KAAK,UAAU,EAAE,CAAC,CAAC;gBAErF,MAAM,eAAe,GAAG,UAAU,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC;gBAChD,MAAM,oBAAoB,GAAG,UAAU,CAAC,OAAO,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;gBACzD,IAAI,eAAe,KAAK,CAAC,CAAC,IAAI,oBAAoB,GAAG,eAAe,EAAE,CAAC;oBACnE,MAAM,YAAY,GAAG,UAAU,CAAC,SAAS,CAAC,eAAe,EAAE,oBAAoB,CAAC,CAAC;oBACjF,IAAI,CAAC;wBACD,SAAS,GAAG,IAAI,CAAC,KAAK,CAAC,YAAY,CAAC,CAAC;wBACrC,OAAO,CAAC,GAAG,CAAC,6CAA6C,YAAY,EAAE,CAAC,CAAC;oBAC7E,CAAC;oBAAC,OAAO,MAAM,EAAE,CAAC;wBACd,OAAO,CAAC,KAAK,CAAC,mCAAmC,YAAY,EAAE,EAAE,MAAM,CAAC,CAAC;wBACzE,SAAS,GAAG,EAAE,CAAC;oBACnB,CAAC;gBACL,CAAC;qBAAM,CAAC;oBACJ,SAAS,GAAG,EAAE,CAAC;gBACnB,CAAC;YACL,CAAC;iBAAM,CAAC;gBACJ,SAAS,GAAG,IAAI,CAAC,KAAK,CAAC,UAAU,CAAC,CAAC;YACvC,CAAC;QACL,CAAC;QAAC,OAAO,CAAC,EAAE,CAAC;YACT,OAAO,CAAC,KAAK,CAAC,6CAA6C,GAAG,CAAC,IAAI,KAAK,GAAG,CAAC,SAAS,EAAE,EAAE,CAAC,CAAC,CAAC;YAE5F,SAAS,GAAG,EAAE,CAAC;QACnB,CAAC;QAED,MAAM,YAAY,GAAG;YACjB,IAAI,EAAE,UAAU;YAChB,EAAE,EAAE,GAAG,CAAC,OAAO;YACf,IAAI,EAAE,GAAG,CAAC,IAAI;YACd,KAAK,EAAE,SAAS;SACnB,CAAC;QAEF,OAAO,EAAE,IAAI,EAAE,WAAW,EAAE,OAAO,EAAE,CAAC,YAAY,CAAC,EAAE,CAAC;IAC1D,CAAC;SAAM,IAAI,GAAG,CAAC,IAAI,KAAK,sBAAsB,EAAE,CAAC;QAE7C,MAAM,eAAe,GAAG;YACpB,IAAI,EAAE,aAAa;YACnB,WAAW,EAAE,GAAG,CAAC,OAAO;YACxB,OAAO,EAAE,GAAG,CAAC,MAAM,IAAI,EAAE;YACzB,GAAG,CAAC,GAAG,CAAC,MAAM,KAAK,YAAY,CAAC,CAAC,CAAC,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;SAC7D,CAAC;QAEF,IAAI,aAAa,GAAG,EAAE,CAAC;QACvB,aAAa,GAAG,MAAM,IAAA,uCAAsB,EACxC,KAAK,EACL,aAAa,EACb,eAAe,EACf,SAAS,EACT,gBAAgB,CACnB,CAAC;QAGF,OAAO,EAAE,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,aAAa,EAAE,CAAC;IACpD,CAAC;SAAM,IAAI,GAAG,CAAC,IAAI,KAAK,UAAU,EAAE,CAAC;QACjC,IAAI,CAAC,OAAO,EAAE,CAAC;YACX,OAAO,IAAI,CAAC;QAChB,CAAC;QAED,IAAI,WAAW,IAAI,GAAG,IAAI,GAAG,CAAC,SAAS,EAAE,CAAC;YAEtC,OAAO;gBACH,IAAI,EAAE,WAAW;gBACjB,OAAO,EAAE;oBACL;wBACI,IAAI,EAAE,UAAU;wBAChB,QAAQ,EAAE,OAAO,CAAC,IAAI,EAAE;wBACxB,SAAS,EAAE,GAAG,CAAC,SAAS;qBAC3B;iBACJ;aACJ,CAAC;QACN,CAAC;QACD,OAAO,EAAE,IAAI,EAAE,WAAW,EAAE,OAAO,EAAE,YAAY,GAAG,OAAO,CAAC,IAAI,EAAE,EAAE,CAAC;IACzE,CAAC;SAAM,CAAC;QAEJ,IAAI,CAAC,OAAO,EAAE,CAAC;YACX,OAAO,IAAI,CAAC;QAChB,CAAC;QAED,IAAI,WAAW,GAAkD,IAIhD,CAAC;QAClB,IAAI,WAAW,KAAK,WAAW,EAAE,CAAC;YAC9B,IAAI,CAAC,MAAM,EAAE,MAAM,EAAE,CAAC;gBAClB,WAAW,GAAG,QAAQ,CAAC;YAC3B,CAAC;iBAAM,CAAC;gBACJ,WAAW,GAAG,MAAM,CAAC;YACzB,CAAC;QACL,CAAC;QACD,IAAI,CAAC,CAAC,MAAM,EAAE,WAAW,EAAE,QAAQ,CAAC,CAAC,QAAQ,CAAC,WAAW,CAAC,EAAE,CAAC;YACzD,WAAW,GAAG,MAAM,CAAC;QACzB,CAAC;QAED,IAAI,aAAa,GAAG,EAAE,CAAC;QACvB,aAAa,GAAG,MAAM,IAAA,uCAAsB,EACxC,KAAK,EACL,aAAa,EACb;YACI,IAAI,EAAE,MAAM;YACZ,IAAI,EAAE,OAAO;SAChB,EACD,MAAM,EACN,gBAAgB,CACnB,CAAC;QACF,OAAO;YACH,IAAI,EAAE,WAAW;YACjB,OAAO,EAAE,aAAa;SACzB,CAAC;IACN,CAAC;AACL,CAAC;AAKD,MAAa,cAAe,SAAQ,oCAAiB;IACzC,OAAO,CAAa;IACpB,MAAM,CAAU;IAExB,YAAY,MAAe;QACvB,KAAK,CAAC,WAAW,CAAC,CAAC;QAEnB,IAAI,CAAC,MAAM,GAAG,MAAM,CAAC;IACzB,CAAC;IAKD,IAAY,MAAM;QACd,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,CAAC;YAEhB,MAAM,MAAM,GAAG,IAAI,CAAC,MAAM,IAAI,OAAO,CAAC,GAAG,CAAC,iBAAiB,CAAC;YAC5D,IAAI,CAAC,MAAM,EAAE,CAAC;gBACV,MAAM,IAAI,KAAK,CAAC,yEAAyE,CAAC,CAAC;YAC/F,CAAC;YACD,IAAI,CAAC,OAAO,GAAG,IAAI,aAAS,CAAC;gBACzB,MAAM,EAAE,MAAM;aACjB,CAAC,CAAC;QACP,CAAC;QACD,OAAO,IAAI,CAAC,OAAO,CAAC;IACxB,CAAC;IAUO,KAAK,CAAC,qBAAqB,CAC/B,QAAuB,EACvB,OAAe,EACf,kBAA2B,KAAK;QAEhC,MAAM,MAAM,GAAoB,EAAE,CAAC;QACnC,MAAM,cAAc,GAAG,IAAI,GAAG,EAAU,CAAC;QAEzC,KAAK,MAAM,GAAG,IAAI,QAAQ,EAAE,CAAC;YACzB,MAAM,IAAI,GAAG,MAAM,IAAI,GAAG,IAAI,GAAG,CAAC,IAAI,KAAK,WAAW,CAAC,CAAC,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC,QAAQ,CAAC;YAE7E,IAAI,OAAO,GAAG,EAAE,CAAC;YACjB,IAAI,SAAS,IAAI,GAAG,EAAE,CAAC;gBACnB,OAAO,GAAG,eAAe,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;YAC3C,CAAC;YAED,MAAM,aAAa,GAAG,MAAM,sBAAsB,CAAC,OAAO,EAAE,IAAI,EAAE,OAAO,EAAE,GAAG,EAAE,MAAM,CAAC,CAAC;YACxF,IAAI,aAAa,EAAE,CAAC;gBAEhB,IAAI,aAAa,CAAC,IAAI,KAAK,WAAW,IAAI,KAAK,CAAC,OAAO,CAAC,aAAa,CAAC,OAAO,CAAC,EAAE,CAAC;oBAC7E,IAAI,mBAAmB,GAAG,KAAK,CAAC;oBAChC,KAAK,MAAM,YAAY,IAAI,aAAa,CAAC,OAAO,EAAE,CAAC;wBAC/C,IAAI,YAAY,CAAC,IAAI,KAAK,UAAU,EAAE,CAAC;4BACnC,IAAI,cAAc,CAAC,GAAG,CAAC,YAAY,CAAC,EAAE,CAAC,EAAE,CAAC;gCACtC,OAAO,CAAC,IAAI,CAAC,mCAAmC,YAAY,CAAC,EAAE,EAAE,CAAC,CAAC;gCACnE,mBAAmB,GAAG,IAAI,CAAC;gCAC3B,MAAM;4BACV,CAAC;iCAAM,CAAC;gCACJ,cAAc,CAAC,GAAG,CAAC,YAAY,CAAC,EAAE,CAAC,CAAC;4BACxC,CAAC;wBACL,CAAC;oBACL,CAAC;oBAED,IAAI,CAAC,mBAAmB,EAAE,CAAC;wBACvB,MAAM,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC;oBAC/B,CAAC;gBACL,CAAC;qBAAM,CAAC;oBACJ,MAAM,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC;gBAC/B,CAAC;YACL,CAAC;QAEL,CAAC;QAGD,IAAI,eAAe,IAAI,MAAM,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YACvC,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,MAAM,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;gBACrC,MAAM,OAAO,GAAG,MAAM,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC;gBAC9B,MAAM,UAAU,GAAG,MAAM,CAAC,CAAC,CAAC,CAAC;gBAG7B,IAAI,OAAO,CAAC,IAAI,KAAK,WAAW,IAAI,UAAU,CAAC,IAAI,KAAK,WAAW,EAAE,CAAC;oBAElE,IAAI,gBAAgB,GAAG,KAAK,CAAC;oBAE7B,IAAI,KAAK,CAAC,OAAO,CAAC,UAAU,CAAC,OAAO,CAAC,EAAE,CAAC;wBACpC,gBAAgB;4BACZ,UAAU,CAAC,OAAO,CAAC,MAAM,GAAG,CAAC;gCAC7B,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,IAAI,KAAK,UAAU;oCACtC,UAAU,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,IAAI,KAAK,mBAAmB,CAAC,CAAC;oBAChE,CAAC;oBAGD,IAAI,CAAC,gBAAgB,EAAE,CAAC;wBACpB,MAAM,UAAU,GAAG,eAAe,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC;wBACvD,UAAU,CAAC,IAAI,GAAG,MAAM,CAAC;wBACzB,UAAU,CAAC,OAAO,GAAG;4BACjB;gCACI,IAAI,EAAE,MAAM;gCACZ,IAAI,EAAE,yBAAyB,UAAU,EAAE;6BAC9C;yBACJ,CAAC;oBACN,CAAC;gBACL,CAAC;YACL,CAAC;QACL,CAAC;QAED,OAAO,MAAM,CAAC;IAClB,CAAC;IAKD,KAAK,CAAC,CAAC,oBAAoB,CACvB,QAAuB,EACvB,KAAa,EACb,KAAsB;QAGtB,IAAI,gBAAgB,GAAG,CAAC,CAAC;QACzB,IAAI,iBAAiB,GAAG,CAAC,CAAC;QAC1B,IAAI,6BAA6B,GAAG,CAAC,CAAC;QACtC,IAAI,yBAAyB,GAAG,CAAC,CAAC;QAClC,IAAI,2BAA2B,GAAG,KAAK,CAAC;QACxC,IAAI,sBAAsB,GAAG,KAAK,CAAC;QACnC,IAAI,SAA6B,CAAC;QAElC,IAAI,CAAC;YACD,MAAM,EAAE,iBAAiB,EAAE,GAAG,wDAAa,mBAAmB,GAAC,CAAC;YAChE,MAAM,KAAK,GAA+B,KAAK,CAAC,CAAC,CAAC,MAAM,iBAAiB,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;YACtF,MAAM,QAAQ,GAA8B,KAAK,EAAE,aAAa,CAAC;YAGjE,IAAI,OAAO,GAAG,SAAS,CAAC;YACxB,IAAI,KAAK,CAAC,UAAU,CAAC,iBAAiB,CAAC,IAAI,KAAK,CAAC,UAAU,CAAC,eAAe,CAAC,EAAE,CAAC;gBAC3E,OAAO,GAAG;oBACN,gBAAgB,EAAE,iCAAiC;iBACtD,CAAC;YACN,CAAC;YAGD,IAAI,QAAQ,GAAG,SAAS,CAAC;YACzB,IAAI,WAAW,GAAG,KAAK,CAAC;YACxB,KAAK,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,uBAAuB,CAAC,EAAE,CAAC;gBACrE,IAAI,KAAK,CAAC,QAAQ,CAAC,MAAM,CAAC,EAAE,CAAC;oBACzB,WAAW,GAAG,IAAI,CAAC;oBACnB,IAAI,MAAM,GAAG,CAAC,EAAE,CAAC;wBACb,QAAQ,GAAG;4BACP,IAAI,EAAE,SAAS;4BACf,aAAa,EAAE,MAAM;yBACxB,CAAC;oBACN,CAAC;oBACD,KAAK,GAAG,KAAK,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;oBACvC,MAAM;gBACV,CAAC;YACL,CAAC;YAGD,MAAM,SAAS,GAAG,IAAA,yBAAS,EAAC,KAAK,CAAC,CAAC;YACnC,IAAI,UAAU,GAAG,QAAQ,EAAE,UAAU,IAAI,SAAS,EAAE,QAAQ,EAAE,iBAAiB,IAAI,IAAI,CAAC;YAExF,IAAI,SAAS,EAAE,QAAQ,EAAE,iBAAiB,EAAE,CAAC;gBACzC,UAAU,GAAG,IAAI,CAAC,GAAG,CAAC,UAAU,EAAE,SAAS,CAAC,QAAQ,CAAC,iBAAiB,CAAC,CAAC;YAC5E,CAAC;YAED,IACI,CAAC,WAAW;gBACZ,CAAC,KAAK,CAAC,UAAU,CAAC,iBAAiB,CAAC;oBAChC,KAAK,CAAC,UAAU,CAAC,eAAe,CAAC;oBACjC,KAAK,CAAC,UAAU,CAAC,mBAAmB,CAAC,CAAC,EAC5C,CAAC;gBAEC,QAAQ,GAAG;oBACP,IAAI,EAAE,SAAS;oBACf,aAAa,EAAE,IAAI;iBACtB,CAAC;YACN,CAAC;YAED,IAAI,QAAQ,EAAE,WAAW,EAAE,CAAC;gBACxB,QAAQ,CAAC,IAAI,CAAC;oBACV,IAAI,EAAE,SAAS;oBACf,IAAI,EAAE,QAAQ;oBACd,OAAO,EAAE,4EAA4E,IAAI,CAAC,SAAS,CAAC,QAAQ,CAAC,WAAW,EAAE,IAAI,EAAE,CAAC,CAAC,EAAE;iBACvI,CAAC,CAAC;YACP,CAAC;YAGD,MAAM,eAAe,GAAG,QAAQ,KAAK,SAAS,IAAI,QAAQ,CAAC,IAAI,KAAK,SAAS,CAAC;YAG9E,MAAM,cAAc,GAAG,MAAM,IAAI,CAAC,qBAAqB,CAAC,QAAQ,EAAE,KAAK,EAAE,eAAe,CAAC,CAAC;YAG1F,MAAM,YAAY,GAAG,cAAc,CAAC,MAAM,CAAC,CAAC,GAAG,EAAE,GAAG,EAAU,EAAE;gBAC5D,IAAI,GAAG,CAAC,IAAI,KAAK,QAAQ,IAAI,GAAG,CAAC,OAAO,EAAE,CAAC;oBACvC,IAAI,GAAG,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;wBACjB,GAAG,IAAI,MAAM,CAAC;oBAClB,CAAC;oBACD,GAAG,IAAI,eAAe,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;gBACxC,CAAC;gBACD,OAAO,GAAG,CAAC;YACf,CAAC,EAAE,EAAE,CAAC,CAAC;YAGP,MAAM,aAAa,GAAQ;gBACvB,KAAK,EAAE,KAAK;gBAEZ,QAAQ,EAAE,cAAc,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,MAAM,IAAI,CAAC,CAAC,IAAI,KAAK,WAAW,CAAC;gBAEjF,GAAG,CAAC,YAAY,CAAC,CAAC,CAAC,EAAE,MAAM,EAAE,YAAY,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;gBACxD,MAAM,EAAE,IAAI;gBACZ,UAAU;gBACV,GAAG,CAAC,QAAQ,CAAC,CAAC,CAAC,EAAE,QAAQ,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;gBACjC,GAAG,CAAC,QAAQ,EAAE,WAAW,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,WAAW,EAAE,QAAQ,CAAC,WAAW,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;aACxF,CAAC;YAGF,IAAI,KAAK,IAAI,KAAK,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;gBAC5B,aAAa,CAAC,KAAK,GAAG,MAAM,oBAAoB,CAAC,KAAK,CAAC,CAAC;YAC5D,CAAC;YAGD,IAAI,CAAC,aAAa,CAAC,QAAQ,IAAI,aAAa,CAAC,QAAQ,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;gBACjE,OAAO,CAAC,IAAI,CACR,qGAAqG,CACxG,CAAC;gBAEF,aAAa,CAAC,QAAQ,GAAG;oBACrB;wBACI,IAAI,EAAE,MAAM;wBACZ,OAAO,EAAE,wCAAwC;qBACpD;iBACJ,CAAC;YACN,CAAC;YAGD,SAAS,GAAG,IAAA,+BAAe,EAAC,KAAK,CAAC,QAAQ,EAAE,WAAW,EAAE,KAAK,EAAE,aAAa,EAAE,IAAI,IAAI,EAAE,CAAC,CAAC;YAG3F,IAAI,eAAe,GAAQ,IAAI,CAAC;YAChC,IAAI,eAAe,GAAG,KAAK,CAAC;YAC5B,IAAI,oBAAoB,GAAG,EAAE,CAAC;YAC9B,IAAI,mBAAmB,GAAG,EAAE,CAAC;YAC7B,IAAI,kBAAkB,GAAG,EAAE,CAAC;YAC5B,MAAM,SAAS,GAAG,IAAA,SAAM,GAAE,CAAC;YAE3B,IAAI,aAAa,GAAG,CAAC,CAAC;YACtB,MAAM,YAAY,GAAG,IAAI,GAAG,EAAuB,CAAC;YAEpD,MAAM,eAAe,GAAG,IAAA,2CAAqB,GAAE,CAAC;YAGhD,MAAM,EAAE,eAAe,EAAE,GAAG,wDAAa,8BAA8B,GAAC,CAAC;YACzE,MAAM,eAAe,CAAC,GAAG,EAAE,KAAK,CAAC,WAAW,CAAC,CAAC;YAG9C,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,MAAM,CAAC,aAAa,EAAE;gBAC5D,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,OAAO,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;aAClC,CAAC,CAAC;YAEH,MAAM,MAAM,GAA0B,EAAE,CAAC;YACzC,IAAI,CAAC;gBAED,IAAI,KAAK,EAAE,MAAM,KAAK,IAAI,MAAM,EAAE,CAAC;oBAC/B,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;oBAGnB,IAAI,IAAA,8BAAQ,GAAE,EAAE,CAAC;wBACb,OAAO,CAAC,GAAG,CAAC,kDAAkD,KAAK,cAAc,CAAC,CAAC;wBAGnF,MAAM,eAAe,CAAC,GAAG,EAAE,KAAK,CAAC,WAAW,CAAC,CAAC;wBAG9C,OAAO,CAAC,GAAG,CAAC,wDAAwD,KAAK,EAAE,CAAC,CAAC;oBACjF,CAAC;oBAID,IAAI,KAAK,CAAC,IAAI,KAAK,eAAe,IAAI,KAAK,CAAC,OAAO,EAAE,KAAK,EAAE,CAAC;wBACzD,MAAM,KAAK,GAAG,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC;wBAClC,gBAAgB,IAAI,KAAK,CAAC,YAAY,IAAI,CAAC,CAAC;wBAC5C,iBAAiB,IAAI,KAAK,CAAC,aAAa,IAAI,CAAC,CAAC;wBAC9C,6BAA6B,IAAI,KAAK,CAAC,2BAA2B,IAAI,CAAC,CAAC;wBACxE,yBAAyB,IAAI,KAAK,CAAC,uBAAuB,IAAI,CAAC,CAAC;oBACpE,CAAC;yBAEI,IAAI,KAAK,CAAC,IAAI,KAAK,eAAe,IAAI,KAAK,CAAC,KAAK,EAAE,CAAC;wBACrD,MAAM,KAAK,GAAG,KAAK,CAAC,KAAK,CAAC;wBAE1B,gBAAgB,IAAI,KAAK,CAAC,YAAY,IAAI,CAAC,CAAC;wBAC5C,iBAAiB,IAAI,KAAK,CAAC,aAAa,IAAI,CAAC,CAAC;wBAC9C,6BAA6B,IAAI,KAAK,CAAC,2BAA2B,IAAI,CAAC,CAAC;wBACxE,yBAAyB,IAAI,KAAK,CAAC,uBAAuB,IAAI,CAAC,CAAC;oBACpE,CAAC;oBAID,IAAI,KAAK,CAAC,IAAI,KAAK,qBAAqB,EAAE,CAAC;wBAEvC,IAAI,KAAK,CAAC,KAAK,CAAC,IAAI,KAAK,iBAAiB,IAAI,KAAK,CAAC,KAAK,CAAC,SAAS,EAAE,CAAC;4BAClE,oBAAoB,IAAI,KAAK,CAAC,KAAK,CAAC,SAAS,CAAC;wBAClD,CAAC;6BAAM,IAAI,KAAK,CAAC,KAAK,CAAC,IAAI,KAAK,gBAAgB,IAAI,KAAK,CAAC,KAAK,CAAC,QAAQ,EAAE,CAAC;4BACvE,MAAM;gCACF,IAAI,EAAE,eAAe;gCACrB,OAAO,EAAE,EAAE;gCACX,gBAAgB,EAAE,KAAK,CAAC,KAAK,CAAC,QAAQ;gCACtC,UAAU,EAAE,SAAS;gCACrB,KAAK,EAAE,aAAa,EAAE;6BACzB,CAAC;4BACF,mBAAmB,IAAI,KAAK,CAAC,KAAK,CAAC,QAAQ,CAAC;wBAChD,CAAC;6BAAM,IAAI,KAAK,CAAC,KAAK,CAAC,IAAI,KAAK,YAAY,IAAI,KAAK,CAAC,KAAK,CAAC,IAAI,EAAE,CAAC;4BAC/D,KAAK,MAAM,EAAE,IAAI,IAAA,6BAAW,EACxB,YAAY,EACZ,SAAS,EACT,KAAK,CAAC,KAAK,CAAC,IAAI,EAChB,OAAO,CAAC,EAAE,CACN,CAAC;gCACG,IAAI,EAAE,eAAe;gCACrB,OAAO;gCACP,UAAU,EAAE,SAAS;gCACrB,KAAK,EAAE,aAAa,EAAE;6BACzB,CAAwB,CAChC,EAAE,CAAC;gCACA,MAAM,EAAE,CAAC;4BACb,CAAC;4BACD,kBAAkB,IAAI,KAAK,CAAC,KAAK,CAAC,IAAI,CAAC;wBAC3C,CAAC;6BAAM,IACH,KAAK,CAAC,KAAK,CAAC,IAAI,KAAK,kBAAkB;4BACvC,eAAe;4BACf,KAAK,CAAC,KAAK,CAAC,YAAY,EAC1B,CAAC;4BACC,IAAI,CAAC;gCAED,IAAI,CAAC,eAAe,CAAC,QAAQ,CAAC,iBAAiB,EAAE,CAAC;oCAC9C,eAAe,CAAC,QAAQ,CAAC,iBAAiB,GAAG,EAAE,CAAC;gCACpD,CAAC;gCACD,eAAe,CAAC,QAAQ,CAAC,iBAAiB,IAAI,KAAK,CAAC,KAAK,CAAC,YAAY,CAAC;gCAOvE,MAAM;oCACF,IAAI,EAAE,YAAY;oCAClB,SAAS,EAAE;wCACP,GAAG,eAAe;wCAClB,QAAQ,EAAE;4CACN,GAAG,eAAe,CAAC,QAAQ;4CAE3B,SAAS,EAAE,IAAI;yCAClB;qCACQ;iCAChB,CAAC;4BACN,CAAC;4BAAC,OAAO,GAAG,EAAE,CAAC;gCACX,OAAO,CAAC,KAAK,CAAC,qDAAqD,EAAE,GAAG,EAAE,KAAK,CAAC,CAAC;4BACrF,CAAC;wBACL,CAAC;6BAAM,IAAI,KAAK,CAAC,KAAK,CAAC,IAAI,KAAK,iBAAiB,IAAI,KAAK,CAAC,KAAK,CAAC,QAAQ,EAAE,CAAC;4BAExE,MAAM,cAAc,GAAG,IAAA,oCAAc,EAAC,eAAe,EAAE;gCACnD,KAAK,EAAE,KAAK,CAAC,KAAK,CAAC,QAAQ,CAAC,KAAK;gCACjC,GAAG,EAAE,KAAK,CAAC,KAAK,CAAC,QAAQ,CAAC,GAAG;gCAC7B,SAAS,EAAE,KAAK,CAAC,KAAK,CAAC,QAAQ,CAAC,UAAU;6BAC7C,CAAC,CAAC;4BAGH,MAAM;gCACF,IAAI,EAAE,eAAe;gCACrB,OAAO,EAAE,cAAc;gCACvB,UAAU,EAAE,SAAS;gCACrB,KAAK,EAAE,aAAa,EAAE;6BACzB,CAAC;4BACF,kBAAkB,IAAI,cAAc,CAAC;wBACzC,CAAC;oBACL,CAAC;yBAEI,IAAI,KAAK,CAAC,IAAI,KAAK,qBAAqB,IAAI,KAAK,CAAC,aAAa,EAAE,IAAI,KAAK,MAAM,EAAE,CAAC;wBACpF,IAAI,KAAK,CAAC,aAAa,CAAC,IAAI,EAAE,CAAC;4BAC3B,KAAK,MAAM,EAAE,IAAI,IAAA,6BAAW,EACxB,YAAY,EACZ,SAAS,EACT,KAAK,CAAC,aAAa,CAAC,IAAI,EACxB,OAAO,CAAC,EAAE,CACN,CAAC;gCACG,IAAI,EAAE,eAAe;gCACrB,OAAO;gCACP,UAAU,EAAE,SAAS;gCACrB,KAAK,EAAE,aAAa,EAAE;6BACzB,CAAwB,CAChC,EAAE,CAAC;gCACA,MAAM,EAAE,CAAC;4BACb,CAAC;4BACD,kBAAkB,IAAI,KAAK,CAAC,aAAa,CAAC,IAAI,CAAC;wBACnD,CAAC;oBACL,CAAC;yBAEI,IAAI,KAAK,CAAC,IAAI,KAAK,oBAAoB,IAAI,KAAK,CAAC,aAAa,EAAE,IAAI,KAAK,MAAM,EAAE,CAAC;oBAGvF,CAAC;yBAEI,IACD,KAAK,CAAC,IAAI,KAAK,qBAAqB;wBACpC,KAAK,CAAC,aAAa,EAAE,IAAI,KAAK,wBAAwB,EACxD,CAAC;wBACC,IAAI,KAAK,CAAC,aAAa,CAAC,OAAO,EAAE,CAAC;4BAE9B,MAAM,SAAS,GAAG,sBAAsB,CAAC,KAAK,CAAC,aAAa,CAAC,OAAO,CAAC,CAAC;4BACtE,IAAI,SAAS,EAAE,CAAC;gCAEZ,MAAM;oCACF,IAAI,EAAE,eAAe;oCACrB,OAAO,EAAE,uBAAuB,GAAG,SAAS,GAAG,IAAI;oCACnD,UAAU,EAAE,SAAS;oCACrB,KAAK,EAAE,aAAa,EAAE;iCACzB,CAAC;gCACF,kBAAkB,IAAI,uBAAuB,GAAG,SAAS,GAAG,IAAI,CAAC;4BACrE,CAAC;wBACL,CAAC;oBACL,CAAC;yBAEI,IAAI,KAAK,CAAC,IAAI,KAAK,qBAAqB,IAAI,KAAK,CAAC,aAAa,EAAE,IAAI,KAAK,UAAU,EAAE,CAAC;wBACxF,MAAM,OAAO,GAAG,KAAK,CAAC,aAAa,CAAC;wBACpC,MAAM,MAAM,GAAG,OAAO,CAAC,EAAE,IAAI,QAAQ,IAAI,CAAC,GAAG,EAAE,IAAI,IAAI,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC,MAAM,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,CAAC;wBAC7F,MAAM,QAAQ,GAAG,OAAO,CAAC,IAAI,CAAC;wBAC9B,MAAM,SAAS,GAAG,OAAO,CAAC,KAAK,KAAK,SAAS,CAAC,CAAC,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,CAAC;wBACnE,eAAe,GAAG;4BACd,EAAE,EAAE,MAAM;4BACV,IAAI,EAAE,UAAU;4BAChB,QAAQ,EAAE;gCACN,IAAI,EAAE,QAAQ;gCACd,SAAS,EAAE,OAAO,SAAS,KAAK,QAAQ,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,SAAS,CAAC;6BACnF;yBACJ,CAAC;wBACF,eAAe,GAAG,KAAK,CAAC;oBAC5B,CAAC;yBAEI,IACD,KAAK,CAAC,IAAI,KAAK,oBAAoB;wBACnC,KAAK,CAAC,aAAa,EAAE,IAAI,KAAK,UAAU;wBACxC,eAAe,EACjB,CAAC;wBACC,IAAI,CAAC;4BAED,IAAI,eAAe,CAAC,QAAQ,CAAC,iBAAiB,EAAE,CAAC;gCAE7C,MAAM,WAAW,GAAG,eAAe,CAAC,QAAQ,CAAC,iBAAiB,CAAC;gCAC/D,IAAI,CAAC;oCACD,IAAI,CAAC,KAAK,CAAC,WAAW,CAAC,CAAC;oCACxB,eAAe,CAAC,QAAQ,CAAC,SAAS,GAAG,WAAW,CAAC;gCACrD,CAAC;gCAAC,OAAO,SAAS,EAAE,CAAC;oCACjB,OAAO,CAAC,IAAI,CACR,yCAAyC,eAAe,CAAC,QAAQ,CAAC,IAAI,KAAK,WAAW,EAAE,EACxF,SAAS,CACZ,CAAC;oCAEF,IAAI,WAAW,CAAC,QAAQ,CAAC,IAAI,CAAC,EAAE,CAAC;wCAC7B,MAAM,eAAe,GAAG,WAAW,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC;wCACjD,MAAM,oBAAoB,GAAG,WAAW,CAAC,OAAO,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;wCAC1D,IAAI,eAAe,KAAK,CAAC,CAAC,IAAI,oBAAoB,GAAG,eAAe,EAAE,CAAC;4CACnE,MAAM,YAAY,GAAG,WAAW,CAAC,SAAS,CACtC,eAAe,EACf,oBAAoB,CACvB,CAAC;4CACF,IAAI,CAAC;gDACD,IAAI,CAAC,KAAK,CAAC,YAAY,CAAC,CAAC;gDACzB,eAAe,CAAC,QAAQ,CAAC,SAAS,GAAG,YAAY,CAAC;gDAClD,OAAO,CAAC,GAAG,CACP,gDAAgD,YAAY,EAAE,CACjE,CAAC;4CACN,CAAC;4CAAC,OAAO,YAAY,EAAE,CAAC;gDACpB,OAAO,CAAC,KAAK,CACT,iCAAiC,YAAY,EAAE,EAC/C,YAAY,CACf,CAAC;gDACF,eAAe,CAAC,QAAQ,CAAC,SAAS,GAAG,IAAI,CAAC;4CAC9C,CAAC;wCACL,CAAC;6CAAM,CAAC;4CACJ,eAAe,CAAC,QAAQ,CAAC,SAAS,GAAG,IAAI,CAAC;wCAC9C,CAAC;oCACL,CAAC;yCAAM,CAAC;wCACJ,eAAe,CAAC,QAAQ,CAAC,SAAS,GAAG,IAAI,CAAC;oCAC9C,CAAC;gCACL,CAAC;gCACD,OAAO,eAAe,CAAC,QAAQ,CAAC,iBAAiB,CAAC;4BACtD,CAAC;4BACD,MAAM;gCACF,IAAI,EAAE,YAAY;gCAClB,SAAS,EAAE,eAA2B;6BACzC,CAAC;4BACF,eAAe,GAAG,IAAI,CAAC;wBAC3B,CAAC;wBAAC,OAAO,GAAG,EAAE,CAAC;4BACX,OAAO,CAAC,KAAK,CAAC,6BAA6B,EAAE,GAAG,EAAE,KAAK,CAAC,CAAC;wBAC7D,CAAC;gCAAS,CAAC;4BAEP,eAAe,GAAG,IAAI,CAAC;wBAG3B,CAAC;oBACL,CAAC;yBAEI,IAAI,KAAK,CAAC,IAAI,KAAK,cAAc,EAAE,CAAC;wBAGrC,IAAI,KAAK,CAAC,kCAAkC,CAAC,EAAE,CAAC;4BAE5C,MAAM,OAAO,GAAG,KAAK,CAAC,kCAAkC,CAAC,CAAC;4BAC1D,gBAAgB,IAAI,OAAO,CAAC,eAAe,IAAI,CAAC,CAAC;4BACjD,iBAAiB,IAAI,OAAO,CAAC,gBAAgB,IAAI,CAAC,CAAC;wBAEvD,CAAC;6BAAM,IAAI,KAAK,CAAC,KAAK,EAAE,CAAC;4BAErB,MAAM,KAAK,GAAG,KAAK,CAAC,KAAK,CAAC;4BAC1B,gBAAgB,IAAI,KAAK,CAAC,YAAY,IAAI,CAAC,CAAC;4BAC5C,iBAAiB,IAAI,KAAK,CAAC,aAAa,IAAI,CAAC,CAAC;4BAC9C,6BAA6B,IAAI,KAAK,CAAC,2BAA2B,IAAI,CAAC,CAAC;4BACxE,yBAAyB,IAAI,KAAK,CAAC,uBAAuB,IAAI,CAAC,CAAC;wBACpE,CAAC;wBAGD,IAAI,eAAe,IAAI,CAAC,eAAe,EAAE,CAAC;4BAItC,IAAI,eAAe,CAAC,QAAQ,CAAC,iBAAiB,EAAE,CAAC;gCAC7C,MAAM,WAAW,GAAG,eAAe,CAAC,QAAQ,CAAC,iBAAiB,CAAC;gCAC/D,IAAI,CAAC;oCACD,IAAI,CAAC,KAAK,CAAC,WAAW,CAAC,CAAC;oCACxB,eAAe,CAAC,QAAQ,CAAC,SAAS,GAAG,WAAW,CAAC;gCACrD,CAAC;gCAAC,OAAO,SAAS,EAAE,CAAC;oCACjB,OAAO,CAAC,IAAI,CACR,yDAAyD,eAAe,CAAC,QAAQ,CAAC,IAAI,KAAK,WAAW,EAAE,EACxG,SAAS,CACZ,CAAC;oCAEF,IAAI,WAAW,CAAC,QAAQ,CAAC,IAAI,CAAC,EAAE,CAAC;wCAC7B,MAAM,eAAe,GAAG,WAAW,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC;wCACjD,MAAM,oBAAoB,GAAG,WAAW,CAAC,OAAO,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;wCAC1D,IAAI,eAAe,KAAK,CAAC,CAAC,IAAI,oBAAoB,GAAG,eAAe,EAAE,CAAC;4CACnE,MAAM,YAAY,GAAG,WAAW,CAAC,SAAS,CACtC,eAAe,EACf,oBAAoB,CACvB,CAAC;4CACF,IAAI,CAAC;gDACD,IAAI,CAAC,KAAK,CAAC,YAAY,CAAC,CAAC;gDACzB,eAAe,CAAC,QAAQ,CAAC,SAAS,GAAG,YAAY,CAAC;gDAClD,OAAO,CAAC,GAAG,CAAC,yCAAyC,YAAY,EAAE,CAAC,CAAC;4CACzE,CAAC;4CAAC,OAAO,YAAY,EAAE,CAAC;gDACpB,OAAO,CAAC,KAAK,CACT,iDAAiD,YAAY,EAAE,EAC/D,YAAY,CACf,CAAC;gDACF,eAAe,CAAC,QAAQ,CAAC,SAAS,GAAG,IAAI,CAAC;4CAC9C,CAAC;wCACL,CAAC;6CAAM,CAAC;4CACJ,eAAe,CAAC,QAAQ,CAAC,SAAS,GAAG,IAAI,CAAC;wCAC9C,CAAC;oCACL,CAAC;yCAAM,CAAC;wCACJ,eAAe,CAAC,QAAQ,CAAC,SAAS,GAAG,IAAI,CAAC;oCAC9C,CAAC;gCACL,CAAC;gCACD,OAAO,eAAe,CAAC,QAAQ,CAAC,iBAAiB,CAAC;4BACtD,CAAC;4BAED,MAAM;gCACF,IAAI,EAAE,YAAY;gCAClB,SAAS,EAAE,eAA2B;6BACzC,CAAC;wBACN,CAAC;wBAGD,KAAK,MAAM,EAAE,IAAI,IAAA,qCAAmB,EAChC,YAAY,EACZ,CAAC,GAAG,EAAE,OAAO,EAAE,EAAE,CACb,CAAC;4BACG,IAAI,EAAE,eAAe;4BACrB,OAAO;4BACP,UAAU,EAAE,SAAS;4BACrB,KAAK,EAAE,aAAa,EAAE;yBACzB,CAAwB,CAChC,EAAE,CAAC;4BACA,MAAM,EAAE,CAAC;wBACb,CAAC;wBAED,IAAI,kBAAkB,IAAI,mBAAmB,EAAE,CAAC;4BAE5C,IAAI,eAAe,CAAC,SAAS,CAAC,IAAI,GAAG,CAAC,EAAE,CAAC;gCACrC,MAAM,SAAS,GAAG,IAAA,uCAAiB,EAAC,eAAe,CAAC,CAAC;gCACrD,kBAAkB,IAAI,SAAS,CAAC;4BACpC,CAAC;4BAED,MAAM;gCACF,IAAI,EAAE,kBAAkB;gCACxB,UAAU,EAAE,SAAS;gCACrB,OAAO,EAAE,kBAAkB;gCAC3B,gBAAgB,EAAE,mBAAmB;gCACrC,kBAAkB,EAAE,oBAAoB;6BAC3C,CAAC;4BACF,sBAAsB,GAAG,IAAI,CAAC;wBAClC,CAAC;wBACD,2BAA2B,GAAG,IAAI,CAAC;oBAEvC,CAAC;yBAEI,IAAI,KAAK,CAAC,IAAI,KAAK,OAAO,EAAE,CAAC;wBAC9B,IAAA,6BAAa,EAAC,SAAS,EAAE,KAAK,CAAC,CAAC;wBAChC,OAAO,CAAC,KAAK,CAAC,yBAAyB,EAAE,KAAK,CAAC,KAAK,CAAC,CAAC;wBACtD,MAAM;4BACF,IAAI,EAAE,OAAO;4BACb,KAAK,EACD,oBAAoB;gCACpB,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,KAAK,CAAC,OAAO,IAAI,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,eAAe,CAAC;yBAC3F,CAAC;wBAEF,2BAA2B,GAAG,KAAK,CAAC;wBACpC,MAAM;oBACV,CAAC;gBACL,CAAC;gBAID,IACI,2BAA2B;oBAC3B,CAAC,kBAAkB,IAAI,mBAAmB,CAAC;oBAC3C,CAAC,sBAAsB,EACzB,CAAC;oBACC,OAAO,CAAC,IAAI,CACR,iHAAiH,CACpH,CAAC;oBAEF,KAAK,MAAM,EAAE,IAAI,IAAA,qCAAmB,EAChC,YAAY,EACZ,CAAC,GAAG,EAAE,OAAO,EAAE,EAAE,CACb,CAAC;wBACG,IAAI,EAAE,eAAe;wBACrB,OAAO;wBACP,UAAU,EAAE,SAAS;wBACrB,KAAK,EAAE,aAAa,EAAE;qBACzB,CAAwB,CAChC,EAAE,CAAC;wBACA,MAAM,EAAE,CAAC;oBACb,CAAC;oBAED,IAAI,eAAe,CAAC,SAAS,CAAC,IAAI,GAAG,CAAC,EAAE,CAAC;wBACrC,MAAM,SAAS,GAAG,IAAA,uCAAiB,EAAC,eAAe,CAAC,CAAC;wBACrD,kBAAkB,IAAI,SAAS,CAAC;oBACpC,CAAC;oBAED,MAAM;wBACF,IAAI,EAAE,kBAAkB;wBACxB,UAAU,EAAE,SAAS;wBACrB,OAAO,EAAE,kBAAkB;wBAC3B,gBAAgB,EAAE,mBAAmB;wBACrC,kBAAkB,EAAE,oBAAoB;qBAC3C,CAAC;oBACF,sBAAsB,GAAG,IAAI,CAAC;gBAClC,CAAC;YACL,CAAC;YAAC,OAAO,WAAW,EAAE,CAAC;gBACnB,IAAA,6BAAa,EAAC,SAAS,EAAE,WAAW,CAAC,CAAC;gBACtC,OAAO,CAAC,KAAK,CAAC,iCAAiC,EAAE,WAAW,CAAC,CAAC;gBAC9D,MAAM;oBACF,IAAI,EAAE,OAAO;oBACb,KAAK,EAAE,wBAAwB,KAAK,MAAM,WAAW,EAAE;iBAC1D,CAAC;YACN,CAAC;oBAAS,CAAC;gBACP,IAAA,gCAAgB,EAAC,SAAS,EAAE,MAAM,CAAC,CAAC;YACxC,CAAC;QACL,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACb,IAAA,6BAAa,EAAC,SAAS,EAAE,KAAK,CAAC,CAAC;YAChC,OAAO,CAAC,KAAK,CAAC,6CAA6C,EAAE,KAAK,CAAC,CAAC;YACpE,MAAM;gBACF,IAAI,EAAE,OAAO;gBACb,KAAK,EAAE,yBAAyB,KAAK,MAAM,KAAK,EAAE;aACrD,CAAC;QACN,CAAC;gBAAS,CAAC;YAEP,IAAI,gBAAgB,GAAG,CAAC,IAAI,iBAAiB,GAAG,CAAC,EAAE,CAAC;gBAChD,MAAM,YAAY,GAAG,6BAA6B,GAAG,yBAAyB,CAAC;gBAC/E,sBAAW,CAAC,QAAQ,CAAC;oBACjB,KAAK;oBACL,YAAY,EAAE,gBAAgB;oBAC9B,aAAa,EAAE,iBAAiB;oBAChC,aAAa,EAAE,YAAY;oBAC3B,QAAQ,EAAE;wBACN,2BAA2B,EAAE,6BAA6B;wBAC1D,uBAAuB,EAAE,yBAAyB;wBAClD,YAAY,EAAE,gBAAgB,GAAG,iBAAiB;qBACrD;iBACJ,CAAC,CAAC;YACP,CAAC;QACL,CAAC;IACL,CAAC;CACJ;AAzrBD,wCAyrBC;AAGY,QAAA,cAAc,GAAG,IAAI,cAAc,EAAE,CAAC"}
@@ -0,0 +1,129 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.deepSeekProvider = exports.DeepSeekProvider = void 0;
4
+ const openai_chat_js_1 = require("./openai_chat.cjs");
5
+ function formatToolsForPrompt(tools) {
6
+ if (!tools || tools.length === 0) {
7
+ return 'No tools are available for use.';
8
+ }
9
+ const toolDescriptions = tools
10
+ .map(tool => {
11
+ if (tool.type !== 'function' || !tool.function) {
12
+ return ` - Unknown tool type: ${tool.type}`;
13
+ }
14
+ const func = tool.function;
15
+ const parameters = func.parameters && typeof func.parameters === 'object' ? func.parameters : {};
16
+ const properties = 'properties' in parameters ? parameters.properties : {};
17
+ const requiredParams = 'required' in parameters && Array.isArray(parameters.required) ? parameters.required : [];
18
+ const paramsJson = JSON.stringify(properties, null, 2);
19
+ return ` - Name: ${func.name}\n Description: ${func.description || 'No description'}\n Parameters (JSON Schema): ${paramsJson}\n Required Parameters: ${requiredParams.join(', ') || 'None'}`;
20
+ })
21
+ .join('\n\n');
22
+ return `You have the following tools available:\n${toolDescriptions}\n\nTo use one or more tools, output the following JSON structure containing an ARRAY of tool calls on a new line *at the very end* of your response, and *only* if you intend to call tool(s). Ensure the arguments value in each call is a JSON *string*: \n\`\`\`json\nTOOL_CALLS: [ {"id": "call_001", "type": "function", "function": {"name": "function_name_1", "arguments": "{\\"arg1\\": \\"value1\\"}"}}, {"id": "call_002", "type": "function", "function": {"name": "function_name_2", "arguments": "{\\"argA\\": true, \\"argB\\": 123}"}} ]\n\`\`\`\nReplace \`function_name\` and arguments accordingly for each tool call you want to make. Put all desired calls in the array. IMPORTANT: Always include an 'id' field with a unique string for each call. Do not add any text after the TOOL_CALLS line. If you are not calling any tools, respond normally without the TOOL_CALLS structure.`;
23
+ }
24
+ class DeepSeekProvider extends openai_chat_js_1.OpenAIChat {
25
+ constructor() {
26
+ super('deepseek', process.env.DEEPSEEK_API_KEY, 'https://api.deepseek.com/v1');
27
+ }
28
+ prepareParameters(requestParams) {
29
+ if (requestParams.model === 'deepseek-reasoner') {
30
+ const originalTools = requestParams.tools ?? [];
31
+ requestParams.max_tokens = 8000;
32
+ delete requestParams.tools;
33
+ delete requestParams.response_format;
34
+ delete requestParams.logprobs;
35
+ delete requestParams.top_logprobs;
36
+ if ('tool_choice' in requestParams) {
37
+ delete requestParams.tool_choice;
38
+ }
39
+ let messages = [...requestParams.messages];
40
+ const toolInfoForPrompt = formatToolsForPrompt(originalTools);
41
+ if (toolInfoForPrompt) {
42
+ messages.push({ role: 'system', content: toolInfoForPrompt });
43
+ }
44
+ messages = messages.map(originalMessage => {
45
+ let message = { ...originalMessage };
46
+ if (message.role === 'assistant' && message.tool_calls) {
47
+ const calls = message.tool_calls
48
+ .map(toolCall => {
49
+ if (toolCall.type === 'function') {
50
+ const args = typeof toolCall.function.arguments === 'string'
51
+ ? toolCall.function.arguments
52
+ : JSON.stringify(toolCall.function.arguments);
53
+ return `Called function '${toolCall.function.name}' with arguments: ${args}`;
54
+ }
55
+ return `(Unsupported tool call type: ${toolCall.type})`;
56
+ })
57
+ .join('\n');
58
+ message = {
59
+ role: 'assistant',
60
+ content: `[Previous Action] ${calls}`,
61
+ };
62
+ }
63
+ else if (message.role === 'tool') {
64
+ const contentString = typeof message.content === 'string' ? message.content : JSON.stringify(message.content);
65
+ const toolCallIdInfo = message.tool_call_id ? ` for call ID ${message.tool_call_id}` : '';
66
+ message = {
67
+ role: 'user',
68
+ content: `[Tool Result${toolCallIdInfo}] ${contentString}`,
69
+ };
70
+ }
71
+ if (typeof message.content !== 'string') {
72
+ message.content = JSON.stringify(message.content);
73
+ }
74
+ return message;
75
+ });
76
+ if (messages.length === 0 || messages[messages.length - 1].role !== 'user') {
77
+ const aiName = process.env.AI_NAME || 'Magi';
78
+ messages.push({
79
+ role: 'user',
80
+ content: `${aiName} thoughts: Let me think through this step by step...`,
81
+ });
82
+ }
83
+ const systemContents = [];
84
+ let finalMessages = [];
85
+ messages.forEach(msg => {
86
+ if (msg.role === 'system') {
87
+ if (msg.content && typeof msg.content === 'string') {
88
+ systemContents.push(msg.content);
89
+ }
90
+ else if (msg.content) {
91
+ try {
92
+ systemContents.push(JSON.stringify(msg.content));
93
+ }
94
+ catch (e) {
95
+ console.error(`(${this.provider}) Failed to stringify system message content:`, e);
96
+ }
97
+ }
98
+ }
99
+ else {
100
+ finalMessages.push(msg);
101
+ }
102
+ });
103
+ finalMessages = finalMessages.reduce((acc, currentMessage) => {
104
+ const lastMessage = acc.length > 0 ? acc[acc.length - 1] : null;
105
+ if (lastMessage && lastMessage.role === currentMessage.role) {
106
+ lastMessage.content = `${lastMessage.content ?? ''}\n\n${currentMessage.content ?? ''}`;
107
+ }
108
+ else {
109
+ acc.push({ ...currentMessage });
110
+ }
111
+ return acc;
112
+ }, []);
113
+ if (systemContents.length > 0) {
114
+ finalMessages.unshift({
115
+ role: 'system',
116
+ content: systemContents.join('\n\n'),
117
+ });
118
+ }
119
+ requestParams.messages = finalMessages;
120
+ }
121
+ else {
122
+ return super.prepareParameters(requestParams);
123
+ }
124
+ return requestParams;
125
+ }
126
+ }
127
+ exports.DeepSeekProvider = DeepSeekProvider;
128
+ exports.deepSeekProvider = new DeepSeekProvider();
129
+ //# sourceMappingURL=deepseek.js.map
@@ -0,0 +1,8 @@
1
+ import { OpenAIChat } from "./openai_chat.cjs";
2
+ import OpenAI from 'openai';
3
+ export declare class DeepSeekProvider extends OpenAIChat {
4
+ constructor();
5
+ prepareParameters(requestParams: OpenAI.Chat.Completions.ChatCompletionCreateParamsStreaming): OpenAI.Chat.Completions.ChatCompletionCreateParamsStreaming;
6
+ }
7
+ export declare const deepSeekProvider: DeepSeekProvider;
8
+ //# sourceMappingURL=deepseek.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"deepseek.d.ts","sourceRoot":"","sources":["../../../model_providers/deepseek.ts"],"names":[],"mappings":"AAaA,OAAO,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAC;AAC9C,OAAO,MAAM,MAAM,QAAQ,CAAC;AA2C5B,qBAAa,gBAAiB,SAAQ,UAAU;;IAY5C,iBAAiB,CACb,aAAa,EAAE,MAAM,CAAC,IAAI,CAAC,WAAW,CAAC,mCAAmC,GAC3E,MAAM,CAAC,IAAI,CAAC,WAAW,CAAC,mCAAmC;CAmIjE;AAGD,eAAO,MAAM,gBAAgB,kBAAyB,CAAC"}
@@ -0,0 +1 @@
1
+ {"version":3,"file":"deepseek.js","sourceRoot":"","sources":["../../../model_providers/deepseek.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,140 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.ElevenLabsProvider = exports.elevenLabsProvider = exports.ELEVENLABS_VOICES = void 0;
4
+ const base_provider_js_1 = require("./base_provider.cjs");
5
+ const cost_tracker_js_1 = require("../utils/cost_tracker.cjs");
6
+ exports.ELEVENLABS_VOICES = {
7
+ rachel: '21m00Tcm4TlvDq8ikWAM',
8
+ domi: 'AZnzlk1XvdvUeBnXmlld',
9
+ bella: 'EXAVITQu4vr4xnSDxMaL',
10
+ antoni: 'ErXwobaYiN019PkySvjV',
11
+ elli: 'MF3mGyEYCl7XYWbV9V6O',
12
+ josh: 'TxGEqnHWrfWFTfGW9XjX',
13
+ arnold: 'VR6AewLTigWG4xSOukaG',
14
+ adam: 'pNInz6obpgDQGcFmaJgB',
15
+ sam: 'yoZ06aMxZJJ28mfd3POQ',
16
+ george: 'JBFqnCBsd6RMkjVDRZzb',
17
+ jessica: 'cgSgspJ2msm6clMCkdW9',
18
+ laura: 'FGY2WhTYpPnrIDTdsKH5',
19
+ callum: 'N2lVS1w4EtoT3dr4eOWO',
20
+ unreal: 'YOq2y2Up4RgXP2HyXjE5',
21
+ blondie: 'exsUS4vynmxd379XN4yO',
22
+ james: 'h0KXSKLMvNtfCIMB8I9L',
23
+ };
24
+ class ElevenLabsProvider extends base_provider_js_1.BaseModelProvider {
25
+ _apiKey;
26
+ baseUrl = 'https://api.elevenlabs.io/v1';
27
+ constructor() {
28
+ super('elevenlabs');
29
+ }
30
+ get apiKey() {
31
+ if (!this._apiKey) {
32
+ this._apiKey = process.env.ELEVENLABS_API_KEY;
33
+ if (!this._apiKey) {
34
+ throw new Error('ElevenLabs API key is required. Please set the ELEVENLABS_API_KEY environment variable.');
35
+ }
36
+ }
37
+ return this._apiKey;
38
+ }
39
+ supportsModel(model) {
40
+ return model.startsWith('eleven_') || model.startsWith('elevenlabs-');
41
+ }
42
+ getModelInfo() {
43
+ return undefined;
44
+ }
45
+ async request() {
46
+ throw new Error('ElevenLabs provider only supports voice generation');
47
+ }
48
+ async embed() {
49
+ throw new Error('ElevenLabs provider does not support embeddings');
50
+ }
51
+ async image() {
52
+ throw new Error('ElevenLabs provider does not support image generation');
53
+ }
54
+ async createVoice(text, model, opts) {
55
+ try {
56
+ const modelId = model;
57
+ let voiceId = opts?.voice || 'adam';
58
+ if (voiceId in exports.ELEVENLABS_VOICES) {
59
+ voiceId = exports.ELEVENLABS_VOICES[voiceId];
60
+ }
61
+ const outputFormat = this.mapOutputFormat(opts?.response_format || 'mp3_44100_128');
62
+ console.log(`[ElevenLabs] Generating speech with model ${modelId}, voice: ${voiceId}, format: ${outputFormat}, streaming: ${opts?.stream || false}`);
63
+ if (model === 'eleven_v3' && opts?.affect) {
64
+ text = `[${opts.affect.toUpperCase()}] ${text}`;
65
+ }
66
+ const requestBody = {
67
+ text,
68
+ model_id: modelId,
69
+ voice_settings: {
70
+ speed: 0.9,
71
+ stability: 0.4,
72
+ similarity_boost: 0.5,
73
+ use_speaker_boost: true,
74
+ ...(opts?.voice_settings || {}),
75
+ },
76
+ };
77
+ if (opts?.speed !== undefined) {
78
+ requestBody.voice_settings.speed = opts.speed;
79
+ }
80
+ const endpoint = opts?.stream ? 'stream' : '';
81
+ const url = `${this.baseUrl}/text-to-speech/${voiceId}${endpoint ? '/stream' : ''}?output_format=${outputFormat}`;
82
+ const response = await fetch(url, {
83
+ method: 'POST',
84
+ headers: {
85
+ 'xi-api-key': this.apiKey,
86
+ 'Content-Type': 'application/json',
87
+ Accept: opts?.stream ? 'application/octet-stream' : 'audio/mpeg',
88
+ },
89
+ body: JSON.stringify(requestBody),
90
+ });
91
+ if (!response.ok) {
92
+ const error = await response.text();
93
+ throw new Error(`ElevenLabs API error: ${response.status} - ${error}`);
94
+ }
95
+ const characterCount = text.length;
96
+ cost_tracker_js_1.costTracker.addUsage({
97
+ model,
98
+ input_tokens: Math.ceil(characterCount / 4),
99
+ output_tokens: 0,
100
+ metadata: {
101
+ character_count: characterCount,
102
+ voice: voiceId,
103
+ format: outputFormat,
104
+ },
105
+ });
106
+ if (opts?.stream && response.body) {
107
+ return response.body;
108
+ }
109
+ else {
110
+ const buffer = await response.arrayBuffer();
111
+ return buffer;
112
+ }
113
+ }
114
+ catch (error) {
115
+ console.error('[ElevenLabs] Error generating speech:', error);
116
+ throw error;
117
+ }
118
+ }
119
+ mapOutputFormat(format) {
120
+ const formatMap = {
121
+ mp3: 'mp3_44100_128',
122
+ mp3_low: 'mp3_22050_32',
123
+ mp3_high: 'mp3_44100_192',
124
+ pcm: 'pcm_24000',
125
+ pcm_16000: 'pcm_16000',
126
+ pcm_22050: 'pcm_22050',
127
+ pcm_24000: 'pcm_24000',
128
+ pcm_44100: 'pcm_44100',
129
+ ulaw: 'ulaw_8000',
130
+ };
131
+ return formatMap[format] || format;
132
+ }
133
+ async *createResponseStream() {
134
+ yield;
135
+ throw new Error('ElevenLabs provider only supports voice generation');
136
+ }
137
+ }
138
+ exports.ElevenLabsProvider = ElevenLabsProvider;
139
+ exports.elevenLabsProvider = new ElevenLabsProvider();
140
+ //# sourceMappingURL=elevenlabs.js.map
@@ -0,0 +1,37 @@
1
+ import { BaseModelProvider } from "./base_provider.cjs";
2
+ import { VoiceGenerationOpts } from "../types/types.cjs";
3
+ export declare const ELEVENLABS_VOICES: {
4
+ readonly rachel: "21m00Tcm4TlvDq8ikWAM";
5
+ readonly domi: "AZnzlk1XvdvUeBnXmlld";
6
+ readonly bella: "EXAVITQu4vr4xnSDxMaL";
7
+ readonly antoni: "ErXwobaYiN019PkySvjV";
8
+ readonly elli: "MF3mGyEYCl7XYWbV9V6O";
9
+ readonly josh: "TxGEqnHWrfWFTfGW9XjX";
10
+ readonly arnold: "VR6AewLTigWG4xSOukaG";
11
+ readonly adam: "pNInz6obpgDQGcFmaJgB";
12
+ readonly sam: "yoZ06aMxZJJ28mfd3POQ";
13
+ readonly george: "JBFqnCBsd6RMkjVDRZzb";
14
+ readonly jessica: "cgSgspJ2msm6clMCkdW9";
15
+ readonly laura: "FGY2WhTYpPnrIDTdsKH5";
16
+ readonly callum: "N2lVS1w4EtoT3dr4eOWO";
17
+ readonly unreal: "YOq2y2Up4RgXP2HyXjE5";
18
+ readonly blondie: "exsUS4vynmxd379XN4yO";
19
+ readonly james: "h0KXSKLMvNtfCIMB8I9L";
20
+ };
21
+ declare class ElevenLabsProvider extends BaseModelProvider {
22
+ private _apiKey?;
23
+ private baseUrl;
24
+ constructor();
25
+ private get apiKey();
26
+ supportsModel(model: string): boolean;
27
+ getModelInfo(): any;
28
+ request(): Promise<any>;
29
+ embed(): Promise<any>;
30
+ image(): Promise<any>;
31
+ createVoice(text: string, model: string, opts?: VoiceGenerationOpts): Promise<ReadableStream<Uint8Array> | ArrayBuffer>;
32
+ private mapOutputFormat;
33
+ createResponseStream(): AsyncGenerator<any>;
34
+ }
35
+ export declare const elevenLabsProvider: ElevenLabsProvider;
36
+ export { ElevenLabsProvider };
37
+ //# sourceMappingURL=elevenlabs.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"elevenlabs.d.ts","sourceRoot":"","sources":["../../../model_providers/elevenlabs.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,iBAAiB,EAAE,MAAM,oBAAoB,CAAC;AAEvD,OAAO,EAAE,mBAAmB,EAAE,MAAM,mBAAmB,CAAC;AAGxD,eAAO,MAAM,iBAAiB;;;;;;;;;;;;;;;;;CAiBpB,CAAC;AAKX,cAAM,kBAAmB,SAAQ,iBAAiB;IAC9C,OAAO,CAAC,OAAO,CAAC,CAAS;IACzB,OAAO,CAAC,OAAO,CAAkC;;IASjD,OAAO,KAAK,MAAM,GAUjB;IAKD,aAAa,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO;IAOrC,YAAY,IAAI,GAAG;IAQb,OAAO,IAAI,OAAO,CAAC,GAAG,CAAC;IAOvB,KAAK,IAAI,OAAO,CAAC,GAAG,CAAC;IAOrB,KAAK,IAAI,OAAO,CAAC,GAAG,CAAC;IAOrB,WAAW,CACb,IAAI,EAAE,MAAM,EACZ,KAAK,EAAE,MAAM,EACb,IAAI,CAAC,EAAE,mBAAmB,GAC3B,OAAO,CAAC,cAAc,CAAC,UAAU,CAAC,GAAG,WAAW,CAAC;IA2FpD,OAAO,CAAC,eAAe;IAmBhB,oBAAoB,IAAI,cAAc,CAAC,GAAG,CAAC;CAIrD;AAGD,eAAO,MAAM,kBAAkB,oBAA2B,CAAC;AAG3D,OAAO,EAAE,kBAAkB,EAAE,CAAC"}
@@ -0,0 +1 @@
1
+ {"version":3,"file":"elevenlabs.js","sourceRoot":"","sources":["../../../model_providers/elevenlabs.ts"],"names":[],"mappings":"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"}