@jsonstudio/rcc 0.89.1803 → 0.89.1959

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 (283) hide show
  1. package/configsamples/config.json +19 -0
  2. package/configsamples/provider/deepseek/config.v1.json +59 -0
  3. package/dist/build-info.js +2 -2
  4. package/dist/cli/commands/claude.d.ts +4 -0
  5. package/dist/cli/commands/claude.js +56 -0
  6. package/dist/cli/commands/claude.js.map +1 -0
  7. package/dist/cli/commands/clock-admin.d.ts +20 -0
  8. package/dist/cli/commands/clock-admin.js +234 -0
  9. package/dist/cli/commands/clock-admin.js.map +1 -0
  10. package/dist/cli/commands/code.d.ts +0 -42
  11. package/dist/cli/commands/code.js +4 -414
  12. package/dist/cli/commands/code.js.map +1 -1
  13. package/dist/cli/commands/codex.d.ts +4 -0
  14. package/dist/cli/commands/codex.js +43 -0
  15. package/dist/cli/commands/codex.js.map +1 -0
  16. package/dist/cli/commands/examples.js +13 -16
  17. package/dist/cli/commands/examples.js.map +1 -1
  18. package/dist/cli/commands/init/basic.d.ts +40 -0
  19. package/dist/cli/commands/init/basic.js +482 -0
  20. package/dist/cli/commands/init/basic.js.map +1 -0
  21. package/dist/cli/commands/init/camoufox.d.ts +7 -0
  22. package/dist/cli/commands/init/camoufox.js +59 -0
  23. package/dist/cli/commands/init/camoufox.js.map +1 -0
  24. package/dist/cli/commands/init/interactive.d.ts +18 -0
  25. package/dist/cli/commands/init/interactive.js +223 -0
  26. package/dist/cli/commands/init/interactive.js.map +1 -0
  27. package/dist/cli/commands/init/shared.d.ts +66 -0
  28. package/dist/cli/commands/init/shared.js +9 -0
  29. package/dist/cli/commands/init/shared.js.map +1 -0
  30. package/dist/cli/commands/init/workflows.d.ts +29 -0
  31. package/dist/cli/commands/init/workflows.js +341 -0
  32. package/dist/cli/commands/init/workflows.js.map +1 -0
  33. package/dist/cli/commands/init.d.ts +2 -26
  34. package/dist/cli/commands/init.js +220 -53
  35. package/dist/cli/commands/init.js.map +1 -1
  36. package/dist/cli/commands/launcher-kernel.d.ts +78 -0
  37. package/dist/cli/commands/launcher-kernel.js +1194 -0
  38. package/dist/cli/commands/launcher-kernel.js.map +1 -0
  39. package/dist/cli/commands/start.js +27 -1
  40. package/dist/cli/commands/start.js.map +1 -1
  41. package/dist/cli/commands/status.d.ts +2 -0
  42. package/dist/cli/commands/status.js +24 -1
  43. package/dist/cli/commands/status.js.map +1 -1
  44. package/dist/cli/commands/stop.d.ts +1 -0
  45. package/dist/cli/commands/stop.js +201 -4
  46. package/dist/cli/commands/stop.js.map +1 -1
  47. package/dist/cli/commands/tmux-inject.d.ts +20 -0
  48. package/dist/cli/commands/tmux-inject.js +212 -0
  49. package/dist/cli/commands/tmux-inject.js.map +1 -0
  50. package/dist/cli/config/init-provider-catalog.js +34 -0
  51. package/dist/cli/config/init-provider-catalog.js.map +1 -1
  52. package/dist/cli/register/claude-command.d.ts +3 -0
  53. package/dist/cli/register/claude-command.js +5 -0
  54. package/dist/cli/register/claude-command.js.map +1 -0
  55. package/dist/cli/register/clock-admin-command.d.ts +3 -0
  56. package/dist/cli/register/clock-admin-command.js +5 -0
  57. package/dist/cli/register/clock-admin-command.js.map +1 -0
  58. package/dist/cli/register/codex-command.d.ts +3 -0
  59. package/dist/cli/register/codex-command.js +5 -0
  60. package/dist/cli/register/codex-command.js.map +1 -0
  61. package/dist/cli/register/status-config-commands.d.ts +2 -0
  62. package/dist/cli/register/status-config-commands.js.map +1 -1
  63. package/dist/cli/register/tmux-inject-command.d.ts +3 -0
  64. package/dist/cli/register/tmux-inject-command.js +5 -0
  65. package/dist/cli/register/tmux-inject-command.js.map +1 -0
  66. package/dist/cli/server/port-utils.d.ts +3 -2
  67. package/dist/cli/server/port-utils.js +171 -32
  68. package/dist/cli/server/port-utils.js.map +1 -1
  69. package/dist/cli.js +45 -6
  70. package/dist/cli.js.map +1 -1
  71. package/dist/client/gemini/gemini-protocol-client.js +56 -5
  72. package/dist/client/gemini/gemini-protocol-client.js.map +1 -1
  73. package/dist/commands/token-daemon.js +59 -7
  74. package/dist/commands/token-daemon.js.map +1 -1
  75. package/dist/commands/validate.js +87 -15
  76. package/dist/commands/validate.js.map +1 -1
  77. package/dist/config/routecodex-config-loader.js +31 -2
  78. package/dist/config/routecodex-config-loader.js.map +1 -1
  79. package/dist/docs/daemon-admin-ui.html +948 -74
  80. package/dist/index.d.ts +1 -0
  81. package/dist/index.js +325 -37
  82. package/dist/index.js.map +1 -1
  83. package/dist/manager/quota/provider-quota-center.js +8 -14
  84. package/dist/manager/quota/provider-quota-center.js.map +1 -1
  85. package/dist/modules/llmswitch/bridge.d.ts +39 -0
  86. package/dist/modules/llmswitch/bridge.js +169 -0
  87. package/dist/modules/llmswitch/bridge.js.map +1 -1
  88. package/dist/modules/pipeline/utils/colored-logger.js +1 -1
  89. package/dist/modules/pipeline/utils/colored-logger.js.map +1 -1
  90. package/dist/providers/auth/deepseek-account-auth.d.ts +39 -0
  91. package/dist/providers/auth/deepseek-account-auth.js +329 -0
  92. package/dist/providers/auth/deepseek-account-auth.js.map +1 -0
  93. package/dist/providers/auth/deepseek-account-token-acquirer.d.ts +15 -0
  94. package/dist/providers/auth/deepseek-account-token-acquirer.js +644 -0
  95. package/dist/providers/auth/deepseek-account-token-acquirer.js.map +1 -0
  96. package/dist/providers/auth/oauth-lifecycle.js +26 -4
  97. package/dist/providers/auth/oauth-lifecycle.js.map +1 -1
  98. package/dist/providers/auth/oauth-repair-cooldown.d.ts +5 -0
  99. package/dist/providers/auth/oauth-repair-cooldown.js +39 -0
  100. package/dist/providers/auth/oauth-repair-cooldown.js.map +1 -1
  101. package/dist/providers/auth/token-scanner/index.d.ts +6 -0
  102. package/dist/providers/auth/token-scanner/index.js +53 -0
  103. package/dist/providers/auth/token-scanner/index.js.map +1 -1
  104. package/dist/providers/core/api/provider-config.d.ts +17 -2
  105. package/dist/providers/core/api/provider-types.d.ts +6 -0
  106. package/dist/providers/core/api/provider-types.js.map +1 -1
  107. package/dist/providers/core/config/camoufox-launcher.d.ts +7 -0
  108. package/dist/providers/core/config/camoufox-launcher.js +68 -21
  109. package/dist/providers/core/config/camoufox-launcher.js.map +1 -1
  110. package/dist/providers/core/config/service-profiles.js +19 -0
  111. package/dist/providers/core/config/service-profiles.js.map +1 -1
  112. package/dist/providers/core/contracts/deepseek-provider-contract.d.ts +34 -0
  113. package/dist/providers/core/contracts/deepseek-provider-contract.js +100 -0
  114. package/dist/providers/core/contracts/deepseek-provider-contract.js.map +1 -0
  115. package/dist/providers/core/runtime/anthropic-http-provider.d.ts +0 -5
  116. package/dist/providers/core/runtime/anthropic-http-provider.js +0 -26
  117. package/dist/providers/core/runtime/anthropic-http-provider.js.map +1 -1
  118. package/dist/providers/core/runtime/deepseek-http-provider.d.ts +35 -0
  119. package/dist/providers/core/runtime/deepseek-http-provider.js +373 -0
  120. package/dist/providers/core/runtime/deepseek-http-provider.js.map +1 -0
  121. package/dist/providers/core/runtime/deepseek-session-pow.d.ts +55 -0
  122. package/dist/providers/core/runtime/deepseek-session-pow.js +422 -0
  123. package/dist/providers/core/runtime/deepseek-session-pow.js.map +1 -0
  124. package/dist/providers/core/runtime/gemini-cli-http-provider.d.ts +0 -3
  125. package/dist/providers/core/runtime/gemini-cli-http-provider.js +0 -72
  126. package/dist/providers/core/runtime/gemini-cli-http-provider.js.map +1 -1
  127. package/dist/providers/core/runtime/gemini-http-provider.d.ts +1 -7
  128. package/dist/providers/core/runtime/gemini-http-provider.js +3 -110
  129. package/dist/providers/core/runtime/gemini-http-provider.js.map +1 -1
  130. package/dist/providers/core/runtime/http-request-executor.d.ts +1 -0
  131. package/dist/providers/core/runtime/http-request-executor.js +4 -0
  132. package/dist/providers/core/runtime/http-request-executor.js.map +1 -1
  133. package/dist/providers/core/runtime/http-transport-provider.d.ts +10 -4
  134. package/dist/providers/core/runtime/http-transport-provider.js +308 -82
  135. package/dist/providers/core/runtime/http-transport-provider.js.map +1 -1
  136. package/dist/providers/core/runtime/iflow-http-provider.d.ts +0 -4
  137. package/dist/providers/core/runtime/iflow-http-provider.js +0 -28
  138. package/dist/providers/core/runtime/iflow-http-provider.js.map +1 -1
  139. package/dist/providers/core/runtime/provider-factory.d.ts +5 -0
  140. package/dist/providers/core/runtime/provider-factory.js +59 -6
  141. package/dist/providers/core/runtime/provider-factory.js.map +1 -1
  142. package/dist/providers/core/runtime/responses-provider.d.ts +0 -2
  143. package/dist/providers/core/runtime/responses-provider.js +0 -11
  144. package/dist/providers/core/runtime/responses-provider.js.map +1 -1
  145. package/dist/providers/core/strategies/oauth-device-flow.js +16 -1
  146. package/dist/providers/core/strategies/oauth-device-flow.js.map +1 -1
  147. package/dist/providers/core/utils/provider-type-utils.js +2 -1
  148. package/dist/providers/core/utils/provider-type-utils.js.map +1 -1
  149. package/dist/providers/profile/families/anthropic-profile.d.ts +2 -0
  150. package/dist/providers/profile/families/anthropic-profile.js +32 -0
  151. package/dist/providers/profile/families/anthropic-profile.js.map +1 -0
  152. package/dist/providers/profile/families/antigravity-profile.d.ts +2 -0
  153. package/dist/providers/profile/families/antigravity-profile.js +109 -0
  154. package/dist/providers/profile/families/antigravity-profile.js.map +1 -0
  155. package/dist/providers/profile/families/glm-profile.d.ts +2 -0
  156. package/dist/providers/profile/families/glm-profile.js +48 -0
  157. package/dist/providers/profile/families/glm-profile.js.map +1 -0
  158. package/dist/providers/profile/families/iflow-profile.d.ts +2 -0
  159. package/dist/providers/profile/families/iflow-profile.js +232 -0
  160. package/dist/providers/profile/families/iflow-profile.js.map +1 -0
  161. package/dist/providers/profile/families/qwen-profile.d.ts +2 -0
  162. package/dist/providers/profile/families/qwen-profile.js +14 -0
  163. package/dist/providers/profile/families/qwen-profile.js.map +1 -0
  164. package/dist/providers/profile/families/responses-profile.d.ts +2 -0
  165. package/dist/providers/profile/families/responses-profile.js +28 -0
  166. package/dist/providers/profile/families/responses-profile.js.map +1 -0
  167. package/dist/providers/profile/profile-contracts.d.ts +74 -0
  168. package/dist/providers/profile/profile-contracts.js +2 -0
  169. package/dist/providers/profile/profile-contracts.js.map +1 -0
  170. package/dist/providers/profile/profile-registry.d.ts +3 -0
  171. package/dist/providers/profile/profile-registry.js +40 -0
  172. package/dist/providers/profile/profile-registry.js.map +1 -0
  173. package/dist/providers/profile/provider-directory.d.ts +2 -0
  174. package/dist/providers/profile/provider-directory.js +55 -0
  175. package/dist/providers/profile/provider-directory.js.map +1 -0
  176. package/dist/providers/profile/provider-profile-loader.js +43 -3
  177. package/dist/providers/profile/provider-profile-loader.js.map +1 -1
  178. package/dist/providers/profile/provider-profile.d.ts +8 -0
  179. package/dist/scripts/deepseek/pow-solver.mjs +146 -0
  180. package/dist/scripts/deepseek/sha3_wasm_bg.7b9ca65ddd.wasm +0 -0
  181. package/dist/server/handlers/config-admin-handler.js +27 -0
  182. package/dist/server/handlers/config-admin-handler.js.map +1 -1
  183. package/dist/server/runtime/http-server/clock-client-registry.d.ts +113 -0
  184. package/dist/server/runtime/http-server/clock-client-registry.js +592 -0
  185. package/dist/server/runtime/http-server/clock-client-registry.js.map +1 -0
  186. package/dist/server/runtime/http-server/clock-client-routes.d.ts +2 -0
  187. package/dist/server/runtime/http-server/clock-client-routes.js +481 -0
  188. package/dist/server/runtime/http-server/clock-client-routes.js.map +1 -0
  189. package/dist/server/runtime/http-server/clock-daemon-inject-config.d.ts +1 -0
  190. package/dist/server/runtime/http-server/clock-daemon-inject-config.js +11 -0
  191. package/dist/server/runtime/http-server/clock-daemon-inject-config.js.map +1 -0
  192. package/dist/server/runtime/http-server/daemon-admin/auth-handler.js +3 -3
  193. package/dist/server/runtime/http-server/daemon-admin/auth-handler.js.map +1 -1
  194. package/dist/server/runtime/http-server/daemon-admin/auth-session.d.ts +1 -0
  195. package/dist/server/runtime/http-server/daemon-admin/auth-session.js +18 -2
  196. package/dist/server/runtime/http-server/daemon-admin/auth-session.js.map +1 -1
  197. package/dist/server/runtime/http-server/daemon-admin/control-handler.js +2 -15
  198. package/dist/server/runtime/http-server/daemon-admin/control-handler.js.map +1 -1
  199. package/dist/server/runtime/http-server/daemon-admin/credentials-handler.js +65 -7
  200. package/dist/server/runtime/http-server/daemon-admin/credentials-handler.js.map +1 -1
  201. package/dist/server/runtime/http-server/executor-metadata.js +37 -1
  202. package/dist/server/runtime/http-server/executor-metadata.js.map +1 -1
  203. package/dist/server/runtime/http-server/executor-provider.js +55 -0
  204. package/dist/server/runtime/http-server/executor-provider.js.map +1 -1
  205. package/dist/server/runtime/http-server/executor-response.js +49 -1
  206. package/dist/server/runtime/http-server/executor-response.js.map +1 -1
  207. package/dist/server/runtime/http-server/index.d.ts +10 -0
  208. package/dist/server/runtime/http-server/index.js +534 -9
  209. package/dist/server/runtime/http-server/index.js.map +1 -1
  210. package/dist/server/runtime/http-server/managed-process-probe.d.ts +6 -0
  211. package/dist/server/runtime/http-server/managed-process-probe.js +294 -0
  212. package/dist/server/runtime/http-server/managed-process-probe.js.map +1 -0
  213. package/dist/server/runtime/http-server/middleware.js +16 -1
  214. package/dist/server/runtime/http-server/middleware.js.map +1 -1
  215. package/dist/server/runtime/http-server/provider-utils.js +6 -2
  216. package/dist/server/runtime/http-server/provider-utils.js.map +1 -1
  217. package/dist/server/runtime/http-server/request-executor.d.ts +1 -0
  218. package/dist/server/runtime/http-server/request-executor.js +360 -35
  219. package/dist/server/runtime/http-server/request-executor.js.map +1 -1
  220. package/dist/server/runtime/http-server/routes.js +95 -3
  221. package/dist/server/runtime/http-server/routes.js.map +1 -1
  222. package/dist/server/runtime/http-server/stats-manager.d.ts +10 -0
  223. package/dist/server/runtime/http-server/stats-manager.js +119 -16
  224. package/dist/server/runtime/http-server/stats-manager.js.map +1 -1
  225. package/dist/server/runtime/http-server/tmux-session-probe.d.ts +3 -0
  226. package/dist/server/runtime/http-server/tmux-session-probe.js +101 -0
  227. package/dist/server/runtime/http-server/tmux-session-probe.js.map +1 -0
  228. package/dist/server/utils/stage-logger.js +21 -5
  229. package/dist/server/utils/stage-logger.js.map +1 -1
  230. package/dist/token-daemon/index.js +59 -10
  231. package/dist/token-daemon/index.js.map +1 -1
  232. package/dist/token-daemon/server-utils.d.ts +1 -0
  233. package/dist/token-daemon/server-utils.js +4 -1
  234. package/dist/token-daemon/server-utils.js.map +1 -1
  235. package/dist/token-daemon/token-daemon.js +38 -4
  236. package/dist/token-daemon/token-daemon.js.map +1 -1
  237. package/dist/token-daemon/token-types.d.ts +1 -1
  238. package/dist/token-daemon/token-types.js +2 -1
  239. package/dist/token-daemon/token-types.js.map +1 -1
  240. package/dist/token-daemon/token-utils.js +5 -2
  241. package/dist/token-daemon/token-utils.js.map +1 -1
  242. package/dist/utils/clock-client-token.d.ts +3 -0
  243. package/dist/utils/clock-client-token.js +54 -0
  244. package/dist/utils/clock-client-token.js.map +1 -0
  245. package/dist/utils/managed-server-pids.d.ts +25 -0
  246. package/dist/utils/managed-server-pids.js +176 -0
  247. package/dist/utils/managed-server-pids.js.map +1 -0
  248. package/dist/utils/process-lifecycle-logger.d.ts +8 -0
  249. package/dist/utils/process-lifecycle-logger.js +151 -0
  250. package/dist/utils/process-lifecycle-logger.js.map +1 -0
  251. package/dist/utils/runtime-exit-forensics.d.ts +30 -0
  252. package/dist/utils/runtime-exit-forensics.js +101 -0
  253. package/dist/utils/runtime-exit-forensics.js.map +1 -0
  254. package/dist/utils/shutdown-caller-context.d.ts +22 -0
  255. package/dist/utils/shutdown-caller-context.js +25 -0
  256. package/dist/utils/shutdown-caller-context.js.map +1 -0
  257. package/docs/PROVIDERS_BUILTIN.md +8 -0
  258. package/docs/PROVIDER_TYPES.md +3 -1
  259. package/docs/SERVERTOOL_PRE_COMMAND_HOOKS.md +85 -0
  260. package/docs/clock-client-daemon-design.md +343 -0
  261. package/docs/daemon-admin-ui.html +948 -74
  262. package/docs/providers/deepseek-web-provider-design.md +192 -0
  263. package/docs/routing-instructions.md +4 -1
  264. package/docs/stop-message-auto.md +4 -3
  265. package/docs/v2-architecture/PROVIDER-V2-CHANGESET-RELEASE-CHECKLIST.md +80 -0
  266. package/docs/v2-architecture/PROVIDER-V2-LAYERING-ADR-DRAFT.md +225 -0
  267. package/docs/v2-architecture/PROVIDER-V2-MIGRATION-MATRIX-DRAFT.md +88 -0
  268. package/docs/v2-architecture/PROVIDER-V2-PHASED-MIGRATION-ROLLBACK-DRAFT.md +164 -0
  269. package/docs/v2-architecture/PROVIDER-V2-PROFILE-API-REGISTRY-DRAFT.md +201 -0
  270. package/docs/v2-architecture/PROVIDER-V2-PROFILE-GEMINI-DRAFT.md +56 -0
  271. package/docs/v2-architecture/PROVIDER-V2-REFACTOR-OVERVIEW-DRAFT.md +102 -0
  272. package/docs/v2-architecture/PROVIDER-V2-VERIFICATION-MATRIX-DRAFT.md +163 -0
  273. package/package.json +10 -9
  274. package/scripts/copy-compat-assets.mjs +18 -0
  275. package/scripts/copy-modules-config.mjs +1 -0
  276. package/scripts/deepseek/pow-solver.mjs +146 -0
  277. package/scripts/deepseek/sha3_wasm_bg.7b9ca65ddd.wasm +0 -0
  278. package/scripts/ensure-cli-executable.mjs +64 -0
  279. package/scripts/install-global.sh +5 -2
  280. package/scripts/install.sh +1 -1
  281. package/scripts/monitor/daemon-kill-watch.mjs +184 -0
  282. package/scripts/monitor/port-kill-watch.sh +74 -0
  283. package/scripts/quick-install.sh +1 -1
@@ -12,7 +12,7 @@ import { logOAuthDebug } from './oauth-logger.js';
12
12
  import { fetchAntigravityProjectId } from './antigravity-userinfo-helper.js';
13
13
  import { HTTP_PROTOCOLS, LOCAL_HOSTS } from '../../constants/index.js';
14
14
  import { withOAuthRepairEnv } from './oauth-repair-env.js';
15
- import { markInteractiveOAuthRepairAttempt, shouldSkipInteractiveOAuthRepair } from './oauth-repair-cooldown.js';
15
+ import { markInteractiveOAuthRepairAttempt, markInteractiveOAuthRepairSuccess, shouldSkipInteractiveOAuthRepair } from './oauth-repair-cooldown.js';
16
16
  import { openAuthInCamoufox } from '../core/config/camoufox-launcher.js';
17
17
  const TOKEN_REFRESH_SKEW_MS = 60_000;
18
18
  const inFlight = new Map();
@@ -794,7 +794,10 @@ function resolveTokenPortalBaseUrl() {
794
794
  if (configured) {
795
795
  return configured;
796
796
  }
797
- const envPort = Number(process.env.ROUTECODEX_PORT || process.env.RCC_PORT || NaN);
797
+ const envPort = Number(process.env.ROUTECODEX_PORT ||
798
+ process.env.RCC_PORT ||
799
+ process.env.ROUTECODEX_SERVER_PORT ||
800
+ NaN);
798
801
  if (!Number.isFinite(envPort) || envPort <= 0) {
799
802
  // No reliable server port detected; disable portal and fall back to direct OAuth URL
800
803
  return null;
@@ -909,7 +912,17 @@ async function maybeEnrichToken(providerType, tokenData, tokenFilePath) {
909
912
  return merged;
910
913
  }
911
914
  catch (error) {
912
- console.error(`[OAuth] Antigravity: failed to fetch metadata - ${error instanceof Error ? error.message : String(error)}`);
915
+ const msg = error instanceof Error ? error.message : String(error);
916
+ console.error(`[OAuth] Antigravity: failed to fetch metadata - ${msg}`);
917
+ const normalized = msg.toLowerCase();
918
+ const isAuthError = normalized.includes('401') ||
919
+ normalized.includes('unauthorized') ||
920
+ normalized.includes('invalid_grant') ||
921
+ normalized.includes('invalid_token') ||
922
+ normalized.includes('permission denied');
923
+ if (isAuthError) {
924
+ throw error instanceof Error ? error : new Error(msg);
925
+ }
913
926
  }
914
927
  }
915
928
  else if (isGeminiCliFamily(providerType)) {
@@ -1205,7 +1218,8 @@ export async function handleUpstreamInvalidOAuthToken(providerType, auth, upstre
1205
1218
  });
1206
1219
  if (gate.skip) {
1207
1220
  const msLeft = typeof gate.msLeft === 'number' ? gate.msLeft : 0;
1208
- console.warn(`[OAuth] interactive repair skipped due to cooldown (provider=${providerType} status=${statusCode ?? 'unknown'} reason=${cooldownReason} msLeft=${msLeft} tokenFile=${tokenFilePath})`);
1221
+ const attempts = typeof gate.record?.attemptCount === 'number' ? gate.record.attemptCount : 0;
1222
+ console.warn(`[OAuth] interactive repair skipped (provider=${providerType} status=${statusCode ?? 'unknown'} reason=${cooldownReason} attempts=${attempts} msLeft=${msLeft} tokenFile=${tokenFilePath})`);
1209
1223
  return false;
1210
1224
  }
1211
1225
  // Mark immediately so repeated auth failures don't cause infinite auth loops within a short window.
@@ -1238,6 +1252,10 @@ export async function handleUpstreamInvalidOAuthToken(providerType, auth, upstre
1238
1252
  forceReauthorize: false
1239
1253
  });
1240
1254
  });
1255
+ await markInteractiveOAuthRepairSuccess({
1256
+ providerType,
1257
+ tokenFile: tokenFilePath
1258
+ });
1241
1259
  return true;
1242
1260
  }
1243
1261
  catch {
@@ -1267,6 +1285,10 @@ export async function handleUpstreamInvalidOAuthToken(providerType, auth, upstre
1267
1285
  await withOAuthRepairEnv(providerType, async () => {
1268
1286
  await ensureValid(providerType, auth, opts);
1269
1287
  });
1288
+ await markInteractiveOAuthRepairSuccess({
1289
+ providerType,
1290
+ tokenFile: tokenFilePath
1291
+ });
1270
1292
  return true;
1271
1293
  }
1272
1294
  catch {
@@ -1 +1 @@
1
- {"version":3,"file":"oauth-lifecycle.js","sourceRoot":"","sources":["../../../src/providers/auth/oauth-lifecycle.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"oauth-lifecycle.js","sourceRoot":"","sources":["../../../src/providers/auth/oauth-lifecycle.ts"],"names":[],"mappings":"AACA,OAAO,EACL,2BAA2B,EAC3B,sBAAsB,EACvB,MAAM,0CAA0C,CAAC;AAClD,OAAO,EAAE,aAAa,EAAqE,MAAM,+BAA+B,CAAC;AACjI,OAAO,EAAE,MAAM,aAAa,CAAC;AAC7B,OAAO,MAAM,MAAM,IAAI,CAAC;AACxB,OAAO,IAAI,MAAM,MAAM,CAAC;AACxB,OAAO,EAAE,MAAM,IAAI,CAAC;AAEpB,OAAO,EAAE,kBAAkB,EAAE,mBAAmB,EAAE,MAAM,4BAA4B,CAAC;AACrF,OAAO,EAAE,iBAAiB,EAAE,kBAAkB,EAAE,MAAM,2BAA2B,CAAC;AAClF,OAAO,EACL,sBAAsB,EACtB,sBAAsB,EACtB,uBAAuB,EACvB,mBAAmB,EACpB,MAAM,iCAAiC,CAAC;AACzC,OAAO,EAAE,0BAA0B,EAAE,MAAM,0BAA0B,CAAC;AACtE,OAAO,EAAE,aAAa,EAAE,MAAM,mBAAmB,CAAC;AAClD,OAAO,EAAE,yBAAyB,EAAE,MAAM,kCAAkC,CAAC;AAC7E,OAAO,EAAE,cAAc,EAAE,WAAW,EAAE,MAAM,0BAA0B,CAAC;AACvE,OAAO,EAAE,kBAAkB,EAAE,MAAM,uBAAuB,CAAC;AAC3D,OAAO,EACL,iCAAiC,EACjC,iCAAiC,EACjC,gCAAgC,EAEjC,MAAM,4BAA4B,CAAC;AACpC,OAAO,EAAE,kBAAkB,EAAE,MAAM,qCAAqC,CAAC;AAkCzE,MAAM,qBAAqB,GAAG,MAAM,CAAC;AAErC,MAAM,QAAQ,GAA+B,IAAI,GAAG,EAAE,CAAC;AACvD,MAAM,SAAS,GAAwB,IAAI,GAAG,EAAE,CAAC;AACjD,IAAI,eAAe,GAAkB,OAAO,CAAC,OAAO,EAAE,CAAC;AACvD,MAAM,uBAAuB,GAAG,IAAI,GAAG,CAAC,CAAC,YAAY,EAAE,aAAa,CAAC,CAAC,CAAC;AAEvE,SAAS,iBAAiB,CAAC,YAAoB;IAC7C,OAAO,uBAAuB,CAAC,GAAG,CAAC,YAAY,CAAC,WAAW,EAAE,CAAC,CAAC;AACjE,CAAC;AAED,SAAS,MAAM,CAAC,YAAoB,EAAE,SAAkB;IACtD,OAAO,GAAG,YAAY,KAAK,SAAS,IAAI,EAAE,EAAE,CAAC;AAC/C,CAAC;AAED,SAAS,UAAU,CAAC,CAAS;IAC3B,OAAO,CAAC,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,MAAM,EAAE,GAAG,OAAO,CAAC,GAAG,CAAC,IAAI,IAAI,EAAE,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;AAClF,CAAC;AAED,SAAS,gBAAgB,CAAC,YAAoB;IAC5C,MAAM,IAAI,GAAG,OAAO,CAAC,GAAG,CAAC,IAAI,IAAI,EAAE,CAAC;IACpC,IAAI,YAAY,KAAK,OAAO,EAAE,CAAC;QAC7B,OAAO,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE,QAAQ,EAAE,kBAAkB,CAAC,CAAC;IACvD,CAAC;IACD,IAAI,YAAY,KAAK,MAAM,EAAE,CAAC;QAC5B,4DAA4D;QAC5D,iEAAiE;QACjE,OAAO,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE,aAAa,EAAE,MAAM,EAAE,2BAA2B,CAAC,CAAC;IAC7E,CAAC;IACD,IAAI,iBAAiB,CAAC,YAAY,CAAC,EAAE,CAAC;QACpC,MAAM,IAAI,GAAG,YAAY,CAAC,WAAW,EAAE,KAAK,aAAa;YACvD,CAAC,CAAC,wBAAwB;YAC1B,CAAC,CAAC,mBAAmB,CAAC;QACxB,OAAO,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE,aAAa,EAAE,MAAM,EAAE,IAAI,CAAC,CAAC;IACtD,CAAC;IACD,OAAO,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE,aAAa,EAAE,QAAQ,EAAE,GAAG,YAAY,eAAe,CAAC,CAAC;AAClF,CAAC;AAED,SAAS,oBAAoB,CAAC,IAAuB,EAAE,YAAoB;IACzE,MAAM,GAAG,GAAG,OAAO,IAAI,CAAC,SAAS,KAAK,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;IAE5E,+CAA+C;IAC/C,IAAI,CAAC,GAAG,EAAE,CAAC;QACT,MAAM,QAAQ,GAAG,gBAAgB,CAAC,YAAY,CAAC,CAAC;QAChD,IAAI,CAAC,SAAS,GAAG,QAAQ,CAAC;QAC1B,OAAO,QAAQ,CAAC;IAClB,CAAC;IAED,kCAAkC;IAClC,IAAI,GAAG,CAAC,QAAQ,CAAC,GAAG,CAAC,IAAI,GAAG,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,GAAG,CAAC,QAAQ,CAAC,OAAO,CAAC,EAAE,CAAC;QACrE,MAAM,QAAQ,GAAG,UAAU,CAAC,GAAG,CAAC,CAAC;QACjC,IAAI,CAAC,SAAS,GAAG,QAAQ,CAAC;QAC1B,OAAO,QAAQ,CAAC;IAClB,CAAC;IAED,6EAA6E;IAC7E,MAAM,KAAK,GAAG,GAAG,CAAC;IAClB,MAAM,OAAO,GAAG,OAAO,CAAC,GAAG,CAAC,IAAI,IAAI,EAAE,CAAC,OAAO,EAAE,CAAC;IACjD,MAAM,OAAO,GAAG,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,aAAa,EAAE,MAAM,CAAC,CAAC;IAC1D,MAAM,OAAO,GAAG,IAAI,MAAM,CAAC,IAAI,YAAY,iCAAiC,EAAE,GAAG,CAAC,CAAC;IAEnF,MAAM,EAAE,GAAG,YAAY,CAAC,WAAW,EAAE,CAAC;IACtC,6DAA6D;IAC7D,IAAI,EAAE,KAAK,MAAM,IAAI,KAAK,KAAK,SAAS,EAAE,CAAC;QACzC,MAAM,MAAM,GAAG,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,2BAA2B,CAAC,CAAC;QAC/D,IAAI,CAAC;YACH,IAAI,MAAM,CAAC,UAAU,CAAC,MAAM,CAAC,EAAE,CAAC;gBAC9B,IAAI,CAAC,SAAS,GAAG,MAAM,CAAC;gBACxB,OAAO,MAAM,CAAC;YAChB,CAAC;QACH,CAAC;QAAC,MAAM,CAAC;YACP,mCAAmC;QACrC,CAAC;IACH,CAAC;IAED,IAAI,YAAY,GAAkB,IAAI,CAAC;IACvC,IAAI,eAAe,GAAG,CAAC,CAAC;IACxB,IAAI,MAAM,GAAG,CAAC,CAAC;IACf,IAAI,CAAC;QACH,MAAM,OAAO,GAAG,MAAM,CAAC,WAAW,CAAC,OAAO,CAAC,CAAC;QAC5C,KAAK,MAAM,KAAK,IAAI,OAAO,EAAE,CAAC;YAC5B,MAAM,KAAK,GAAG,KAAK,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;YACnC,IAAI,CAAC,KAAK,EAAE,CAAC;gBACX,SAAS;YACX,CAAC;YACD,MAAM,GAAG,GAAG,QAAQ,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;YACnC,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,GAAG,CAAC,IAAI,GAAG,IAAI,CAAC,EAAE,CAAC;gBACtC,SAAS;YACX,CAAC;YACD,MAAM,UAAU,GAAG,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,SAAS,CAAC,CAAC;YAC3C,IAAI,UAAU,KAAK,KAAK,IAAI,GAAG,IAAI,eAAe,EAAE,CAAC;gBACnD,eAAe,GAAG,GAAG,CAAC;gBACtB,YAAY,GAAG,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,KAAK,CAAC,CAAC;YAC3C,CAAC;YACD,IAAI,GAAG,GAAG,MAAM,EAAE,CAAC;gBACjB,MAAM,GAAG,GAAG,CAAC;YACf,CAAC;QACH,CAAC;IACH,CAAC;IAAC,MAAM,CAAC;QACP,uDAAuD;IACzD,CAAC;IAED,IAAI,YAAY,EAAE,CAAC;QACjB,IAAI,CAAC,SAAS,GAAG,YAAY,CAAC;QAC9B,OAAO,YAAY,CAAC;IACtB,CAAC;IAED,wDAAwD;IACxD,iEAAiE;IACjE,sDAAsD;IACtD,MAAM,OAAO,GAAG,CAAC,EAAE,KAAK,MAAM,IAAI,KAAK,KAAK,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC;IAC1E,MAAM,QAAQ,GAAG,GAAG,YAAY,UAAU,OAAO,IAAI,KAAK,OAAO,CAAC;IAClE,MAAM,QAAQ,GAAG,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,QAAQ,CAAC,CAAC;IAC9C,IAAI,CAAC,SAAS,GAAG,QAAQ,CAAC;IAC1B,OAAO,QAAQ,CAAC;AAClB,CAAC;AAED,SAAS,cAAc,CAAC,CAAS,EAAE,EAAE,GAAG,MAAM;IAC5C,MAAM,CAAC,GAAG,SAAS,CAAC,GAAG,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC;IAChC,OAAO,IAAI,CAAC,GAAG,EAAE,GAAG,CAAC,GAAG,EAAE,CAAC;AAC7B,CAAC;AAED,SAAS,cAAc,CAAC,CAAS;IAC/B,SAAS,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,CAAC,GAAG,EAAE,CAAC,CAAC;AAC/B,CAAC;AAED,SAAS,iBAAiB,CAAC,aAAsB;IAC/C,IAAI,CAAC,aAAa,IAAI,OAAO,aAAa,KAAK,QAAQ,EAAE,CAAC;QACxD,OAAO,SAAS,CAAC;IACnB,CAAC;IACD,MAAM,MAAM,GAAG,aAAoB,CAAC;IACpC,MAAM,MAAM,GAAG,MAAM,CAAC,UAAU,CAAC;IACjC,IAAI,OAAO,MAAM,KAAK,QAAQ,IAAI,MAAM,CAAC,QAAQ,CAAC,MAAM,CAAC,EAAE,CAAC;QAC1D,OAAO,MAAM,CAAC;IAChB,CAAC;IACD,MAAM,MAAM,GAAG,MAAM,CAAC,MAAM,CAAC;IAC7B,IAAI,OAAO,MAAM,KAAK,QAAQ,IAAI,MAAM,CAAC,QAAQ,CAAC,MAAM,CAAC,EAAE,CAAC;QAC1D,OAAO,MAAM,CAAC;IAChB,CAAC;IACD,MAAM,QAAQ,GAAG,MAAM,CAAC,QAAQ,CAAC;IACjC,IAAI,QAAQ,IAAI,OAAO,QAAQ,KAAK,QAAQ,EAAE,CAAC;QAC7C,MAAM,UAAU,GAAI,QAAgB,CAAC,MAAM,CAAC;QAC5C,IAAI,OAAO,UAAU,KAAK,QAAQ,IAAI,MAAM,CAAC,QAAQ,CAAC,UAAU,CAAC,EAAE,CAAC;YAClE,OAAO,UAAU,CAAC;QACpB,CAAC;QACD,MAAM,cAAc,GAAI,QAAgB,CAAC,UAAU,CAAC;QACpD,IAAI,OAAO,cAAc,KAAK,QAAQ,IAAI,MAAM,CAAC,QAAQ,CAAC,cAAc,CAAC,EAAE,CAAC;YAC1E,OAAO,cAAc,CAAC;QACxB,CAAC;IACH,CAAC;IACD,OAAO,SAAS,CAAC;AACnB,CAAC;AAED,SAAS,0CAA0C,CAAC,KAAa;IAC/D,IAAI,CAAC,KAAK,EAAE,CAAC;QACX,OAAO,KAAK,CAAC;IACf,CAAC;IACD,OAAO,CACL,KAAK,CAAC,QAAQ,CAAC,qBAAqB,CAAC;QACrC,KAAK,CAAC,QAAQ,CAAC,qBAAqB,CAAC;QACrC,KAAK,CAAC,QAAQ,CAAC,qBAAqB,CAAC;QACrC,KAAK,CAAC,QAAQ,CAAC,gBAAgB,CAAC;QAChC,KAAK,CAAC,QAAQ,CAAC,gBAAgB,CAAC;QAChC,KAAK,CAAC,QAAQ,CAAC,qCAAqC,CAAC;QACrD,KAAK,CAAC,QAAQ,CAAC,wCAAwC,CAAC,CACzD,CAAC;AACJ,CAAC;AAED,SAAS,mCAAmC,CAAC,OAAe;IAC1D,MAAM,GAAG,GAAG,OAAO,OAAO,KAAK,QAAQ,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,CAAC;IACvD,IAAI,CAAC,GAAG,EAAE,CAAC;QACT,OAAO,IAAI,CAAC;IACd,CAAC;IACD,MAAM,UAAU,GAAG,GAAG;SACnB,OAAO,CAAC,OAAO,EAAE,GAAG,CAAC;SACrB,OAAO,CAAC,WAAW,EAAE,GAAG,CAAC;SACzB,OAAO,CAAC,WAAW,EAAE,GAAG,CAAC;SACzB,OAAO,CAAC,SAAS,EAAE,GAAG,CAAC;SACvB,OAAO,CAAC,SAAS,EAAE,GAAG,CAAC,CAAC;IAC3B,MAAM,QAAQ,GAAa;QACzB,iEAAiE;QACjE,iDAAiD;QACjD,oEAAoE;KACrE,CAAC;IACF,KAAK,MAAM,EAAE,IAAI,QAAQ,EAAE,CAAC;QAC1B,MAAM,CAAC,GAAG,UAAU,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;QAC/B,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;YACd,MAAM,GAAG,GAAG,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,OAAO,CAAC,WAAW,EAAE,EAAE,CAAC,CAAC,OAAO,CAAC,UAAU,EAAE,EAAE,CAAC,CAAC;YACjF,IAAI,GAAG,EAAE,CAAC;gBACR,OAAO,GAAG,CAAC;YACb,CAAC;QACH,CAAC;IACH,CAAC;IACD,OAAO,IAAI,CAAC;AACd,CAAC;AAED,SAAS,2BAA2B,CAAC,YAAoB,EAAE,IAAuB;IAChF,MAAM,GAAG,GAAG,OAAO,IAAI,CAAC,SAAS,KAAK,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;IAC5E,IAAI,GAAG,IAAI,CAAC,GAAG,CAAC,QAAQ,CAAC,GAAG,CAAC,IAAI,CAAC,GAAG,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,QAAQ,CAAC,OAAO,CAAC,EAAE,CAAC;QAC/E,OAAO,GAAG,CAAC;IACb,CAAC;IACD,MAAM,IAAI,GAAG,GAAG,CAAC,CAAC,CAAC,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;IAC3C,MAAM,EAAE,GAAG,MAAM,CAAC,YAAY,IAAI,EAAE,CAAC,CAAC,IAAI,EAAE,CAAC,WAAW,EAAE,CAAC;IAC3D,IAAI,IAAI,IAAI,EAAE,EAAE,CAAC;QACf,MAAM,EAAE,GAAG,IAAI,MAAM,CAAC,IAAI,EAAE,+BAA+B,EAAE,GAAG,CAAC,CAAC;QAClE,MAAM,CAAC,GAAG,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;QACzB,MAAM,KAAK,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QACnD,IAAI,KAAK,EAAE,CAAC;YACV,OAAO,KAAK,CAAC;QACf,CAAC;IACH,CAAC;IACD,OAAO,SAAS,CAAC;AACnB,CAAC;AAED,KAAK,UAAU,uCAAuC,CAAC,IAItD;IACC,MAAM,YAAY,GAAG,IAAI,CAAC,YAAY,CAAC;IACvC,MAAM,GAAG,GAAG,IAAI,CAAC,GAAG,CAAC;IACrB,IAAI,CAAC,GAAG,EAAE,CAAC;QACT,OAAO;IACT,CAAC;IACD,MAAM,KAAK,GAAG,2BAA2B,CAAC,YAAY,EAAE,IAAI,CAAC,IAAI,CAAC,CAAC;IAEnE,MAAM,WAAW,GAAG,OAAO,CAAC,GAAG,CAAC,wBAAwB,CAAC;IACzD,MAAM,YAAY,GAAG,OAAO,CAAC,GAAG,CAAC,6BAA6B,CAAC;IAC/D,MAAM,WAAW,GAAG,OAAO,CAAC,GAAG,CAAC,4BAA4B,CAAC;IAC7D,MAAM,YAAY,GAAG,OAAO,CAAC,GAAG,CAAC,6BAA6B,CAAC;IAE/D,OAAO,CAAC,GAAG,CAAC,wBAAwB,GAAG,UAAU,CAAC;IAClD,OAAO,OAAO,CAAC,GAAG,CAAC,6BAA6B,CAAC;IACjD,OAAO,CAAC,GAAG,CAAC,4BAA4B,GAAG,GAAG,CAAC;IAC/C,OAAO,CAAC,GAAG,CAAC,6BAA6B,GAAG,GAAG,CAAC;IAChD,IAAI,CAAC;QACH,MAAM,EAAE,GAAG,MAAM,kBAAkB,CAAC,EAAE,GAAG,EAAE,QAAQ,EAAE,YAAY,EAAE,KAAK,EAAE,CAAC,CAAC;QAC5E,IAAI,EAAE,EAAE,CAAC;YACP,OAAO,CAAC,IAAI,CAAC,oEAAoE,YAAY,UAAU,KAAK,IAAI,CAAC,CAAC;QACpH,CAAC;IACH,CAAC;IAAC,MAAM,CAAC;QACP,oCAAoC;IACtC,CAAC;YAAS,CAAC;QACT,IAAI,WAAW,KAAK,SAAS,EAAE,CAAC;YAC9B,OAAO,OAAO,CAAC,GAAG,CAAC,wBAAwB,CAAC;QAC9C,CAAC;aAAM,CAAC;YACN,OAAO,CAAC,GAAG,CAAC,wBAAwB,GAAG,WAAW,CAAC;QACrD,CAAC;QACD,IAAI,YAAY,KAAK,SAAS,EAAE,CAAC;YAC/B,OAAO,OAAO,CAAC,GAAG,CAAC,6BAA6B,CAAC;QACnD,CAAC;aAAM,CAAC;YACN,OAAO,CAAC,GAAG,CAAC,6BAA6B,GAAG,YAAY,CAAC;QAC3D,CAAC;QACD,IAAI,WAAW,KAAK,SAAS,EAAE,CAAC;YAC9B,OAAO,OAAO,CAAC,GAAG,CAAC,4BAA4B,CAAC;QAClD,CAAC;aAAM,CAAC;YACN,OAAO,CAAC,GAAG,CAAC,4BAA4B,GAAG,WAAW,CAAC;QACzD,CAAC;QACD,IAAI,YAAY,KAAK,SAAS,EAAE,CAAC;YAC/B,OAAO,OAAO,CAAC,GAAG,CAAC,6BAA6B,CAAC;QACnD,CAAC;aAAM,CAAC;YACN,OAAO,CAAC,GAAG,CAAC,6BAA6B,GAAG,YAAY,CAAC;QAC3D,CAAC;IACH,CAAC;AACH,CAAC;AAED,SAAS,aAAa,CAAC,IAAe;IACpC,OAAO,OAAO,CAAC,IAAI,IAAI,OAAO,IAAI,CAAC,IAAI,KAAK,QAAQ,IAAI,IAAI,CAAC,IAAI,CAAC,WAAW,EAAE,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC,CAAC;AACrG,CAAC;AAED,SAAS,iBAAiB,CAAC,KAAc;IACvC,OAAO,OAAO,KAAK,KAAK,QAAQ,IAAI,KAAK,CAAC,IAAI,EAAE,CAAC,MAAM,GAAG,CAAC,CAAC;AAC9D,CAAC;AAED,SAAS,8BAA8B,CAAC,KAAoB;IAC1D,MAAM,GAAG,GAAG,KAAkC,CAAC;IAC/C,MAAM,SAAS,GAAG,GAAG,CAAC,KAAK,CAAC;IAC5B,IAAI,CAAC,SAAS,IAAI,OAAO,SAAS,KAAK,QAAQ,EAAE,CAAC;QAChD,OAAO,IAAI,CAAC;IACd,CAAC;IACD,MAAM,QAAQ,GAAG,SAA0B,CAAC;IAC5C,MAAM,MAAM,GAAG,QAAQ,CAAC,YAAY,CAAC;IACrC,IAAI,CAAC,iBAAiB,CAAC,MAAM,CAAC,EAAE,CAAC;QAC/B,OAAO,IAAI,CAAC;IACd,CAAC;IAED,MAAM,GAAG,GAAG,EAAE,GAAI,QAA6B,EAAE,CAAC;IAClD,MAAM,IAAI,GAAG,KAAsB,CAAC;IAEpC,IAAI,OAAO,IAAI,CAAC,QAAQ,KAAK,SAAS;QAAE,GAAG,CAAC,QAAQ,GAAG,IAAI,CAAC,QAAQ,CAAC;IACrE,IAAI,OAAO,IAAI,CAAC,eAAe,KAAK,QAAQ;QAAE,GAAG,CAAC,eAAe,GAAG,IAAI,CAAC,eAAe,CAAC;IACzF,IAAI,OAAO,IAAI,CAAC,WAAW,KAAK,QAAQ,IAAI,OAAO,IAAI,CAAC,WAAW,KAAK,QAAQ;QAAE,GAAG,CAAC,WAAW,GAAG,IAAI,CAAC,WAAW,CAAC;IAErH,IAAI,OAAO,IAAI,CAAC,cAAc,KAAK,SAAS;QAAE,GAAG,CAAC,cAAc,GAAG,IAAI,CAAC,cAAc,CAAC;IACvF,IAAI,OAAO,IAAI,CAAC,aAAa,KAAK,SAAS;QAAE,GAAG,CAAC,aAAa,GAAG,IAAI,CAAC,aAAa,CAAC;IACpF,IAAI,OAAO,IAAI,CAAC,qBAAqB,KAAK,QAAQ;QAAE,GAAG,CAAC,qBAAqB,GAAG,IAAI,CAAC,qBAAqB,CAAC;IAC3G,IAAI,OAAO,IAAI,CAAC,iBAAiB,KAAK,QAAQ,IAAI,OAAO,IAAI,CAAC,iBAAiB,KAAK,QAAQ,EAAE,CAAC;QAC7F,GAAG,CAAC,iBAAiB,GAAG,IAAI,CAAC,iBAAiB,CAAC;IACjD,CAAC;IAED,IAAI,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,gBAAgB,CAAC;QAAE,GAAG,CAAC,gBAAgB,GAAG,IAAI,CAAC,gBAAgB,CAAC;IACvF,IAAI,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,eAAe,CAAC;QAAE,GAAG,CAAC,eAAe,GAAG,IAAI,CAAC,eAAe,CAAC;IAEpF,IAAI,CAAC,iBAAiB,CAAC,GAAG,CAAC,UAAU,CAAC,IAAI,iBAAiB,CAAC,IAAI,CAAC,UAAU,CAAC,EAAE,CAAC;QAC7E,GAAG,CAAC,UAAU,GAAG,MAAM,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;IAC3C,CAAC;IACD,IAAI,CAAC,iBAAiB,CAAC,GAAG,CAAC,SAAS,CAAC,IAAI,iBAAiB,CAAC,IAAI,CAAC,SAAS,CAAC,EAAE,CAAC;QAC3E,GAAG,CAAC,SAAS,GAAG,MAAM,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;IACzC,CAAC;IACD,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,GAAG,CAAC,QAAQ,CAAC,IAAI,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,QAAQ,CAAC,EAAE,CAAC;QACjE,GAAG,CAAC,QAAQ,GAAG,IAAI,CAAC,QAAQ,CAAC;IAC/B,CAAC;IACD,IAAI,CAAC,iBAAiB,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,iBAAiB,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC;QACnE,GAAG,CAAC,KAAK,GAAG,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;IACjC,CAAC;IAED,MAAM,eAAe,GAAI,QAA2C,CAAC,gBAAgB,CAAC;IACtF,IAAI,CAAC,iBAAiB,CAAC,GAAG,CAAC,UAAU,CAAC,IAAI,OAAO,eAAe,KAAK,QAAQ,EAAE,CAAC;QAC9E,GAAG,CAAC,UAAU,GAAG,eAAe,GAAG,cAAc,CAAC,CAAC,CAAC,eAAe,CAAC,CAAC,CAAC,eAAe,GAAG,IAAI,CAAC;IAC/F,CAAC;IAED,OAAO,GAAG,CAAC;AACb,CAAC;AAED,SAAS,aAAa,CAAC,KAA2B;IAChD,IAAI,CAAC,KAAK,IAAI,OAAO,KAAK,KAAK,QAAQ,EAAE,CAAC;QACxC,OAAO,IAAI,CAAC;IACd,CAAC;IACD,MAAM,UAAU,GAAG,8BAA8B,CAAC,KAAK,CAAC,CAAC;IACzD,IAAI,UAAU,EAAE,CAAC;QACf,OAAO,UAAU,CAAC;IACpB,CAAC;IACD,MAAM,IAAI,GAAG,EAAE,GAAG,KAAK,EAAsB,CAAC;IAC9C,IAAI,CAAC,iBAAiB,CAAC,IAAI,CAAC,MAAM,CAAC,IAAI,iBAAiB,CAAC,IAAI,CAAC,OAAO,CAAC,EAAE,CAAC;QACvE,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC,OAAO,CAAC;IAC7B,CAAC;IACD,OAAO,IAAI,CAAC;AACd,CAAC;AAED,KAAK,UAAU,iBAAiB,CAAC,IAAY;IAC3C,IAAI,CAAC;QACH,MAAM,GAAG,GAAG,MAAM,EAAE,CAAC,QAAQ,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC;QAC7C,OAAO,aAAa,CAAC,IAAI,CAAC,KAAK,CAAC,GAAG,CAAkB,CAAC,CAAC;IACzD,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,IAAI,CAAC;IACd,CAAC;AACH,CAAC;AAED,KAAK,UAAU,eAAe,CAAC,IAAY;IACzC,IAAI,CAAC,IAAI,EAAE,CAAC;QACV,OAAO,IAAI,CAAC;IACd,CAAC;IACD,IAAI,CAAC;QACH,MAAM,EAAE,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;IACxB,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,MAAM,IAAI,GAAI,KAAkC,EAAE,IAAI,CAAC;QACvD,IAAI,IAAI,KAAK,QAAQ,EAAE,CAAC;YACtB,OAAO,IAAI,CAAC;QACd,CAAC;QACD,MAAM,KAAK,CAAC;IACd,CAAC;IACD,MAAM,MAAM,GAAG,GAAG,IAAI,IAAI,IAAI,CAAC,GAAG,EAAE,MAAM,CAAC;IAC3C,IAAI,CAAC;QACH,MAAM,EAAE,CAAC,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC;QAChC,aAAa,CAAC,yBAAyB,MAAM,EAAE,CAAC,CAAC;QACjD,OAAO,MAAM,CAAC;IAChB,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,aAAa,CACX,gCAAgC,IAAI,MAAM,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,EAAE,CACnG,CAAC;QACF,OAAO,IAAI,CAAC;IACd,CAAC;AACH,CAAC;AAED,KAAK,UAAU,0BAA0B,CAAC,UAAyB,EAAE,MAAc;IACjF,IAAI,CAAC,UAAU,EAAE,CAAC;QAChB,OAAO;IACT,CAAC;IACD,IAAI,CAAC;QACH,MAAM,EAAE,CAAC,QAAQ,CAAC,UAAU,EAAE,MAAM,CAAC,CAAC;QACtC,aAAa,CAAC,0BAA0B,MAAM,EAAE,CAAC,CAAC;IACpD,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,aAAa,CACX,iCAAiC,MAAM,MAAM,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,EAAE,CACtG,CAAC;IACJ,CAAC;YAAS,CAAC;QACT,IAAI,CAAC;YACH,MAAM,EAAE,CAAC,MAAM,CAAC,UAAU,CAAC,CAAC;QAC9B,CAAC;QAAC,MAAM,CAAC;YACP,yBAAyB;QAC3B,CAAC;IACH,CAAC;AACH,CAAC;AAED,KAAK,UAAU,iBAAiB,CAAC,UAAyB;IACxD,IAAI,CAAC,UAAU,EAAE,CAAC;QAChB,OAAO;IACT,CAAC;IACD,IAAI,CAAC;QACH,MAAM,EAAE,CAAC,MAAM,CAAC,UAAU,CAAC,CAAC;IAC9B,CAAC;IAAC,MAAM,CAAC;QACP,SAAS;IACX,CAAC;AACH,CAAC;AAED,SAAS,kBAAkB,CAAC,KAA8B;IACxD,IAAI,CAAC,KAAK,EAAE,CAAC;QACX,OAAO,SAAS,CAAC;IACnB,CAAC;IACD,IAAI,iBAAiB,CAAC,KAAK,CAAC,YAAY,CAAC,EAAE,CAAC;QAC1C,OAAO,KAAK,CAAC,YAAY,CAAC;IAC5B,CAAC;IACD,IAAI,iBAAiB,CAAC,KAAK,CAAC,WAAW,CAAC,EAAE,CAAC;QACzC,OAAO,KAAK,CAAC,WAAW,CAAC;IAC3B,CAAC;IACD,OAAO,SAAS,CAAC;AACnB,CAAC;AAED,SAAS,aAAa,CAAC,KAA8B;IACnD,IAAI,CAAC,KAAK,EAAE,CAAC;QACX,OAAO,SAAS,CAAC;IACnB,CAAC;IACD,MAAM,SAAS,GAAG,KAAK,CAAC,MAAM,IAAI,KAAK,CAAC,OAAO,CAAC;IAChD,OAAO,iBAAiB,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;AACtE,CAAC;AAED,SAAS,cAAc,CAAC,KAA8B;IACpD,IAAI,CAAC,KAAK,EAAE,CAAC;QACX,OAAO,KAAK,CAAC;IACf,CAAC;IACD,OAAO,iBAAiB,CAAC,KAAK,CAAC,MAAM,IAAI,KAAK,CAAC,OAAO,CAAC,CAAC;AAC1D,CAAC;AAED;;;GAGG;AACH,SAAS,mBAAmB,CAAC,KAA8B;IACzD,MAAM,MAAM,GAAG,aAAa,CAAC,KAAK,CAAC,CAAC;IACpC,IAAI,CAAC,MAAM,EAAE,CAAC;QACZ,OAAO,KAAK,CAAC;IACf,CAAC;IACD,MAAM,MAAM,GAAG,kBAAkB,CAAC,KAAK,CAAC,CAAC;IACzC,OAAO,CAAC,MAAM,IAAI,MAAM,KAAK,MAAM,CAAC;AACtC,CAAC;AAED,SAAS,cAAc,CAAC,KAA8B;IACpD,OAAO,iBAAiB,CAAC,KAAK,EAAE,YAAY,CAAC,IAAI,iBAAiB,CAAC,KAAK,EAAE,WAAW,CAAC,CAAC;AACzF,CAAC;AAED,SAAS,YAAY,CAAC,KAA8B;IAClD,IAAI,CAAC,KAAK,EAAE,CAAC;QACX,OAAO,IAAI,CAAC;IACd,CAAC;IACD,MAAM,GAAG,GAAG,KAAK,CAAC,UAAU,IAAI,KAAK,CAAC,OAAO,IAAI,KAAK,CAAC,WAAW,CAAC;IACnE,IAAI,OAAO,GAAG,KAAK,QAAQ,IAAI,MAAM,CAAC,QAAQ,CAAC,GAAG,CAAC,EAAE,CAAC;QACpD,OAAO,GAAG,CAAC;IACb,CAAC;IACD,IAAI,OAAO,GAAG,KAAK,QAAQ,EAAE,CAAC;QAC5B,MAAM,MAAM,GAAG,MAAM,CAAC,GAAG,CAAC,CAAC;QAC3B,IAAI,MAAM,CAAC,QAAQ,CAAC,MAAM,CAAC,EAAE,CAAC;YAC5B,OAAO,MAAM,CAAC;QAChB,CAAC;QACD,MAAM,EAAE,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;QAC3B,OAAO,MAAM,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC;IACzC,CAAC;IACD,OAAO,IAAI,CAAC;AACd,CAAC;AAED,SAAS,gBAAgB,CAAC,KAA2B;IACnD,IAAI,CAAC,KAAK,IAAI,OAAO,KAAK,KAAK,QAAQ,EAAE,CAAC;QACxC,OAAO,SAAS,CAAC;IACnB,CAAC;IACD,MAAM,MAAM,GAAG,KAAgC,CAAC;IAChD,IAAI,iBAAiB,CAAC,MAAM,CAAC,UAAU,CAAC,EAAE,CAAC;QACzC,OAAO,MAAM,CAAC,UAAU,CAAC;IAC3B,CAAC;IACD,IAAI,iBAAiB,CAAC,MAAM,CAAC,SAAS,CAAC,EAAE,CAAC;QACxC,OAAO,MAAM,CAAC,SAAS,CAAC;IAC1B,CAAC;IACD,OAAO,SAAS,CAAC;AACnB,CAAC;AAED,KAAK,UAAU,gBAAgB,CAAC,IAAY;IAC1C,IAAI,CAAC,IAAI,EAAE,CAAC;QACV,OAAO,IAAI,CAAC;IACd,CAAC;IACD,IAAI,CAAC;QACH,MAAM,GAAG,GAAG,MAAM,EAAE,CAAC,QAAQ,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC;QAC7C,MAAM,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,CAAkB,CAAC;QAChD,OAAO,MAAM,IAAI,OAAO,MAAM,KAAK,QAAQ,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,IAAI,CAAC;IAC9D,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,IAAI,CAAC;IACd,CAAC;AACH,CAAC;AAED,SAAS,4BAA4B,CAAC,KAA8B;IAClE,IAAI,CAAC,KAAK,EAAE,CAAC;QACX,OAAO,SAAS,CAAC;IACnB,CAAC;IACD,MAAM,SAAS,GAAI,KAAuB,CAAC,gBAAgB,CAAC;IAC5D,IAAI,OAAO,SAAS,KAAK,QAAQ,IAAI,MAAM,CAAC,QAAQ,CAAC,SAAS,CAAC,EAAE,CAAC;QAChE,OAAO,SAAS,GAAG,cAAc,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,SAAS,GAAG,IAAI,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;IAC/E,CAAC;IACD,MAAM,SAAS,GAAG,YAAY,CAAC,KAAK,CAAC,CAAC;IACtC,IAAI,CAAC,SAAS,EAAE,CAAC;QACf,OAAO,SAAS,CAAC;IACnB,CAAC;IACD,OAAO,SAAS,GAAG,cAAc,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,SAAS,GAAG,IAAI,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC;AAC3F,CAAC;AAED,KAAK,UAAU,4BAA4B,CACzC,SAAwB,EACxB,aAAqB;IAErB,MAAM,WAAW,GAAG,MAAM,gBAAgB,CAAC,aAAa,CAAC,CAAC;IAC1D,MAAM,QAAQ,GAAG,WAAW,IAAI,OAAO,WAAW,KAAK,QAAQ,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,IAAI,CAAC;IACrF,MAAM,aAAa,GAAG,QAAQ,IAAI,OAAQ,QAA0B,CAAC,KAAK,KAAK,QAAQ;QACrF,CAAC,CAAG,QAA0B,CAAC,KAAuB;QACtD,CAAC,CAAC,IAAI,CAAC;IAET,MAAM,SAAS,GAAG,aAAa,CAAC,SAAS,CAAC,IAAK,SAA8B,CAAC;IAC9E,MAAM,WAAW,GAAG,kBAAkB,CAAC,SAAS,CAAC,CAAC;IAClD,IAAI,CAAC,WAAW,EAAE,CAAC;QACjB,OAAO,SAAS,CAAC;IACnB,CAAC;IAED,MAAM,SAAS,GAAkB;QAC/B,GAAG,CAAC,aAAa,IAAI,EAAE,CAAC;QACxB,YAAY,EAAE,WAAW;QACzB,UAAU,EAAE,iBAAiB,CAAE,SAA2B,CAAC,UAAU,CAAC;YACpE,CAAC,CAAC,MAAM,CAAE,SAA2B,CAAC,UAAU,CAAC;YACjD,CAAC,CAAG,aAAsC,EAAE,UAAiC,IAAI,QAAQ;KAC5F,CAAC;IAEF,MAAM,YAAY,GAAI,SAA2B,CAAC,aAAa,CAAC;IAChE,IAAI,iBAAiB,CAAC,YAAY,CAAC,EAAE,CAAC;QACpC,SAAS,CAAC,aAAa,GAAG,YAAY,CAAC;IACzC,CAAC;SAAM,IAAI,aAAa,IAAI,iBAAiB,CAAC,aAAa,CAAC,aAAa,CAAC,EAAE,CAAC;QAC3E,SAAS,CAAC,aAAa,GAAG,aAAa,CAAC,aAAa,CAAC;IACxD,CAAC;IAED,MAAM,SAAS,GAAI,SAA2B,CAAC,UAAU,CAAC;IAC1D,IAAI,OAAO,SAAS,KAAK,QAAQ,IAAI,MAAM,CAAC,QAAQ,CAAC,SAAS,CAAC,EAAE,CAAC;QAChE,SAAS,CAAC,UAAU,GAAG,SAAS,CAAC;IACnC,CAAC;SAAM,IAAI,aAAa,IAAI,OAAO,aAAa,CAAC,UAAU,KAAK,QAAQ,EAAE,CAAC;QACzE,SAAS,CAAC,UAAU,GAAG,aAAa,CAAC,UAAU,CAAC;IAClD,CAAC;IAED,MAAM,eAAe,GAAG,4BAA4B,CAAC,SAAS,CAAC,CAAC;IAChE,IAAI,OAAO,eAAe,KAAK,QAAQ,EAAE,CAAC;QACxC,SAAS,CAAC,gBAAgB,GAAG,eAAe,CAAC;IAC/C,CAAC;SAAM,IAAI,aAAa,IAAI,OAAO,aAAa,CAAC,gBAAgB,KAAK,QAAQ,EAAE,CAAC;QAC/E,SAAS,CAAC,gBAAgB,GAAG,aAAa,CAAC,gBAAgB,CAAC;IAC9D,CAAC;IAED,MAAM,KAAK,GAAI,SAA2B,CAAC,KAAK,CAAC;IACjD,IAAI,iBAAiB,CAAC,KAAK,CAAC,EAAE,CAAC;QAC7B,SAAS,CAAC,KAAK,GAAG,MAAM,CAAC,KAAK,CAAC,CAAC;IAClC,CAAC;SAAM,IAAI,aAAa,IAAI,iBAAiB,CAAC,aAAa,CAAC,KAAK,CAAC,EAAE,CAAC;QACnE,SAAS,CAAC,KAAK,GAAG,MAAM,CAAC,aAAa,CAAC,KAAK,CAAC,CAAC;IAChD,CAAC;IAED,MAAM,SAAS,GAAG,gBAAgB,CAAC,SAA0B,CAAC,CAAC;IAC/D,IAAI,SAAS,EAAE,CAAC;QACd,SAAS,CAAC,UAAU,GAAG,SAAS,CAAC;IACnC,CAAC;SAAM,IAAI,aAAa,IAAI,iBAAiB,CAAC,aAAa,CAAC,UAAU,CAAC,EAAE,CAAC;QACxE,SAAS,CAAC,UAAU,GAAG,MAAM,CAAC,aAAa,CAAC,UAAU,CAAC,CAAC;IAC1D,CAAC;IAED,MAAM,SAAS,GAAI,SAA2B,CAAC,UAAU,IAAK,SAA2B,CAAC,SAAS,CAAC;IACpG,IAAI,iBAAiB,CAAC,SAAS,CAAC,EAAE,CAAC;QACjC,SAAS,CAAC,UAAU,GAAG,MAAM,CAAC,SAAS,CAAC,CAAC;IAC3C,CAAC;SAAM,IAAI,aAAa,IAAI,iBAAiB,CAAC,aAAa,CAAC,UAAU,CAAC,EAAE,CAAC;QACxE,SAAS,CAAC,UAAU,GAAG,MAAM,CAAC,aAAa,CAAC,UAAU,CAAC,CAAC;IAC1D,CAAC;IAED,MAAM,MAAM,GAAkB;QAC5B,GAAG,CAAC,QAAQ,IAAI,EAAE,CAAC;QACnB,KAAK,EAAE,SAAS;KACjB,CAAC;IAEF,4DAA4D;IAC5D,MAAM,CAAC,YAAY,GAAG,SAAS,CAAC,YAAY,CAAC;IAC7C,IAAI,iBAAiB,CAAC,SAAS,CAAC,aAAa,CAAC,EAAE,CAAC;QAC/C,MAAM,CAAC,aAAa,GAAG,SAAS,CAAC,aAAa,CAAC;IACjD,CAAC;IACD,IAAI,OAAO,SAAS,CAAC,UAAU,KAAK,QAAQ,EAAE,CAAC;QAC7C,MAAM,CAAC,UAAU,GAAG,SAAS,CAAC,UAAU,CAAC;IAC3C,CAAC;IACD,IAAI,iBAAiB,CAAC,SAAS,CAAC,UAAU,CAAC,EAAE,CAAC;QAC5C,MAAM,CAAC,UAAU,GAAG,SAAS,CAAC,UAAU,CAAC;IAC3C,CAAC;IACD,IAAI,OAAO,SAAS,CAAC,gBAAgB,KAAK,QAAQ,EAAE,CAAC;QACnD,MAAM,WAAW,GAAG,SAAS,CAAC,gBAAgB,GAAG,IAAI,CAAC;QACtD,MAAM,CAAC,UAAU,GAAG,WAAW,CAAC;QAChC,MAAM,CAAC,WAAW,GAAG,WAAW,CAAC;QACjC,MAAM,CAAC,OAAO,GAAG,IAAI,IAAI,CAAC,WAAW,CAAC,CAAC,WAAW,EAAE,CAAC;IACvD,CAAC;IAED,MAAM,KAAK,GAAI,SAA2B,CAAC,KAAK,CAAC;IACjD,IAAI,iBAAiB,CAAC,KAAK,CAAC,EAAE,CAAC;QAC7B,MAAM,CAAC,KAAK,GAAG,MAAM,CAAC,KAAK,CAAC,CAAC;IAC/B,CAAC;IACD,MAAM,OAAO,GAAI,SAA2B,CAAC,QAAQ,CAAC;IACtD,IAAI,iBAAiB,CAAC,OAAO,CAAC,EAAE,CAAC;QAC/B,MAAM,CAAC,QAAQ,GAAG,MAAM,CAAC,OAAO,CAAC,CAAC;IACpC,CAAC;IAED,IAAI,iBAAiB,CAAC,KAAK,CAAC,EAAE,CAAC;QAC7B,MAAM,CAAC,KAAK,GAAG,MAAM,CAAC,KAAK,CAAC,CAAC;IAC/B,CAAC;IACD,IAAI,SAAS,EAAE,CAAC;QACd,MAAM,CAAC,UAAU,GAAG,SAAS,CAAC;IAChC,CAAC;IACD,IAAI,KAAK,CAAC,OAAO,CAAE,SAA2B,CAAC,QAAQ,CAAC,EAAE,CAAC;QACzD,MAAM,CAAC,QAAQ,GAAI,SAA2B,CAAC,QAAqB,CAAC;IACvE,CAAC;IAED,OAAO,MAAM,CAAC;AAChB,CAAC;AAED,KAAK,UAAU,sBAAsB,CACnC,YAAoB,EACpB,aAAqB,EACrB,SAAwB;IAExB,IAAI,iBAAiB,CAAC,YAAY,CAAC,EAAE,CAAC;QACpC,OAAO,MAAM,4BAA4B,CAAC,SAAS,EAAE,aAAa,CAAC,CAAC;IACtE,CAAC;IACD,OAAO,SAAS,CAAC;AACnB,CAAC;AAED,SAAS,gBAAgB,CAAC,KAA8B;IACtD,IAAI,CAAC,KAAK,EAAE,CAAC;QACX,OAAO,KAAK,CAAC;IACf,CAAC;IACD,MAAM,MAAM,GAAI,KAAa,CAAC,SAAS,IAAK,KAAa,CAAC,SAAS,CAAC;IACpE,IAAI,OAAO,MAAM,KAAK,SAAS,EAAE,CAAC;QAChC,OAAO,MAAM,CAAC;IAChB,CAAC;IACD,IAAI,OAAO,MAAM,KAAK,QAAQ,EAAE,CAAC;QAC/B,MAAM,UAAU,GAAG,MAAM,CAAC,IAAI,EAAE,CAAC,WAAW,EAAE,CAAC;QAC/C,OAAO,UAAU,KAAK,GAAG,IAAI,UAAU,KAAK,MAAM,IAAI,UAAU,KAAK,KAAK,CAAC;IAC7E,CAAC;IACD,OAAO,KAAK,CAAC;AACf,CAAC;AAED,SAAS,kBAAkB,CAAC,KAA8B,EAAE,YAAoB;IAC9E,MAAM,SAAS,GAAG,cAAc,CAAC,KAAK,CAAC,CAAC;IACxC,MAAM,SAAS,GAAG,cAAc,CAAC,KAAK,CAAC,CAAC;IACxC,MAAM,SAAS,GAAG,YAAY,CAAC,KAAK,CAAC,CAAC;IACtC,MAAM,eAAe,GAAG,SAAS,KAAK,IAAI,IAAI,IAAI,CAAC,GAAG,EAAE,IAAI,CAAC,SAAS,GAAG,qBAAqB,CAAC,CAAC;IAChG,IAAI,WAAoB,CAAC;IACzB,MAAM,EAAE,GAAG,YAAY,CAAC,WAAW,EAAE,CAAC;IACtC,IAAI,EAAE,KAAK,OAAO,EAAE,CAAC;QACnB,WAAW,GAAG,SAAS,IAAI,CAAC,CAAC,eAAe,IAAI,SAAS,CAAC,CAAC;IAC7D,CAAC;SAAM,IAAI,EAAE,KAAK,MAAM,EAAE,CAAC;QACzB,qEAAqE;QACrE,WAAW,GAAG,mBAAmB,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,eAAe,IAAI,CAAC,SAAS,IAAI,SAAS,CAAC,CAAC,CAAC;IAC7F,CAAC;SAAM,CAAC;QACN,WAAW,GAAG,CAAC,SAAS,IAAI,SAAS,CAAC,IAAI,CAAC,eAAe,CAAC;IAC7D,CAAC;IAED,OAAO,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,eAAe,EAAE,WAAW,EAAE,CAAC;AAC3E,CAAC;AAED,SAAS,gBAAgB,CAAC,YAAoB,EAAE,KAA8B,EAAE,SAAyB;IACvG,IAAI,CAAC;QACH,MAAM,SAAS,GAAG,cAAc,CAAC,KAAK,CAAC,CAAC;QACxC,MAAM,SAAS,GAAG,cAAc,CAAC,KAAK,CAAC,CAAC;QACxC,MAAM,MAAM,GAAG,KAAK,EAAE,UAAU,IAAI,KAAK,EAAE,OAAO,IAAI,KAAK,EAAE,WAAW,IAAI,IAAI,CAAC;QACjF,aAAa,CACX,gCAAgC,YAAY,WAAW,OAAO,CAAC,KAAK,CAAC,cAAc,SAAS,cAAc,SAAS,WAAW,MAAM,CAAC,MAAM,CAAC,EAAE,CAC/I,CAAC;QACF,IAAI,YAAY,KAAK,OAAO,EAAE,CAAC;YAC7B,aAAa,CAAC,0CAA0C,MAAM,CAAC,SAAS,CAAC,aAAa,CAAC,aAAa,MAAM,CAAC,SAAS,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC;QACpI,CAAC;IACH,CAAC;IAAC,MAAM,CAAC;QACP,0BAA0B;IAC5B,CAAC;AACH,CAAC;AAED,SAAS,sBAAsB,CAAC,QAAyB,EAAE,IAAuB;IAChF,MAAM,UAAU,GAAmB,EAAE,GAAG,QAAQ,CAAC,SAAS,EAAE,CAAC;IAC7D,IAAI,iBAAiB,CAAC,IAAI,CAAC,QAAQ,CAAC,EAAE,CAAC;QACrC,UAAU,CAAC,QAAQ,GAAG,IAAI,CAAC,QAAS,CAAC;IACvC,CAAC;IACD,IAAI,iBAAiB,CAAC,IAAI,CAAC,aAAa,CAAC,EAAE,CAAC;QAC1C,UAAU,CAAC,aAAa,GAAG,IAAI,CAAC,aAAc,CAAC;IACjD,CAAC;IACD,IAAI,iBAAiB,CAAC,IAAI,CAAC,gBAAgB,CAAC,EAAE,CAAC;QAC7C,UAAU,CAAC,gBAAgB,GAAG,IAAI,CAAC,gBAAgB,CAAC;IACtD,CAAC;IACD,IAAI,iBAAiB,CAAC,IAAI,CAAC,WAAW,CAAC,EAAE,CAAC;QACxC,UAAU,CAAC,WAAW,GAAG,IAAI,CAAC,WAAW,CAAC;IAC5C,CAAC;IACD,OAAO,UAAU,CAAC;AACpB,CAAC;AAED,KAAK,UAAU,uBAAuB,CAAC,MAAyB;IAC9D,MAAM,IAAI,GAAG,EAAE,GAAG,MAAM,EAAE,CAAC;IAC3B,IAAI,iBAAiB,CAAC,OAAO,CAAC,GAAG,CAAC,eAAe,CAAC,EAAE,CAAC;QACnD,IAAI,CAAC,QAAQ,GAAG,OAAO,CAAC,GAAG,CAAC,eAAgB,CAAC,IAAI,EAAE,CAAC;IACtD,CAAC;IACD,IAAI,iBAAiB,CAAC,OAAO,CAAC,GAAG,CAAC,mBAAmB,CAAC,EAAE,CAAC;QACvD,IAAI,CAAC,YAAY,GAAG,OAAO,CAAC,GAAG,CAAC,mBAAoB,CAAC,IAAI,EAAE,CAAC;IAC9D,CAAC;IACD,IAAI,CAAC,iBAAiB,CAAC,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,iBAAiB,CAAC,IAAI,CAAC,YAAY,CAAC,EAAE,CAAC;QAC/E,MAAM,QAAQ,GAAG,MAAM,4BAA4B,EAAE,CAAC;QACtD,IAAI,QAAQ,EAAE,QAAQ,IAAI,CAAC,iBAAiB,CAAC,IAAI,CAAC,QAAQ,CAAC,EAAE,CAAC;YAC5D,IAAI,CAAC,QAAQ,GAAG,QAAQ,CAAC,QAAQ,CAAC;QACpC,CAAC;QACD,IAAI,QAAQ,EAAE,YAAY,IAAI,CAAC,iBAAiB,CAAC,IAAI,CAAC,YAAY,CAAC,EAAE,CAAC;YACpE,IAAI,CAAC,YAAY,GAAG,QAAQ,CAAC,YAAY,CAAC;QAC5C,CAAC;IACH,CAAC;IACD,OAAO,IAAI,CAAC;AACd,CAAC;AAED,KAAK,UAAU,oBAAoB,CAAC,QAAyB,EAAE,IAAuB,EAAE,YAAoB;IAC1G,MAAM,IAAI,GAAG,EAAE,GAAG,QAAQ,CAAC,MAAM,EAAE,CAAC;IACpC,IAAI,iBAAiB,CAAC,IAAI,CAAC,QAAQ,CAAC,EAAE,CAAC;QACrC,IAAI,CAAC,QAAQ,GAAG,IAAI,CAAC,QAAS,CAAC;IACjC,CAAC;IACD,IAAI,iBAAiB,CAAC,IAAI,CAAC,YAAY,CAAC,EAAE,CAAC;QACzC,IAAI,CAAC,YAAY,GAAG,IAAI,CAAC,YAAY,CAAC;IACxC,CAAC;IACD,IAAI,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,MAAM,CAAC,IAAI,IAAI,CAAC,MAAM,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QACzD,IAAI,CAAC,MAAM,GAAG,CAAC,GAAG,IAAI,CAAC,MAAM,CAAC,CAAC;IACjC,CAAC;IACD,IAAI,iBAAiB,CAAC,IAAI,CAAC,WAAW,CAAC,EAAE,CAAC;QACxC,IAAI,CAAC,WAAW,GAAG,IAAI,CAAC,WAAW,CAAC;IACtC,CAAC;IACD,IAAI,YAAY,KAAK,OAAO,EAAE,CAAC;QAC7B,OAAO,MAAM,uBAAuB,CAAC,IAAI,CAAC,CAAC;IAC7C,CAAC;IACD,OAAO,IAAI,CAAC;AACd,CAAC;AAED,KAAK,UAAU,8BAA8B,CAAC,WAAmB,EAAE,SAAiB;IAClF,IAAI,CAAC,iBAAiB,CAAC,WAAW,CAAC,IAAI,CAAC,iBAAiB,CAAC,SAAS,CAAC,EAAE,CAAC;QACrE,OAAO;IACT,CAAC;IAED,MAAM,OAAO,GAAG,qCAAqC,CAAC;IACtD,MAAM,gBAAgB,GAAG,CAAC,iCAAiC,CAAC,CAAC;IAE7D,KAAK,MAAM,OAAO,IAAI,gBAAgB,EAAE,CAAC;QACvC,MAAM,OAAO,GAAG;YACd,cAAc,EAAE,kBAAkB;YAClC,eAAe,EAAE,UAAU,WAAW,EAAE;SACzC,CAAC;QAEF,cAAc;QACd,IAAI,CAAC;YACH,MAAM,QAAQ,GAAG,GAAG,OAAO,gBAAgB,SAAS,aAAa,OAAO,EAAE,CAAC;YAC3E,MAAM,SAAS,GAAG,MAAM,KAAK,CAAC,QAAQ,EAAE,EAAE,MAAM,EAAE,KAAK,EAAE,OAAO,EAAE,CAAC,CAAC;YACpE,IAAI,SAAS,CAAC,EAAE,EAAE,CAAC;gBACjB,MAAM,IAAI,GAAG,MAAM,SAAS,CAAC,IAAI,EAAE,CAAC;gBACpC,IAAI,CAAC;oBACH,MAAM,IAAI,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAuB,CAAC;oBACpD,IAAI,IAAI,CAAC,KAAK,KAAK,SAAS,EAAE,CAAC;wBAC7B,SAAS;oBACX,CAAC;gBACH,CAAC;gBAAC,MAAM,CAAC;oBACP,8CAA8C;gBAChD,CAAC;YACH,CAAC;iBAAM,CAAC;gBACN,aAAa;gBACb,MAAM,SAAS,CAAC,IAAI,EAAE,CAAC,KAAK,CAAC,GAAG,EAAE,GAAE,CAAC,CAAC,CAAC;YACzC,CAAC;QACH,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,aAAa,CACX,+CAA+C,OAAO,gBAAgB,SAAS,MAAM,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,EAAE,CAC9I,CAAC;YACF,sCAAsC;QACxC,CAAC;QAED,YAAY;QACZ,MAAM,SAAS,GAAG,GAAG,OAAO,gBAAgB,SAAS,aAAa,OAAO,SAAS,CAAC;QACnF,IAAI,UAAU,GAAoB,IAAI,CAAC;QACvC,IAAI,QAAQ,GAAG,EAAE,CAAC;QAClB,IAAI,CAAC;YACH,UAAU,GAAG,MAAM,KAAK,CAAC,SAAS,EAAE;gBAClC,MAAM,EAAE,MAAM;gBACd,OAAO;gBACP,IAAI,EAAE,IAAI;aACX,CAAC,CAAC;YACH,QAAQ,GAAG,MAAM,UAAU,CAAC,IAAI,EAAE,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC,EAAE,CAAC,CAAC;QACrD,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,MAAM,IAAI,KAAK,CACb,gCAAgC,OAAO,gBAAgB,SAAS,MAAM,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,EAAE,CAC/H,CAAC;QACJ,CAAC;QAED,IAAI,UAAU,GAAG,QAAQ,CAAC;QAC1B,IAAI,CAAC;YACH,MAAM,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAqC,CAAC;YACxE,IAAI,MAAM,EAAE,KAAK,EAAE,OAAO,EAAE,CAAC;gBAC3B,UAAU,GAAG,MAAM,CAAC,KAAK,CAAC,OAAO,CAAC;YACpC,CAAC;QACH,CAAC;QAAC,MAAM,CAAC;YACP,sBAAsB;QACxB,CAAC;QAED,IAAI,UAAU,IAAI,CAAC,UAAU,CAAC,EAAE,IAAI,UAAU,CAAC,MAAM,KAAK,GAAG,CAAC,EAAE,CAAC;YAC/D,aAAa,CACX,+BAA+B,OAAO,wBAAwB,SAAS,YAAY,UAAU,CAAC,MAAM,GAAG,CACxG,CAAC;YACF,SAAS;QACX,CAAC;QAED,IAAI,UAAU,IAAI,UAAU,CAAC,MAAM,KAAK,GAAG,IAAI,UAAU,CAAC,WAAW,EAAE,CAAC,QAAQ,CAAC,iBAAiB,CAAC,EAAE,CAAC;YACpG,aAAa,CACX,+BAA+B,OAAO,gCAAgC,SAAS,EAAE,CAClF,CAAC;YACF,SAAS;QACX,CAAC;QAED,MAAM,IAAI,KAAK,CACb,+CAA+C,OAAO,OAAO,SAAS,KAAK,UAAU,IAAI,eAAe,EAAE,CAC3G,CAAC;IACJ,CAAC;AACH,CAAC;AAED,SAAS,oBAAoB,CAAC,QAAyB,EAAE,YAAoB;IAC3E,MAAM,WAAW,GAAG,EAAE,GAAG,CAAC,QAAQ,CAAC,OAAO,IAAI,EAAE,CAAC,EAAE,CAAC;IACpD,IAAI,YAAY,KAAK,OAAO,EAAE,CAAC;QAC7B,OAAO;YACL,GAAG,WAAW;YACd,YAAY,EAAE,eAAe;YAC7B,kBAAkB,EAAE,gBAAgB;YACpC,QAAQ,EAAE,kBAAkB;YAC5B,SAAS,EAAE,wBAAwB;YACnC,QAAQ,EAAE,kBAAkB;SAC7B,CAAC;IACJ,CAAC;IACD,OAAO,WAAW,CAAC;AACrB,CAAC;AAED,SAAS,yBAAyB,CAAC,aAAqB;IACtD,MAAM,MAAM,GAAG,0BAA0B,CAAC,aAAa,CAAC,CAAC;IACzD,OAAO,MAAM,EAAE,KAAK,CAAC;AACvB,CAAC;AAED,SAAS,yBAAyB;IAChC,MAAM,UAAU,GAAG,MAAM,CAAC,OAAO,CAAC,GAAG,CAAC,4BAA4B,IAAI,EAAE,CAAC,CAAC,IAAI,EAAE,CAAC;IACjF,IAAI,UAAU,EAAE,CAAC;QACf,OAAO,UAAU,CAAC;IACpB,CAAC;IAED,MAAM,OAAO,GAAG,MAAM,CACpB,OAAO,CAAC,GAAG,CAAC,eAAe;QAC3B,OAAO,CAAC,GAAG,CAAC,QAAQ;QACpB,OAAO,CAAC,GAAG,CAAC,sBAAsB;QAClC,GAAG,CACJ,CAAC;IACF,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,OAAO,CAAC,IAAI,OAAO,IAAI,CAAC,EAAE,CAAC;QAC9C,qFAAqF;QACrF,OAAO,IAAI,CAAC;IACd,CAAC;IACD,MAAM,IAAI,GAAG,WAAW,CAAC,IAAI,CAAC;IAC9B,OAAO,GAAG,cAAc,CAAC,IAAI,GAAG,IAAI,IAAI,OAAO,kBAAkB,CAAC;AACpE,CAAC;AAED,SAAS,sBAAsB,CAC7B,YAAoB,EACpB,aAAqB;IAErB,MAAM,OAAO,GAAG,yBAAyB,EAAE,CAAC;IAC5C,IAAI,CAAC,OAAO,EAAE,CAAC;QACb,OAAO,SAAS,CAAC;IACnB,CAAC;IACD,MAAM,KAAK,GAAG,yBAAyB,CAAC,aAAa,CAAC,IAAI,SAAS,CAAC;IACpE,OAAO;QACL,OAAO;QACP,QAAQ,EAAE,YAAY;QACtB,KAAK;QACL,SAAS,EAAE,aAAa;KACzB,CAAC;AACJ,CAAC;AAED,KAAK,UAAU,cAAc,CAC3B,YAAoB,EACpB,QAAyB,EACzB,IAAuB,EACvB,WAAoB,EACpB,aAAqB;IAErB,IAAI,YAAY,KAAK,aAAa,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,wBAAwB,EAAE,CAAC;QAC5E,OAAO,CAAC,GAAG,CAAC,wBAAwB,GAAG,UAAU,CAAC;IACpD,CAAC;IACD,MAAM,SAAS,GAAG,sBAAsB,CAAC,QAAQ,EAAE,IAAI,CAAC,CAAC;IACzD,MAAM,MAAM,GAAG,MAAM,oBAAoB,CAAC,QAAQ,EAAE,IAAI,EAAE,YAAY,CAAC,CAAC;IACxE,MAAM,OAAO,GAAG,oBAAoB,CAAC,QAAQ,EAAE,YAAY,CAAC,CAAC;IAC7D,MAAM,WAAW,GAAG,WAAW,CAAC,CAAC,CAAC,sBAAsB,CAAC,YAAY,EAAE,aAAa,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;IAClG,MAAM,SAAS,GAA4B;QACzC,cAAc,EAAE,WAAW,CAAC,CAAC,CAAC,cAAc,CAAC,CAAC,CAAC,QAAQ;QACvD,SAAS;QACT,MAAM;QACN,SAAS,EAAE,aAAa;QACxB,OAAO;KACR,CAAC;IACF,IAAI,WAAW,EAAE,CAAC;QACf,SAAiB,CAAC,WAAW,GAAG,WAAW,CAAC;IAC/C,CAAC;IACD,OAAO,EAAE,SAAS,EAAE,SAAS,EAAE,MAAM,EAAE,CAAC;AAC1C,CAAC;AAED,KAAK,UAAU,kBAAkB,CAC/B,YAAoB,EACpB,QAAuB,EACvB,aAAqB,EACrB,SAA+B,EAC/B,MAAc;IAEd,IAAI,CAAC,SAAS,IAAI,OAAO,QAAQ,CAAC,SAAS,KAAK,UAAU,EAAE,CAAC;QAC3D,OAAO;IACT,CAAC;IACD,MAAM,QAAQ,GAAG,MAAM,gBAAgB,CAAC,YAAY,EAAE,SAAS,EAAE,aAAa,CAAC,CAAC;IAChF,MAAM,QAAQ,GAAG,MAAM,sBAAsB,CAAC,YAAY,EAAE,aAAa,EAAE,QAAQ,CAAC,CAAC;IACrF,MAAM,QAAQ,CAAC,SAAS,CAAC,QAAQ,CAAC,CAAC;IACnC,aAAa,CAAC,iBAAiB,MAAM,WAAW,aAAa,EAAE,CAAC,CAAC;AACnE,CAAC;AAED,KAAK,UAAU,gBAAgB,CAC7B,YAAoB,EACpB,SAAwB,EACxB,aAAsB;IAEtB,IAAI,YAAY,KAAK,MAAM,EAAE,CAAC;QAC5B,MAAM,SAAS,GAAG,aAAa,CAAC,SAAS,CAAC,IAAK,SAA8B,CAAC;QAC9E,IAAI,mBAAmB,CAAC,SAAS,CAAC,EAAE,CAAC;YACnC,OAAO,SAAS,CAAC;QACnB,CAAC;QACD,MAAM,WAAW,GAAG,kBAAkB,CAAC,SAAS,CAAC,CAAC;QAClD,IAAI,CAAC,WAAW,EAAE,CAAC;YACjB,aAAa,CAAC,4EAA4E,CAAC,CAAC;YAC5F,OAAO,SAAS,CAAC;QACnB,CAAC;QACD,IAAI,CAAC;YACH,MAAM,QAAQ,GAAG,MAAM,iBAAiB,CAAC,WAAW,CAAC,CAAC;YACtD,IAAI,QAAQ,CAAC,MAAM,EAAE,CAAC;gBACpB,aAAa,CAAC,6CAA6C,QAAQ,CAAC,KAAK,CAAC,CAAC,CAAC,QAAQ,QAAQ,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;YAC/G,CAAC;iBAAM,CAAC;gBACN,aAAa,CAAC,uFAAuF,CAAC,CAAC;YACzG,CAAC;YACD,OAAO,kBAAkB,CAAC,SAAS,EAAE,QAAQ,CAA6B,CAAC;QAC7E,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,MAAM,GAAG,GAAG,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;YACnE,sGAAsG;YACtG,IAAI,iBAAiB,CAAC,IAAI,CAAC,GAAG,CAAC,IAAI,kBAAkB,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC;gBAChE,aAAa,CAAC,2FAA2F,CAAC,CAAC;gBAC3G,OAAO,kBAAkB,CAAC,SAAS,EAAE,EAAE,MAAM,EAAE,WAAW,EAAE,CAA6B,CAAC;YAC5F,CAAC;YACD,aAAa,CAAC,6CAA6C,GAAG,EAAE,CAAC,CAAC;YAClE,OAAO,SAAS,CAAC;QACnB,CAAC;IACH,CAAC;IACD,IAAI,YAAY,KAAK,OAAO,EAAE,CAAC;QAC7B,MAAM,WAAW,GAAG,kBAAkB,CAAC,aAAa,CAAC,SAAS,CAAC,IAAI,IAAI,CAAC,CAAC;QACzE,IAAI,CAAC,WAAW,EAAE,CAAC;YACjB,aAAa,CAAC,6EAA6E,CAAC,CAAC;YAC7F,OAAO,SAAS,CAAC;QACnB,CAAC;QACD,IAAI,CAAC;YACH,MAAM,QAAQ,GAAG,MAAM,kBAAkB,CAAC,WAAW,CAAC,CAAC;YACvD,aAAa,CAAC,mDAAmD,QAAQ,CAAC,KAAK,EAAE,CAAC,CAAC;YACnF,OAAO,mBAAmB,CAAC,SAAS,EAAE,QAAQ,CAA6B,CAAC;QAC9E,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,OAAO,CAAC,KAAK,CAAC,4CAA4C,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;YACpH,OAAO,SAAS,CAAC;QACnB,CAAC;IACH,CAAC;IACD,IAAI,YAAY,KAAK,aAAa,EAAE,CAAC;QACnC,MAAM,WAAW,GAAG,kBAAkB,CAAC,aAAa,CAAC,SAAS,CAAC,IAAI,IAAI,CAAC,CAAC;QACzE,IAAI,CAAC,WAAW,EAAE,CAAC;YACjB,aAAa,CAAC,oFAAoF,CAAC,CAAC;YACpG,OAAO,SAAS,CAAC;QACnB,CAAC;QACD,IAAI,CAAC;YACH,MAAM,QAAQ,GAAG,MAAM,sBAAsB,CAAC,WAAW,CAAC,CAAC;YAC3D,MAAM,SAAS,GAAG,MAAM,yBAAyB,CAAC,WAAW,EAAE,SAAS,EAAE,EAAE,aAAa,EAAE,CAAC,CAAC;YAC7F,MAAM,QAAQ,GAAG,SAAS,CAAC,CAAC,CAAC,CAAC,EAAE,SAAS,EAAE,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;YAClD,MAAM,MAAM,GAAG,uBAAuB,CAAC,SAAS,EAAE,QAAQ,EAAE,QAAQ,CAA6B,CAAC;YAClG,IAAI,SAAS,EAAE,CAAC;gBACd,MAAM,CAAC,UAAU,GAAG,SAAS,CAAC;YAChC,CAAC;YACD,OAAO,MAAM,CAAC;QAChB,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,MAAM,GAAG,GAAG,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;YACnE,OAAO,CAAC,KAAK,CAAC,mDAAmD,GAAG,EAAE,CAAC,CAAC;YACxE,MAAM,UAAU,GAAG,GAAG,CAAC,WAAW,EAAE,CAAC;YACrC,MAAM,WAAW,GACf,UAAU,CAAC,QAAQ,CAAC,KAAK,CAAC;gBAC1B,UAAU,CAAC,QAAQ,CAAC,cAAc,CAAC;gBACnC,UAAU,CAAC,QAAQ,CAAC,eAAe,CAAC;gBACpC,UAAU,CAAC,QAAQ,CAAC,eAAe,CAAC;gBACpC,UAAU,CAAC,QAAQ,CAAC,mBAAmB,CAAC,CAAC;YAC3C,IAAI,WAAW,EAAE,CAAC;gBAChB,MAAM,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,KAAK,CAAC,GAAG,CAAC,CAAC;YACxD,CAAC;QACH,CAAC;IACH,CAAC;SAAM,IAAI,iBAAiB,CAAC,YAAY,CAAC,EAAE,CAAC;QAC3C,MAAM,KAAK,GAAG,YAAY,CAAC;QAC3B,MAAM,WAAW,GAAG,kBAAkB,CAAC,aAAa,CAAC,SAAS,CAAC,IAAI,IAAI,CAAC,CAAC;QACzE,IAAI,CAAC,WAAW,EAAE,CAAC;YACjB,aAAa,CAAC,WAAW,KAAK,iEAAiE,CAAC,CAAC;YACjG,OAAO,SAAS,CAAC;QACnB,CAAC;QAED,IAAI,CAAC;YACH,MAAM,QAAQ,GAAG,MAAM,sBAAsB,CAAC,WAAW,CAAC,CAAC;YAE3D,oCAAoC;YACpC,IAAI,QAAQ,GAEI,EAEH,CAAC;YACd,IAAI,CAAC;gBACH,QAAQ,GAAG,MAAM,sBAAsB,CAAC,WAAW,CAAC,CAAC;YACvD,CAAC;YAAC,OAAO,aAAa,EAAE,CAAC;gBACvB,MAAM,GAAG,GAAG,aAAa,YAAY,KAAK,CAAC,CAAC,CAAC,aAAa,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,aAAa,CAAC,CAAC;gBAC3F,OAAO,CAAC,KAAK,CAAC,WAAW,KAAK,gCAAgC,GAAG,EAAE,CAAC,CAAC;gBACrE,QAAQ,GAAG,EAAE,CAAC;YAChB,CAAC;YAED,aAAa,CAAC,WAAW,KAAK,0BAA0B,QAAQ,CAAC,KAAK,QAAQ,QAAQ,CAAC,MAAM,WAAW,CAAC,CAAC;YAE1G,MAAM,MAAM,GAAG,uBAAuB,CAAC,SAAS,EAAE,QAAQ,EAAE,QAAQ,CAA6B,CAAC;YAClG,MAAM,SAAS,GAAG,mBAAmB,CAAC,MAAM,CAAC,CAAC;YAE9C,IAAI,SAAS,EAAE,CAAC;gBACd,IAAI,CAAC;oBACH,MAAM,8BAA8B,CAAC,WAAW,EAAE,SAAS,CAAC,CAAC;gBAC/D,CAAC;gBAAC,OAAO,KAAK,EAAE,CAAC;oBACf,MAAM,GAAG,GAAG,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;oBACnE,aAAa,CAAC,WAAW,KAAK,2CAA2C,SAAS,MAAM,GAAG,EAAE,CAAC,CAAC;oBAC/F,mDAAmD;gBACrD,CAAC;YACH,CAAC;YACD,OAAO,MAAM,CAAC;QAChB,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,MAAM,GAAG,GAAG,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;YACnE,OAAO,CAAC,KAAK,CAAC,WAAW,KAAK,gCAAgC,GAAG,EAAE,CAAC,CAAC;YAErE,gDAAgD;YAChD,MAAM,UAAU,GAAG,GAAG,CAAC,WAAW,EAAE,CAAC;YACrC,MAAM,WAAW,GACf,UAAU,CAAC,QAAQ,CAAC,KAAK,CAAC;gBAC1B,UAAU,CAAC,QAAQ,CAAC,cAAc,CAAC;gBACnC,UAAU,CAAC,QAAQ,CAAC,eAAe,CAAC;gBACpC,UAAU,CAAC,QAAQ,CAAC,eAAe,CAAC;gBACpC,UAAU,CAAC,QAAQ,CAAC,mBAAmB,CAAC,CAAC;YAE3C,IAAI,WAAW,EAAE,CAAC;gBAChB,MAAM,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,KAAK,CAAC,GAAG,CAAC,CAAC;YACxD,CAAC;YAED,mDAAmD;YACnD,OAAO,SAAS,CAAC;QACnB,CAAC;IACH,CAAC;IACD,OAAO,SAAS,CAAC;AACnB,CAAC;AAED,SAAS,aAAa,CACpB,YAAoB,EACpB,QAAyB,EACzB,SAAkC,EAClC,SAAyB,EACzB,MAAyB,EACzB,aAAqB,EACrB,WAAoB,EACpB,WAAoB;IAEpB,IAAI,CAAC;QACH,aAAa,CACX,iCAAiC,YAAY,SAAS,MAAM,CAAC,QAAQ,CAAC,QAAQ,CAAC,eAAe,MAAM,CAClG,SAAS,CAAC,cAAc,CACzB,cAAc,aAAa,gBAAgB,WAAW,gBAAgB,WAAW,EAAE,CACrF,CAAC;QACF,IAAI,SAAS,CAAC,aAAa,IAAI,SAAS,CAAC,gBAAgB,EAAE,CAAC;YAC1D,aAAa,CACX,oCAAoC,MAAM,CAAC,SAAS,CAAC,aAAa,IAAI,EAAE,CAAC,aAAa,MAAM,CAC1F,SAAS,CAAC,QAAQ,CACnB,YAAY,MAAM,CAAC,SAAS,CAAC,gBAAgB,IAAI,EAAE,CAAC,gBAAgB,MAAM,CAAC,SAAS,CAAC,WAAW,IAAI,EAAE,CAAC,EAAE,CAC3G,CAAC;QACJ,CAAC;QACD,IAAI,YAAY,KAAK,OAAO,EAAE,CAAC;YAC7B,aAAa,CACX,4BAA4B,MAAM,CAAC,MAAM,CAAC,QAAQ,IAAI,WAAW,CAAC,WAChE,MAAM,CAAC,YAAY,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,WACtC,aAAa,MAAM,CAAC,MAAM,CAAC,WAAW,IAAI,WAAW,CAAC,EAAE,CACzD,CAAC;QACJ,CAAC;IACH,CAAC;IAAC,MAAM,CAAC;QACP,oBAAoB;IACtB,CAAC;AACH,CAAC;AAED,SAAS,cAAc,CACrB,YAAoB,EACpB,SAAkC,EAClC,aAAqB;IAErB,OAAO,2BAA2B,CAAC,YAAY,EAAE,SAAS,EAAE,aAAa,CAAkB,CAAC;AAC9F,CAAC;AAED,KAAK,UAAU,+BAA+B,CAC5C,YAAoB,EACpB,SAAkC,EAClC,aAAqB,EACrB,WAAoB,EACpB,eAAwB,EACxB,WAAoB;IAEpB,MAAM,OAAO,GAAG,KAAK,IAAmB,EAAE;QACxC,IAAI,UAAU,GAAkB,IAAI,CAAC;QACrC,IAAI,eAAe,EAAE,CAAC;YACpB,4CAA4C;YAC5C,8DAA8D;YAC9D,UAAU,GAAG,MAAM,eAAe,CAAC,aAAa,CAAC,CAAC;QACpD,CAAC;QACD,IAAI,CAAC;YACH,IAAI,YAAY,KAAK,OAAO,EAAE,CAAC;gBAC7B,MAAM,6BAA6B,CAAC,YAAY,EAAE,SAAS,EAAE,aAAa,EAAE,WAAW,CAAC,CAAC;YAC3F,CAAC;iBAAM,CAAC;gBACN,MAAM,QAAQ,GAAG,cAAc,CAAC,YAAY,EAAE,SAAS,EAAE,aAAa,CAAC,CAAC;gBACxE,MAAM,MAAM,GAAG,MAAM,QAAQ,CAAC,YAAY,EAAE,CAAC,EAAE,WAAW,EAAE,gBAAgB,EAAE,WAAW,EAAE,CAAC,CAAC;gBAC7F,MAAM,kBAAkB,CAAC,YAAY,EAAE,QAAQ,EAAE,aAAa,EAAE,MAAM,EAAE,UAAU,CAAC,CAAC;YACtF,CAAC;YACD,MAAM,iBAAiB,CAAC,UAAU,CAAC,CAAC;QACtC,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,MAAM,0BAA0B,CAAC,UAAU,EAAE,aAAa,CAAC,CAAC;YAC5D,MAAM,KAAK,CAAC;QACd,CAAC;IACH,CAAC,CAAC;IAEF,IAAI,CAAC,WAAW,EAAE,CAAC;QACjB,MAAM,OAAO,EAAE,CAAC;QAChB,OAAO;IACT,CAAC;IAED,MAAM,KAAK,GAAG,GAAG,YAAY,IAAI,aAAa,EAAE,CAAC;IACjD,MAAM,MAAM,GAAG,eAAe;SAC3B,KAAK,CAAC,GAAG,EAAE;QACV,+CAA+C;IACjD,CAAC,CAAC;SACD,IAAI,CAAC,KAAK,IAAI,EAAE;QACf,aAAa,CAAC,mCAAmC,KAAK,EAAE,CAAC,CAAC;QAC1D,IAAI,CAAC;YACH,MAAM,OAAO,EAAE,CAAC;QAClB,CAAC;gBAAS,CAAC;YACT,aAAa,CAAC,mCAAmC,KAAK,EAAE,CAAC,CAAC;QAC5D,CAAC;IACH,CAAC,CAAC,CAAC;IACL,eAAe,GAAG,MAAM,CAAC,IAAI,CAC3B,GAAG,EAAE,CAAC,SAAS,EACf,GAAG,EAAE,CAAC,SAAS,CAChB,CAAC;IACF,MAAM,MAAM,CAAC;AACf,CAAC;AAED,KAAK,UAAU,6BAA6B,CAC1C,YAAoB,EACpB,SAAkC,EAClC,aAAqB,EACrB,WAAoB;IAEpB,MAAM,iBAAiB,GAAG,EAAE,GAAG,SAAS,EAAE,QAAQ,EAAE,aAAa,CAAC,kBAAkB,EAAE,CAAC;IACvF,IAAI,CAAC;QACH,MAAM,eAAe,CAAC,YAAY,EAAE,iBAAiB,EAAE,aAAa,EAAE,WAAW,CAAC,CAAC;QACnF,OAAO;IACT,CAAC;IAAC,OAAO,UAAU,EAAE,CAAC;QACpB,aAAa,CACX,kCAAkC,UAAU,YAAY,KAAK,CAAC,CAAC,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,UAAU,IAAI,EAAE,CAAC,EAAE,CAChH,CAAC;IACJ,CAAC;IACD,MAAM,eAAe,GAAG,EAAE,GAAG,SAAS,EAAE,QAAQ,EAAE,aAAa,CAAC,WAAW,EAAE,CAAC;IAC9E,MAAM,eAAe,CAAC,YAAY,EAAE,eAAe,EAAE,aAAa,EAAE,WAAW,CAAC,CAAC;AACnF,CAAC;AAED,KAAK,UAAU,eAAe,CAC5B,YAAoB,EACpB,SAAkC,EAClC,aAAqB,EACrB,WAAoB;IAEpB,MAAM,QAAQ,GAAG,cAAc,CAAC,YAAY,EAAE,SAAS,EAAE,aAAa,CAAC,CAAC;IACxE,MAAM,MAAM,GAAG,MAAM,QAAQ,CAAC,YAAY,EAAE,CAAC,EAAE,WAAW,EAAE,IAAI,EAAE,gBAAgB,EAAE,WAAW,EAAE,CAAC,CAAC;IACnG,MAAM,kBAAkB,CACtB,YAAY,EACZ,QAAQ,EACR,aAAa,EACb,MAAM,EACN,SAAS,CAAC,QAAQ,CAAC,CAAC,CAAC,aAAa,MAAM,CAAC,SAAS,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC,UAAU,CAC7E,CAAC;AACJ,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,qBAAqB,CACzC,YAAoB,EACpB,IAAe,EACf,OAAmB,EAAE;IAErB,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC,EAAE,CAAC;QACzB,OAAO;IACT,CAAC;IAED,MAAM,aAAa,GAAG,oBAAoB,CAAC,IAAI,EAAE,YAAY,CAAC,CAAC;IAC/D,MAAM,QAAQ,GAAG,MAAM,CAAC,YAAY,EAAE,aAAa,CAAC,CAAC;IACrD,IAAI,QAAQ,CAAC,GAAG,CAAC,QAAQ,CAAC,EAAE,CAAC;QAC3B,MAAM,QAAQ,CAAC,GAAG,CAAC,QAAQ,CAAE,CAAC;QAC9B,OAAO;IACT,CAAC;IACD,sFAAsF;IACtF,sGAAsG;IACtG,MAAM,oBAAoB,GAAG,IAAI,CAAC,WAAW,KAAK,IAAI,CAAC;IACvD,6CAA6C;IAC7C,0CAA0C;IAC1C,8EAA8E;IAC9E,4EAA4E;IAC5E,IAAI,CAAC,IAAI,CAAC,gBAAgB,IAAI,CAAC,oBAAoB,IAAI,cAAc,CAAC,QAAQ,CAAC,EAAE,CAAC;QAChF,OAAO;IACT,CAAC;IAED,MAAM,SAAS,GAAG,0BAA0B,CAAC,aAAa,CAAC,CAAC;IAC5D,MAAM,aAAa,GAAG,SAAS,EAAE,KAAK,KAAK,QAAQ,CAAC;IACpD,IAAI,aAAa,EAAE,CAAC;QAClB,aAAa,CACX,0EAA0E,YAAY,cAAc,aAAa,GAAG,CACrH,CAAC;QACF,cAAc,CAAC,QAAQ,CAAC,CAAC;QACzB,OAAO;IACT,CAAC;IAED,MAAM,WAAW,GAAG,MAAM,CAAC,OAAO,CAAC,GAAG,CAAC,0BAA0B,IAAI,GAAG,CAAC,KAAK,GAAG,CAAC;IAClF,MAAM,WAAW,GAAG,IAAI,CAAC,WAAW,IAAI,WAAW,CAAC;IACpD,MAAM,WAAW,GACf,IAAI,CAAC,gBAAgB,KAAK,IAAI,IAAI,MAAM,CAAC,OAAO,CAAC,GAAG,CAAC,6BAA6B,IAAI,GAAG,CAAC,KAAK,GAAG,CAAC;IAErG,MAAM,UAAU,GAAG,CAAC,KAAK,IAAI,EAAE;QAC7B,MAAM,QAAQ,GAAG,sBAAsB,CAAC,YAAY,EAAE,EAAE,CAAC,CAAC;QAC1D,MAAM,EAAE,SAAS,EAAE,SAAS,EAAE,MAAM,EAAE,GAAG,MAAM,cAAc,CAC3D,YAAY,EACZ,QAAQ,EACR,IAAI,EACJ,WAAW,EACX,aAAa,CACd,CAAC;QACF,aAAa,CAAC,YAAY,EAAE,QAAQ,EAAE,SAAS,EAAE,SAAS,EAAE,MAAM,EAAE,aAAa,EAAE,WAAW,EAAE,WAAW,CAAC,CAAC;QAC7G,MAAM,QAAQ,GAAG,cAAc,CAAC,YAAY,EAAE,SAAS,EAAE,aAAa,CAAC,CAAC;QACxE,IAAI,KAAK,GAAG,MAAM,iBAAiB,CAAC,aAAa,CAAC,CAAC;QACnD,MAAM,oBAAoB,GAAG,KAAK,KAAK,IAAI,CAAC;QAE5C,yEAAyE;QACzE,iGAAiG;QACjG,IAAI,YAAY,KAAK,MAAM,IAAI,KAAK,IAAI,CAAC,mBAAmB,CAAC,KAAK,CAAC,EAAE,CAAC;YACpE,IAAI,CAAC;gBACH,MAAM,QAAQ,GAAG,MAAM,gBAAgB,CAAC,YAAY,EAAE,KAAsB,CAAC,CAAC;gBAC9E,IAAI,QAAQ,IAAI,OAAO,QAAQ,CAAC,SAAS,KAAK,UAAU,EAAE,CAAC;oBACzD,MAAM,QAAQ,GAAG,MAAM,sBAAsB,CAAC,YAAY,EAAE,aAAa,EAAE,QAAQ,CAAC,CAAC;oBACrF,MAAM,QAAQ,CAAC,SAAS,CAAC,QAAQ,CAAC,CAAC;oBACnC,KAAK,GAAG,aAAa,CAAC,QAAQ,CAAC,IAAK,QAA6B,CAAC;gBACpE,CAAC;YACH,CAAC;YAAC,OAAO,KAAK,EAAE,CAAC;gBACf,MAAM,GAAG,GAAG,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;gBACnE,OAAO,CAAC,KAAK,CAAC,gEAAgE,GAAG,EAAE,CAAC,CAAC;YACvF,CAAC;QACH,CAAC;QAED,wFAAwF;QACxF,iGAAiG;QACjG,IAAI,iBAAiB,CAAC,YAAY,CAAC,IAAI,KAAK,EAAE,CAAC;YAC7C,IAAI,CAAC;gBACH,MAAM,kBAAkB,GAAG,YAAY,KAAK,aAAa;oBACvD,CAAC,CAAC,iBAAiB,CAAC,gBAAgB,CAAC,KAAsB,CAAC,CAAC;oBAC7D,CAAC,CAAC,OAAO,CAAC,mBAAmB,CAAC,KAAsB,CAAC,CAAC,CAAC;gBACzD,IAAI,CAAC,kBAAkB,EAAE,CAAC;oBACxB,MAAM,QAAQ,GAAG,MAAM,gBAAgB,CAAC,YAAY,EAAE,KAAsB,CAAC,CAAC;oBAC9E,IAAI,QAAQ,IAAI,OAAO,QAAQ,CAAC,SAAS,KAAK,UAAU,EAAE,CAAC;wBACzD,MAAM,QAAQ,GAAG,MAAM,sBAAsB,CAAC,YAAY,EAAE,aAAa,EAAE,QAAQ,CAAC,CAAC;wBACrF,MAAM,QAAQ,CAAC,SAAS,CAAC,QAAQ,CAAC,CAAC;wBACnC,KAAK,GAAG,aAAa,CAAC,QAAQ,CAAC,IAAK,QAA6B,CAAC;oBACpE,CAAC;gBACH,CAAC;YACH,CAAC;YAAC,OAAO,KAAK,EAAE,CAAC;gBACf,MAAM,GAAG,GAAG,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;gBACnE,OAAO,CAAC,KAAK,CACX,WAAW,YAAY,6DAA6D,GAAG,EAAE,CAC1F,CAAC;gBACF,yDAAyD;gBACzD,MAAM,KAAK,GAAG,GAAG,CAAC,WAAW,EAAE,CAAC;gBAChC,MAAM,SAAS,GACb,kEAAkE,CAAC,IAAI,CAAC,KAAK,CAAC;oBAC9E,KAAK,CAAC,QAAQ,CAAC,UAAU,CAAC,CAAC;gBAC7B,IAAI,SAAS,IAAI,WAAW,EAAE,CAAC;oBAC7B,KAAK,GAAG,IAAI,CAAC;gBACf,CAAC;YACH,CAAC;QACH,CAAC;QAED,gBAAgB,CAAC,YAAY,EAAE,KAAK,EAAE,SAAS,CAAC,CAAC;QACjD,MAAM,UAAU,GAAG,kBAAkB,CAAC,KAAK,EAAE,YAAY,CAAC,CAAC;QAC3D,MAAM,SAAS,GAAG,gBAAgB,CAAC,KAAK,CAAC,CAAC;QAE1C,IAAI,SAAS,IAAI,CAAC,WAAW,IAAI,CAAC,oBAAoB,EAAE,CAAC;YACvD,aAAa,CACX,2CAA2C,YAAY,cAAc,aAAa,4CAA4C,CAC/H,CAAC;YACF,cAAc,CAAC,QAAQ,CAAC,CAAC;YACzB,OAAO;QACT,CAAC;QAED,IAAI,CAAC,WAAW,IAAI,UAAU,CAAC,WAAW,EAAE,CAAC;YAC3C,aAAa,CACX,iCAAiC,UAAU,CAAC,SAAS,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,cAAc,qCAAqC,CACvH,CAAC;YACF,cAAc,CAAC,QAAQ,CAAC,CAAC;YACzB,OAAO;QACT,CAAC;QAED,IACE,CAAC,WAAW;YACZ,UAAU,CAAC,eAAe;YAC1B,KAAK,EAAE,aAAa;YACpB,OAAO,QAAQ,CAAC,YAAY,KAAK,UAAU,EAC3C,CAAC;YACD,IAAI,CAAC;gBACH,aAAa,CAAC,6BAA6B,CAAC,CAAC;gBAC7C,MAAM,SAAS,GAAG,MAAM,QAAQ,CAAC,YAAY,CAAC,KAAK,CAAC,aAAa,CAAC,CAAC;gBACnE,MAAM,kBAAkB,CAAC,YAAY,EAAE,QAAQ,EAAE,aAAa,EAAE,SAAS,EAAE,qBAAqB,CAAC,CAAC;gBAClG,cAAc,CAAC,QAAQ,CAAC,CAAC;gBACzB,OAAO;YACT,CAAC;YAAC,OAAO,KAAK,EAAE,CAAC;gBACf,IAAI,CAAC,IAAI,CAAC,4BAA4B,EAAE,CAAC;oBACvC,MAAM,KAAK,CAAC;gBACd,CAAC;gBACD,aAAa,CAAC,iEAAiE,CAAC,CAAC;YACnF,CAAC;QACH,CAAC;QAED,IAAI,CAAC;YACH,MAAM,+BAA+B,CACnC,YAAY,EACZ,SAAS,EACT,aAAa,EACb,WAAW,EACX,WAAW,IAAI,oBAAoB,EACnC,WAAW,CACZ,CAAC;YACF,cAAc,CAAC,QAAQ,CAAC,CAAC;QAC3B,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,MAAM,OAAO,GAAG,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,IAAI,EAAE,CAAC,CAAC;YAC7E,wCAAwC;YACxC,4CAA4C;YAC5C,iCAAiC;YACjC,IAAI,OAAO,CAAC,QAAQ,CAAC,iCAAiC,CAAC,EAAE,CAAC;gBACxD,OAAO,CAAC,KAAK,CAAC,sEAAsE,OAAO,EAAE,CAAC,CAAC;gBAC/F,cAAc,CAAC,QAAQ,CAAC,CAAC;gBACzB,OAAO;YACT,CAAC;YACD,MAAM,KAAK,CAAC;QACd,CAAC;IACH,CAAC,CAAC,EAAE,CAAC;IAEL,QAAQ,CAAC,GAAG,CAAC,QAAQ,EAAE,UAAU,CAAC,CAAC;IACnC,IAAI,CAAC;QACH,MAAM,UAAU,CAAC;IACnB,CAAC;YAAS,CAAC;QACT,QAAQ,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC;IAC5B,CAAC;AACH,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,+BAA+B,CACnD,YAAoB,EACpB,IAAe,EACf,aAAsB,EACtB,OAWC;IAED,MAAM,EAAE,GAAG,YAAY,CAAC,WAAW,EAAE,CAAC;IACtC,MAAM,aAAa,GAAG,OAAO,EAAE,aAAa,KAAK,KAAK,CAAC;IACvD,MAAM,WAAW,GAAG,OAAO,EAAE,qBAAqB,IAAI,qBAAqB,CAAC;IAC5E,IAAI,CAAC;QACH,IAAI,CAAC,mCAAmC,CAAC,YAAY,EAAE,aAAa,CAAC,EAAE,CAAC;YACtE,OAAO,KAAK,CAAC;QACf,CAAC;QACD,MAAM,GAAG,GACP,aAAa,YAAY,KAAK;YAC5B,CAAC,CAAC,aAAa,CAAC,OAAO;YACvB,CAAC,CAAC,aAAa,IAAI,OAAO,aAAa,KAAK,QAAQ,IAAI,OAAQ,aAAqB,CAAC,OAAO,KAAK,QAAQ;gBACxG,CAAC,CAAC,MAAM,CAAE,aAAqB,CAAC,OAAO,CAAC;gBACxC,CAAC,CAAC,MAAM,CAAC,aAAa,IAAI,EAAE,CAAC,CAAC;QACpC,MAAM,KAAK,GAAG,GAAG,CAAC,WAAW,EAAE,CAAC;QAChC,MAAM,UAAU,GAAG,iBAAiB,CAAC,aAAa,CAAC,CAAC;QACpD,MAAM,aAAa,GAAG,oBAAoB,CAAC,IAAyB,EAAE,YAAY,CAAC,CAAC;QACpF,MAAM,cAAc,GAClB,UAAU,KAAK,GAAG,IAAI,0CAA0C,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,eAAe,CAAC,CAAC,CAAC,SAAS,CAAC;QACxG,MAAM,IAAI,GAAG,MAAM,gCAAgC,CAAC;YAClD,YAAY;YACZ,SAAS,EAAE,aAAa;YACxB,MAAM,EAAE,cAAc;SACvB,CAAC,CAAC;QACH,IAAI,IAAI,CAAC,IAAI,EAAE,CAAC;YACd,MAAM,MAAM,GAAG,OAAO,IAAI,CAAC,MAAM,KAAK,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC;YACjE,MAAM,QAAQ,GAAG,OAAO,IAAI,CAAC,MAAM,EAAE,YAAY,KAAK,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC,CAAC;YAC9F,OAAO,CAAC,IAAI,CACV,gDAAgD,YAAY,WAAW,UAAU,IAAI,SAAS,WAAW,cAAc,aAAa,QAAQ,WAAW,MAAM,cAAc,aAAa,GAAG,CAC5L,CAAC;YACF,OAAO,KAAK,CAAC;QACf,CAAC;QACD,oGAAoG;QACpG,MAAM,iCAAiC,CAAC;YACtC,YAAY;YACZ,SAAS,EAAE,aAAa;YACxB,MAAM,EAAE,cAAc;SACvB,CAAC,CAAC;QAEH,iCAAiC;QACjC,0CAA0C;QAC1C,4GAA4G;QAC5G,6DAA6D;QAC7D,IAAI,CAAC,aAAa,EAAE,CAAC;YACnB,IAAI,UAAU,KAAK,GAAG,IAAI,cAAc,KAAK,eAAe,EAAE,CAAC;gBAC7D,MAAM,GAAG,GAAG,mCAAmC,CAAC,GAAG,CAAC,CAAC;gBACrD,IAAI,GAAG,EAAE,CAAC;oBACR,KAAK,uCAAuC,CAAC;wBAC3C,YAAY;wBACZ,IAAI,EAAE,IAAyB;wBAC/B,GAAG;qBACJ,CAAC,CAAC,KAAK,CAAC,GAAG,EAAE,GAAE,CAAC,CAAC,CAAC;gBACrB,CAAC;gBACD,OAAO,KAAK,CAAC;YACf,CAAC;YACD,IAAI,CAAC;gBACH,MAAM,kBAAkB,CAAC,YAAY,EAAE,KAAK,IAAI,EAAE;oBAChD,MAAM,WAAW,CAAC,YAAY,EAAE,IAAI,EAAE;wBACpC,4BAA4B,EAAE,KAAK;wBACnC,WAAW,EAAE,KAAK;wBAClB,gBAAgB,EAAE,KAAK;qBACxB,CAAC,CAAC;gBACL,CAAC,CAAC,CAAC;gBACH,MAAM,iCAAiC,CAAC;oBACtC,YAAY;oBACZ,SAAS,EAAE,aAAa;iBACzB,CAAC,CAAC;gBACH,OAAO,IAAI,CAAC;YACd,CAAC;YAAC,MAAM,CAAC;gBACP,4EAA4E;YAC9E,CAAC;YACD,MAAM,eAAe,GAAe;gBAClC,4BAA4B,EAAE,IAAI;gBAClC,WAAW,EAAE,IAAI;gBACjB,sCAAsC;gBACtC,2BAA2B;gBAC3B,gBAAgB,EAAE,EAAE,KAAK,QAAQ,IAAI,EAAE,KAAK,YAAY,IAAI,EAAE,KAAK,aAAa,IAAI,EAAE,KAAK,OAAO,IAAI,EAAE,KAAK,MAAM;aACpH,CAAC;YACF,KAAK,kBAAkB,CAAC,YAAY,EAAE,KAAK,IAAI,EAAE;gBAC/C,MAAM,WAAW,CAAC,YAAY,EAAE,IAAI,EAAE,eAAe,CAAC,CAAC;YACzD,CAAC,CAAC,CAAC,KAAK,CAAC,GAAG,EAAE;gBACZ,sDAAsD;YACxD,CAAC,CAAC,CAAC;YACH,OAAO,KAAK,CAAC;QACf,CAAC;QAED,MAAM,IAAI,GAAe;YACvB,4BAA4B,EAAE,IAAI;YAClC,WAAW,EAAE,IAAI;YACjB,sCAAsC;YACtC,2BAA2B;YAC3B,gBAAgB,EAAE,EAAE,KAAK,QAAQ,IAAI,EAAE,KAAK,YAAY,IAAI,EAAE,KAAK,aAAa,IAAI,EAAE,KAAK,OAAO,IAAI,EAAE,KAAK,MAAM;SACpH,CAAC;QACF,MAAM,kBAAkB,CAAC,YAAY,EAAE,KAAK,IAAI,EAAE;YAChD,MAAM,WAAW,CAAC,YAAY,EAAE,IAAI,EAAE,IAAI,CAAC,CAAC;QAC9C,CAAC,CAAC,CAAC;QACH,MAAM,iCAAiC,CAAC;YACtC,YAAY;YACZ,SAAS,EAAE,aAAa;SACzB,CAAC,CAAC;QACH,OAAO,IAAI,CAAC;IACd,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,KAAK,CAAC;IACf,CAAC;AACH,CAAC;AAED,MAAM,UAAU,mCAAmC,CAAC,YAAoB,EAAE,aAAsB;IAC9F,MAAM,EAAE,GAAG,YAAY,CAAC,WAAW,EAAE,CAAC;IACtC,MAAM,GAAG,GACP,aAAa,YAAY,KAAK;QAC5B,CAAC,CAAC,aAAa,CAAC,OAAO;QACvB,CAAC,CAAC,aAAa,IAAI,OAAO,aAAa,KAAK,QAAQ,IAAI,OAAQ,aAAqB,CAAC,OAAO,KAAK,QAAQ;YACxG,CAAC,CAAC,MAAM,CAAE,aAAqB,CAAC,OAAO,CAAC;YACxC,CAAC,CAAC,MAAM,CAAC,aAAa,IAAI,EAAE,CAAC,CAAC;IACpC,MAAM,KAAK,GAAG,GAAG,CAAC,WAAW,EAAE,CAAC;IAChC,MAAM,UAAU,GAAG,iBAAiB,CAAC,aAAa,CAAC,CAAC;IAEpD,yBAAyB;IACzB,IAAI,YAAY,GACd,yGAAyG,CAAC,IAAI,CAC5G,KAAK,CACN,CAAC;IAEJ,+CAA+C;IAC/C,IAAI,CAAC,YAAY,IAAI,CAAC,EAAE,KAAK,OAAO,IAAI,EAAE,KAAK,MAAM,CAAC,EAAE,CAAC;QACvD,IACE,UAAU,KAAK,GAAG;YAClB,UAAU,KAAK,GAAG;YAClB,uBAAuB,CAAC,IAAI,CAAC,GAAG,CAAC,EACjC,CAAC;YACD,YAAY,GAAG,IAAI,CAAC;QACtB,CAAC;IACH,CAAC;IAED,mDAAmD;IACnD,4CAA4C;IAC5C,IAAI,EAAE,KAAK,QAAQ,IAAI,EAAE,KAAK,YAAY,IAAI,EAAE,KAAK,aAAa,EAAE,CAAC;QACnE,IAAI,kBAAkB,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,KAAK,CAAC,QAAQ,CAAC,8BAA8B,CAAC,EAAE,CAAC;YACrF,YAAY,GAAG,KAAK,CAAC;QACvB,CAAC;QACD,IACE,KAAK,CAAC,QAAQ,CAAC,+BAA+B,CAAC;YAC/C,KAAK,CAAC,QAAQ,CAAC,6CAA6C,CAAC,EAC7D,CAAC;YACD,YAAY,GAAG,IAAI,CAAC;QACtB,CAAC;QACD,iFAAiF;QACjF,4FAA4F;QAC5F,kEAAkE;QAClE,IACE,UAAU,KAAK,GAAG;YAClB,0CAA0C,CAAC,KAAK,CAAC,EACjD,CAAC;YACD,YAAY,GAAG,IAAI,CAAC;QACtB,CAAC;IACH,CAAC;IAED,OAAO,YAAY,CAAC;AACtB,CAAC;AAED,KAAK,UAAU,4BAA4B;IACzC,IAAI,CAAC;QACH,MAAM,IAAI,GAAG,OAAO,CAAC,GAAG,CAAC,IAAI,IAAI,EAAE,CAAC;QACpC,MAAM,IAAI,GAAG,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE,aAAa,EAAE,MAAM,EAAE,iBAAiB,CAAC,CAAC;QACvE,MAAM,GAAG,GAAG,MAAM,EAAE,CAAC,QAAQ,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC,EAAE,CAAC,CAAC;QAC7D,IAAI,CAAC,GAAG,EAAE,CAAC;YACT,OAAO,IAAI,CAAC;QACd,CAAC;QACD,MAAM,KAAK,GAAG,GAAG,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC;QACpE,IAAI,KAAK,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YACvB,OAAO,IAAI,CAAC;QACd,CAAC;QACD,KAAK,IAAI,CAAC,GAAG,KAAK,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC,IAAI,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC;YAC3C,MAAM,IAAI,GAAG,KAAK,CAAC,CAAC,CAAC,CAAC;YACtB,IAAI,CAAC;gBACH,MAAM,GAAG,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAyB,CAAC;gBACrD,MAAM,OAAO,GAAG,OAAO,GAAG,CAAC,OAAO,KAAK,QAAQ,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,CAAC;gBACnE,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,GAAG,CAAC,EAAE,CAAC;oBAC3B,SAAS;gBACX,CAAC;gBACD,MAAM,GAAG,GAAG,OAAO,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC;gBACjC,MAAM,EAAE,GAAG,OAAO,CAAC,KAAK,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC,IAAI,EAAE,CAAC;gBACxC,MAAM,MAAM,GAAG,OAAO,CAAC,KAAK,CAAC,GAAG,GAAG,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC;gBAC7C,IAAI,EAAE,IAAI,MAAM,EAAE,CAAC;oBACjB,OAAO,EAAE,QAAQ,EAAE,EAAE,EAAE,YAAY,EAAE,MAAM,EAAE,CAAC;gBAChD,CAAC;YACH,CAAC;YAAC,MAAM,CAAC;gBACP,oBAAoB;YACtB,CAAC;QACH,CAAC;QACD,OAAO,IAAI,CAAC;IACd,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,IAAI,CAAC;IACd,CAAC;AACH,CAAC"}
@@ -3,6 +3,7 @@ export type OAuthRepairCooldownRecord = {
3
3
  providerType: string;
4
4
  tokenFile: string;
5
5
  reason: OAuthRepairCooldownReason;
6
+ attemptCount: number;
6
7
  updatedAt: number;
7
8
  };
8
9
  export declare function shouldSkipInteractiveOAuthRepair(args: {
@@ -19,3 +20,7 @@ export declare function markInteractiveOAuthRepairAttempt(args: {
19
20
  tokenFile: string;
20
21
  reason: OAuthRepairCooldownReason;
21
22
  }): Promise<void>;
23
+ export declare function markInteractiveOAuthRepairSuccess(args: {
24
+ providerType: string;
25
+ tokenFile: string;
26
+ }): Promise<void>;
@@ -61,6 +61,13 @@ function resolveCooldownMs(reason) {
61
61
  const parsed = Number.parseInt(raw, 10);
62
62
  return Number.isFinite(parsed) && parsed > 0 ? parsed : 30 * 60_000;
63
63
  }
64
+ function resolveMaxAttempts() {
65
+ const raw = String(process.env.ROUTECODEX_OAUTH_INTERACTIVE_MAX_ATTEMPTS ||
66
+ process.env.RCC_OAUTH_INTERACTIVE_MAX_ATTEMPTS ||
67
+ '3').trim();
68
+ const parsed = Number.parseInt(raw, 10);
69
+ return Number.isFinite(parsed) && parsed > 0 ? parsed : 3;
70
+ }
64
71
  export async function shouldSkipInteractiveOAuthRepair(args) {
65
72
  const pt = normalizeProviderType(args.providerType);
66
73
  const tokenFile = normalizeTokenFile(args.tokenFile);
@@ -73,6 +80,18 @@ export async function shouldSkipInteractiveOAuthRepair(args) {
73
80
  if (!record || typeof record.updatedAt !== 'number' || !Number.isFinite(record.updatedAt)) {
74
81
  return { skip: false, record: null };
75
82
  }
83
+ const maxAttempts = resolveMaxAttempts();
84
+ const attemptCount = typeof record.attemptCount === 'number' && Number.isFinite(record.attemptCount) && record.attemptCount > 0
85
+ ? Math.floor(record.attemptCount)
86
+ : 0;
87
+ if (attemptCount >= maxAttempts) {
88
+ return { skip: true, record };
89
+ }
90
+ // Generic token-invalid errors should retry interactive flow until max attempts is reached.
91
+ // Do not apply long cooldown windows here, otherwise reauth may never be surfaced in practice.
92
+ if (args.reason === 'generic') {
93
+ return { skip: false, record };
94
+ }
76
95
  const cooldownMs = resolveCooldownMs(args.reason);
77
96
  const elapsed = Date.now() - record.updatedAt;
78
97
  if (elapsed < cooldownMs) {
@@ -88,13 +107,33 @@ export async function markInteractiveOAuthRepairAttempt(args) {
88
107
  }
89
108
  const key = buildKey(pt, tokenFile);
90
109
  const state = await readState();
110
+ const existing = state.records[key];
111
+ const prevAttempts = existing && typeof existing.attemptCount === 'number' && Number.isFinite(existing.attemptCount) && existing.attemptCount > 0
112
+ ? Math.floor(existing.attemptCount)
113
+ : 0;
91
114
  state.records[key] = {
92
115
  providerType: pt,
93
116
  tokenFile,
94
117
  reason: args.reason,
118
+ attemptCount: prevAttempts + 1,
95
119
  updatedAt: Date.now()
96
120
  };
97
121
  state.updatedAt = Date.now();
98
122
  await writeState(state);
99
123
  }
124
+ export async function markInteractiveOAuthRepairSuccess(args) {
125
+ const pt = normalizeProviderType(args.providerType);
126
+ const tokenFile = normalizeTokenFile(args.tokenFile);
127
+ if (!pt || !tokenFile) {
128
+ return;
129
+ }
130
+ const key = buildKey(pt, tokenFile);
131
+ const state = await readState();
132
+ if (!state.records[key]) {
133
+ return;
134
+ }
135
+ delete state.records[key];
136
+ state.updatedAt = Date.now();
137
+ await writeState(state);
138
+ }
100
139
  //# sourceMappingURL=oauth-repair-cooldown.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"oauth-repair-cooldown.js","sourceRoot":"","sources":["../../../src/providers/auth/oauth-repair-cooldown.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"oauth-repair-cooldown.js","sourceRoot":"","sources":["../../../src/providers/auth/oauth-repair-cooldown.ts"],"names":[],"mappings":"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"}
@@ -14,6 +14,12 @@ export interface TokenFileMatch {
14
14
  * 扫描auth目录下指定provider的所有token文件
15
15
  */
16
16
  export declare function scanProviderTokenFiles(provider: string): Promise<TokenFileMatch[]>;
17
+ /**
18
+ * 扫描 auth 目录下 DeepSeek 账号 token 文件。
19
+ * 命名规范: deepseek-account-<alias>.json
20
+ * 例如: deepseek-account-1.json, deepseek-account-3-13823250570.json
21
+ */
22
+ export declare function scanDeepSeekAccountTokenFiles(): Promise<TokenFileMatch[]>;
17
23
  /**
18
24
  * 获取指定provider的所有token文件路径(有序)
19
25
  */
@@ -21,6 +21,7 @@ function resolveAuthDir() {
21
21
  * 例如: iflow-oauth-1-work.json -> provider=iflow, sequence=1, alias=work
22
22
  */
23
23
  const TOKEN_FILE_PATTERN = /^(.+)-oauth-(\d+)(?:-(.+))?\.json$/;
24
+ const DEEPSEEK_ACCOUNT_TOKEN_PATTERN = /^deepseek-account-(.+)\.json$/i;
24
25
  /**
25
26
  * 扫描auth目录下指定provider的所有token文件
26
27
  */
@@ -73,6 +74,58 @@ export async function scanProviderTokenFiles(provider) {
73
74
  return [];
74
75
  }
75
76
  }
77
+ /**
78
+ * 扫描 auth 目录下 DeepSeek 账号 token 文件。
79
+ * 命名规范: deepseek-account-<alias>.json
80
+ * 例如: deepseek-account-1.json, deepseek-account-3-13823250570.json
81
+ */
82
+ export async function scanDeepSeekAccountTokenFiles() {
83
+ try {
84
+ const authDir = resolveAuthDir();
85
+ const entries = await fs.readdir(authDir);
86
+ const matches = [];
87
+ for (const entry of entries) {
88
+ if (!entry.endsWith('.json')) {
89
+ continue;
90
+ }
91
+ if (entry.includes('.bak')) {
92
+ continue;
93
+ }
94
+ const match = entry.match(DEEPSEEK_ACCOUNT_TOKEN_PATTERN);
95
+ if (!match) {
96
+ continue;
97
+ }
98
+ const aliasRaw = String(match[1] || '').trim();
99
+ if (!aliasRaw) {
100
+ continue;
101
+ }
102
+ const numericMatch = aliasRaw.match(/^(\d+)(?:-|$)/);
103
+ const numericPrefix = numericMatch ? Number.parseInt(numericMatch[1], 10) : undefined;
104
+ matches.push({
105
+ filePath: path.join(authDir, entry),
106
+ alias: aliasRaw,
107
+ ...(Number.isFinite(numericPrefix) ? { numericPrefix } : {})
108
+ });
109
+ }
110
+ matches.sort((a, b) => {
111
+ const aNum = typeof a.numericPrefix === 'number' ? a.numericPrefix : Number.POSITIVE_INFINITY;
112
+ const bNum = typeof b.numericPrefix === 'number' ? b.numericPrefix : Number.POSITIVE_INFINITY;
113
+ if (aNum !== bNum) {
114
+ return aNum - bNum;
115
+ }
116
+ return a.alias.localeCompare(b.alias);
117
+ });
118
+ return matches.map((entry, index) => ({
119
+ filePath: entry.filePath,
120
+ providerPrefix: 'deepseek-account',
121
+ sequence: index + 1,
122
+ alias: entry.alias
123
+ }));
124
+ }
125
+ catch {
126
+ return [];
127
+ }
128
+ }
76
129
  /**
77
130
  * 获取指定provider的所有token文件路径(有序)
78
131
  */
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/providers/auth/token-scanner/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/providers/auth/token-scanner/index.ts"],"names":[],"mappings":"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"}
@@ -5,6 +5,7 @@
5
5
  */
6
6
  import type { ModuleConfig } from '../../../modules/pipeline/interfaces/pipeline-interfaces.js';
7
7
  import type { ProviderType } from './provider-types.js';
8
+ import type { DeepSeekProviderRuntimeOptions } from '../contracts/deepseek-provider-contract.js';
8
9
  /**
9
10
  * 统一Provider配置接口 (与V1 ModuleConfig兼容)
10
11
  */
@@ -20,7 +21,7 @@ export interface OpenAIStandardConfig extends ModuleConfig {
20
21
  * 说明:为了保持 V1 兼容性,旧路径仍使用 'openai-standard',新装配器会根据
21
22
  * providerType 选择具体的 *-http-provider 类型。
22
23
  */
23
- type: 'openai-standard' | 'openai-http-provider' | 'responses-http-provider' | 'anthropic-http-provider' | 'gemini-http-provider' | 'iflow-http-provider' | 'mock-provider';
24
+ type: 'openai-standard' | 'openai-http-provider' | 'responses-http-provider' | 'anthropic-http-provider' | 'gemini-http-provider' | 'iflow-http-provider' | 'deepseek-http-provider' | 'mock-provider';
24
25
  config: {
25
26
  providerType: ProviderType;
26
27
  runtimeKey?: string;
@@ -30,7 +31,9 @@ export interface OpenAIStandardConfig extends ModuleConfig {
30
31
  maxRetries?: number;
31
32
  auth: ApiKeyAuth | OAuthAuth;
32
33
  overrides?: ServiceOverrides;
33
- extensions?: Record<string, unknown>;
34
+ extensions?: Record<string, unknown> & {
35
+ deepseek?: Partial<DeepSeekProviderOverrides>;
36
+ };
34
37
  };
35
38
  }
36
39
  /**
@@ -41,6 +44,12 @@ export interface ApiKeyAuth {
41
44
  apiKey: string;
42
45
  headerName?: string;
43
46
  prefix?: string;
47
+ tokenFile?: string;
48
+ rawType?: string;
49
+ mobile?: string;
50
+ password?: string;
51
+ accountFile?: string;
52
+ accountAlias?: string;
44
53
  }
45
54
  /**
46
55
  * OAuth认证类型
@@ -75,6 +84,12 @@ export interface ServiceOverrides {
75
84
  streamIdleTimeoutMs?: number;
76
85
  streamHeadersTimeoutMs?: number;
77
86
  }
87
+ export interface DeepSeekProviderOverrides extends DeepSeekProviderRuntimeOptions {
88
+ mobile?: string;
89
+ password?: string;
90
+ accountFile?: string;
91
+ accountAlias?: string;
92
+ }
78
93
  /**
79
94
  * 认证凭证类型
80
95
  */
@@ -9,6 +9,7 @@ import type { OpenAIStandardConfig } from './provider-config.js';
9
9
  import type { ProviderHooks } from '../config/provider-hooks.js';
10
10
  import type { TargetMetadata } from '../../../modules/pipeline/orchestrator/pipeline-context.js';
11
11
  import type { ProviderRuntimeMetadata } from '../runtime/provider-runtime-metadata.js';
12
+ import type { DeepSeekProviderRuntimeOptions } from '../contracts/deepseek-provider-contract.js';
12
13
  export type { ProviderHooks } from '../config/provider-hooks.js';
13
14
  /**
14
15
  * 统一Provider接口 (与V1 ProviderModule完全一致)
@@ -93,6 +94,10 @@ export interface ProviderRuntimeAuth {
93
94
  refreshUrl?: string;
94
95
  oauthProviderId?: string;
95
96
  rawType?: string;
97
+ mobile?: string;
98
+ password?: string;
99
+ accountFile?: string;
100
+ accountAlias?: string;
96
101
  }
97
102
  export interface ProviderRuntimeProfile {
98
103
  runtimeKey: string;
@@ -138,6 +143,7 @@ export interface ProviderRuntimeProfile {
138
143
  streaming?: 'auto' | 'always' | 'never';
139
144
  instructionsMode?: 'default' | 'inline';
140
145
  };
146
+ deepseek?: Partial<DeepSeekProviderRuntimeOptions>;
141
147
  }
142
148
  /**
143
149
  * Provider上下文
@@ -1 +1 @@
1
- {"version":3,"file":"provider-types.js","sourceRoot":"","sources":["../../../../src/providers/core/api/provider-types.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AA4CH;;GAEG;AACH,MAAM,CAAC,MAAM,iBAAiB,GAAG;IAC/B,MAAM,EAAE,QAAQ;IAChB,SAAS,EAAE,WAAW;IACtB,SAAS,EAAE,WAAW;IACtB,MAAM,EAAE,QAAQ;IAChB,UAAU,EAAE,YAAY;IACxB,IAAI,EAAE,MAAM;CACJ,CAAC;AAEX;;GAEG;AACH,MAAM,CAAN,IAAY,cAMX;AAND,WAAY,cAAc;IACxB,+CAA6B,CAAA;IAC7B,iCAAe,CAAA;IACf,2CAAyB,CAAA;IACzB,iCAAe,CAAA;IACf,qCAAmB,CAAA;AACrB,CAAC,EANW,cAAc,KAAd,cAAc,QAMzB"}
1
+ {"version":3,"file":"provider-types.js","sourceRoot":"","sources":["../../../../src/providers/core/api/provider-types.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AA6CH;;GAEG;AACH,MAAM,CAAC,MAAM,iBAAiB,GAAG;IAC/B,MAAM,EAAE,QAAQ;IAChB,SAAS,EAAE,WAAW;IACtB,SAAS,EAAE,WAAW;IACtB,MAAM,EAAE,QAAQ;IAChB,UAAU,EAAE,YAAY;IACxB,IAAI,EAAE,MAAM;CACJ,CAAC;AAEX;;GAEG;AACH,MAAM,CAAN,IAAY,cAMX;AAND,WAAY,cAAc;IACxB,+CAA6B,CAAA;IAC7B,iCAAe,CAAA;IACf,2CAAyB,CAAA;IACzB,iCAAe,CAAA;IACf,qCAAmB,CAAA;AACrB,CAAC,EANW,cAAc,KAAd,cAAc,QAMzB"}
@@ -4,12 +4,18 @@ export interface CamoufoxLaunchOptions {
4
4
  alias?: string | null;
5
5
  profileId?: string;
6
6
  }
7
+ type PythonLauncher = {
8
+ command: string;
9
+ argsPrefix: string[];
10
+ };
7
11
  export declare function shutdownCamoufoxLaunchers(): Promise<void>;
8
12
  export declare function resolveCamoufoxLocaleEnv(): Record<string, string>;
9
13
  export declare function applyGoogleLocaleHint(rawUrl: string): string;
10
14
  export declare function getCamoufoxProfileDir(provider?: string | null, alias?: string | null): string;
11
15
  export declare function ensureCamoufoxProfileDir(provider?: string | null, alias?: string | null): string;
16
+ export declare function resolveCamoufoxPythonLaunchers(platform?: NodeJS.Platform, env?: Record<string, string | undefined>): PythonLauncher[];
12
17
  export declare function isCamoufoxAvailable(): boolean;
18
+ export declare function ensureCamoufoxInstalledForInit(): boolean;
13
19
  /**
14
20
  * Exposed for CLI/tests: report which OS policy will be used for a given (provider, alias).
15
21
  * NOTE: This is the policy passed to the fingerprint generator, not necessarily the runtime OS.
@@ -22,3 +28,4 @@ export declare function getCamoufoxOsPolicy(provider?: string | null, alias?: st
22
28
  */
23
29
  export declare function ensureCamoufoxFingerprintForToken(provider?: string | null, alias?: string | null): void;
24
30
  export declare function openAuthInCamoufox(options: CamoufoxLaunchOptions): Promise<boolean>;
31
+ export {};