@agentworkforce/deploy 3.0.45 → 3.0.47

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.
@@ -208,7 +208,7 @@ async function ensureHarnessReady(args) {
208
208
  return { [modelProvider]: credentialId };
209
209
  }
210
210
  await ensureHarnessOauth(args);
211
- return {};
211
+ return resolveOauthCredentialSelections(args);
212
212
  }
213
213
  async function resolveHarnessSource(args) {
214
214
  if (args.harnessSource)
@@ -240,24 +240,78 @@ async function resolveHarnessSource(args) {
240
240
  * not connected" even when they were — see workforce#118 follow-up.
241
241
  */
242
242
  async function isHarnessOauthConnected(args) {
243
- const auth = await readUsableCloudAuth(args.cloudUrl);
244
- if (!auth)
243
+ const body = await fetchCloudAgents(args.cloudUrl);
244
+ if (!body)
245
245
  return false;
246
- const client = cloudCredentialDeps.createCloudApiClient(auth, args.cloudUrl);
246
+ return hasConnectedHarness(body, deriveModelProvider(args.persona));
247
+ }
248
+ /**
249
+ * Fetch the `/api/v1/cloud-agents` list, or `null` when there is no usable
250
+ * stored auth or the route doesn't exist on the target cloud (404/405).
251
+ */
252
+ async function fetchCloudAgents(cloudUrl) {
253
+ const auth = await readUsableCloudAuth(cloudUrl);
254
+ if (!auth)
255
+ return null;
256
+ const client = cloudCredentialDeps.createCloudApiClient(auth, cloudUrl);
247
257
  const res = await client.fetch('/api/v1/cloud-agents', {
248
258
  method: 'GET',
249
259
  headers: { 'user-agent': USER_AGENT }
250
260
  });
251
261
  if (res.status === 404 || res.status === 405)
252
- return false;
262
+ return null;
253
263
  if (res.status === 401) {
254
264
  throw new Error('cloud harness check failed: unauthorized. Run `agentworkforce login` and retry.');
255
265
  }
256
266
  if (!res.ok) {
257
267
  throw new Error(`cloud harness check failed: ${res.status} ${await responseExcerpt(res)}`);
258
268
  }
259
- const body = (await res.json());
260
- return hasConnectedHarness(body, deriveModelProvider(args.persona));
269
+ return (await res.json());
270
+ }
271
+ /**
272
+ * Stamp `credentialSelections` for the oauth harness source so cloud's
273
+ * runtime can configure `ctx.llm` from the deployment. The byok/plan legs
274
+ * already stamp the credential they create; an oauth deploy without a
275
+ * selection leaves the deployment with empty selections and every fire
276
+ * stubs ctx.llm — workforce#196.
277
+ *
278
+ * Provider split is deliberate:
279
+ * - anthropic: the OAuth completion route upserts a `provider_credentials`
280
+ * row, and cloud resolves it to a runtime env credential — stamp it.
281
+ * - openai (and anything else): ChatGPT/codex OAuth tokens are harness-only;
282
+ * cloud rejects them for runtime env, so stamping the persona-family
283
+ * credential would turn the ctx.llm stub into a failed delivery. Stamp a
284
+ * connected anthropic credential instead when one exists (the runtime
285
+ * adapts the model family), else print the actionable alternative.
286
+ */
287
+ async function resolveOauthCredentialSelections(args) {
288
+ const provider = deriveModelProvider(args.persona);
289
+ const body = await fetchCloudAgents(args.cloudUrl);
290
+ if (provider !== 'anthropic') {
291
+ // Cross-provider fallback: the runtime's credential pick already
292
+ // prefers the persona's model family but falls back to whatever
293
+ // provider env IS present, swapping in that family's default model
294
+ // (cloud-llm selectCredential/resolveModel). So when the persona
295
+ // family can't back ctx.llm (codex/ChatGPT OAuth is harness-only), a
296
+ // connected anthropic credential is the honest deploy-time encoding
297
+ // of what the runtime would do anyway.
298
+ const anthropicId = body ? findConnectedHarnessCredentialId(body, 'anthropic') : null;
299
+ if (anthropicId) {
300
+ args.io.info(`cloud: ${provider} subscriptions are harness-only and cannot back ctx.llm; ` +
301
+ 'stamping your connected anthropic credential instead (the runtime adapts the model family).');
302
+ return { anthropic: anthropicId };
303
+ }
304
+ args.io.info(`cloud: ${provider} subscriptions are harness-only and cannot back ctx.llm; ` +
305
+ 'use --harness-source byok with a platform API key, or connect an anthropic credential.');
306
+ return {};
307
+ }
308
+ const credentialId = body ? findConnectedHarnessCredentialId(body, provider) : null;
309
+ if (!credentialId) {
310
+ args.io.info(`cloud: no connected ${provider} credential row found; deploying without a ctx.llm credential selection.`);
311
+ return {};
312
+ }
313
+ args.io.info(`cloud: selected connected ${provider} credential for ctx.llm`);
314
+ return { [provider]: credentialId };
261
315
  }
262
316
  async function resolveByokKey(args) {
263
317
  if (args.byokKey?.trim())
@@ -322,7 +376,10 @@ export async function ensureCloudSubscriptionReady(args) {
322
376
  };
323
377
  }
324
378
  await ensureSubscriptionOauth(args);
325
- return { provider };
379
+ const credentialSelections = await resolveOauthCredentialSelections(args);
380
+ return Object.keys(credentialSelections).length > 0
381
+ ? { provider, credentialSelections }
382
+ : { provider };
326
383
  }
327
384
  function resolveSubscriptionHarnessSource(args) {
328
385
  const rawSource = args.harnessSource ?? process.env.WORKFORCE_DEPLOY_HARNESS_SOURCE?.trim();
@@ -626,31 +683,84 @@ function readCredentialId(body) {
626
683
  throw new Error('cloud provider credentials response missing credential id');
627
684
  }
628
685
  /**
629
- * Walk the `/api/v1/cloud-agents` response and decide whether any entry
630
- * represents a usable, connected credential for the given harness/provider.
686
+ * Walk the `/api/v1/cloud-agents` response and return the credential row id
687
+ * of the first entry that represents a usable, connected credential for the
688
+ * given model provider, or `null` when none matches.
689
+ *
690
+ * "Usable" means: the row exists, its `harness` field matches the persona's
691
+ * derived model provider (case-insensitive), and its `status` is
692
+ * `connected`. The S3-backed credential write happens before the row is
693
+ * marked connected, so this single check is enough — no second probe
694
+ * required.
631
695
  *
632
- * "Usable" means: the cloud_agents row exists, its `harness` field
633
- * matches the persona's derived model provider (case-insensitive), and
634
- * its `status` is `connected`. The S3-backed credential write happens
635
- * before the row is marked connected, so this single check is enough —
636
- * no second probe required.
696
+ * The response rows come straight from cloud's `provider_credentials`
697
+ * table, where `harness` may hold either the model-provider string
698
+ * ("anthropic") or the harness alias cloud's OAuth completion route stamps
699
+ * ("claude"), depending on which write path created the row so match
700
+ * against both. Cloud lists rows most-recently-updated first.
637
701
  */
638
- function hasConnectedHarness(body, expectedHarness) {
702
+ function connectedHarnessEntries(body, expectedProvider) {
639
703
  if (!body || !Array.isArray(body.agents))
640
- return false;
641
- const target = expectedHarness.trim().toLowerCase();
642
- if (!target)
643
- return false;
644
- return body.agents.some((value) => {
704
+ return [];
705
+ const provider = expectedProvider.trim().toLowerCase();
706
+ if (!provider)
707
+ return [];
708
+ const targets = new Set([provider, harnessAliasForModelProvider(provider)]);
709
+ const entries = [];
710
+ for (const value of body.agents) {
645
711
  if (!value || typeof value !== 'object' || Array.isArray(value))
646
- return false;
712
+ continue;
647
713
  const entry = value;
648
714
  if (typeof entry.harness !== 'string')
649
- return false;
650
- if (entry.harness.trim().toLowerCase() !== target)
651
- return false;
652
- return entry.status === 'connected';
653
- });
715
+ continue;
716
+ if (!targets.has(entry.harness.trim().toLowerCase()))
717
+ continue;
718
+ if (entry.status !== 'connected')
719
+ continue;
720
+ entries.push(entry);
721
+ }
722
+ return entries;
723
+ }
724
+ function hasConnectedHarness(body, expectedProvider) {
725
+ return connectedHarnessEntries(body, expectedProvider).length > 0;
726
+ }
727
+ function findConnectedHarnessCredentialId(body, expectedProvider) {
728
+ const entries = connectedHarnessEntries(body, expectedProvider);
729
+ // The web wizard selects on is_active (one active row per provider —
730
+ // cloud's partial unique index), not recency, so prefer the flagged row.
731
+ // Older clouds / pre-backfill rows may not carry the flag; fall back to
732
+ // the list order (cloud returns most-recently-updated first).
733
+ const candidates = [
734
+ ...entries.filter(isActiveCloudAgentEntry),
735
+ ...entries.filter((entry) => !isActiveCloudAgentEntry(entry))
736
+ ];
737
+ for (const entry of candidates) {
738
+ if (typeof entry.id === 'string' && entry.id.trim())
739
+ return entry.id.trim();
740
+ }
741
+ return null;
742
+ }
743
+ function isActiveCloudAgentEntry(entry) {
744
+ return entry.isActive === true || entry.is_active === true;
745
+ }
746
+ /**
747
+ * Mirror of cloud's `harnessForModelProvider` (lib/billing/house-keys.ts):
748
+ * the harness name its OAuth completion route writes into
749
+ * `provider_credentials.harness` for each model provider.
750
+ */
751
+ function harnessAliasForModelProvider(modelProvider) {
752
+ switch (modelProvider) {
753
+ case 'anthropic':
754
+ return 'claude';
755
+ case 'openai':
756
+ return 'codex';
757
+ case 'google':
758
+ return 'gemini';
759
+ case 'openrouter':
760
+ return 'opencode';
761
+ default:
762
+ return modelProvider;
763
+ }
654
764
  }
655
765
  function expectHarnessSource(value) {
656
766
  const normalized = value.trim().toLowerCase();
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/modes/cloud/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/modes/cloud/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,kBAAkB,CAAC;AAC5C,OAAO,EACL,cAAc,EACd,eAAe,EACf,aAAa,EACb,cAAc,EACd,iBAAiB,EAElB,MAAM,oBAAoB,CAAC;AAO5B,OAAO,EACL,qBAAqB,EAEtB,MAAM,gBAAgB,CAAC;AAExB,MAAM,6BAA6B,GAAG,6DAA6D,CAAC;AACpG,MAAM,UAAU,GAAG,kBAAkB,CAAC;AACtC,MAAM,YAAY,GAAG,CAAC,CAAC;AACvB,MAAM,eAAe,GAAG,MAAM,CAAC;AAC/B,MAAM,gBAAgB,GAAG,KAAK,CAAC;AAsE/B,MAAM,0BAA0B,GAAwB;IACtD,cAAc;IACd,iBAAiB;IACjB,eAAe;IACf,oBAAoB,CAAC,IAAI,EAAE,MAAM;QAC/B,OAAO,IAAI,cAAc,CAAC;YACxB,MAAM;YACN,WAAW,EAAE,IAAI,CAAC,WAAW;YAC7B,YAAY,EAAE,IAAI,CAAC,YAAY;YAC/B,oBAAoB,EAAE,IAAI,CAAC,oBAAoB;SAChD,CAAC,CAAC;IACL,CAAC;CACF,CAAC;AAEF,IAAI,mBAAmB,GAAG,0BAA0B,CAAC;AAErD,MAAM,UAAU,mCAAmC,CACjD,SAAuC;IAEvC,MAAM,QAAQ,GAAG,mBAAmB,CAAC;IACrC,mBAAmB,GAAG,EAAE,GAAG,mBAAmB,EAAE,GAAG,SAAS,EAAE,CAAC;IAC/D,OAAO,GAAG,EAAE;QACV,mBAAmB,GAAG,QAAQ,CAAC;IACjC,CAAC,CAAC;AACJ,CAAC;AAED;;;;;;GAMG;AACH,MAAM,CAAC,MAAM,aAAa,GAAiB;IACzC,KAAK,CAAC,MAAM,CAAC,KAAsB;QACjC,MAAM,QAAQ,GAAG,eAAe,CAAC,KAAK,CAAC,CAAC;QACxC,MAAM,QAAQ,GAAG,UAAU,CAAC,KAAK,CAAC,CAAC;QACnC,MAAM,IAAI,GAAG,KAAK,CAAC,cAAc;YAC/B,CAAC,CAAC,EAAE,KAAK,EAAE,KAAK,CAAC,cAAc,EAAE;YACjC,CAAC,CAAC,MAAM,qBAAqB,CAAC;gBAC1B,SAAS,EAAE,KAAK,CAAC,SAAS;gBAC1B,QAAQ;gBACR,EAAE,EAAE,KAAK,CAAC,EAAE;gBACZ,QAAQ;aACT,CAAC,CAAC;QAEP,MAAM,oBAAoB,GAAG,KAAK,CAAC,oBAAoB,IAAI,MAAM,kBAAkB,CAAC;YAClF,QAAQ;YACR,WAAW,EAAE,KAAK,CAAC,SAAS;YAC5B,KAAK,EAAE,IAAI,CAAC,KAAK;YACjB,OAAO,EAAE,KAAK,CAAC,OAAO;YACtB,EAAE,EAAE,KAAK,CAAC,EAAE;YACZ,QAAQ;YACR,aAAa,EAAE,KAAK,CAAC,aAAa;YAClC,OAAO,EAAE,KAAK,CAAC,OAAO;SACvB,CAAC,CAAC;QAEH,MAAM,eAAe,GAAG,MAAM,qBAAqB,CAAC;YAClD,QAAQ;YACR,WAAW,EAAE,KAAK,CAAC,SAAS;YAC5B,KAAK,EAAE,IAAI,CAAC,KAAK;YACjB,SAAS,EAAE,KAAK,CAAC,OAAO,CAAC,EAAE;YAC3B,EAAE,EAAE,KAAK,CAAC,EAAE;YACZ,QAAQ;YACR,QAAQ,EAAE,KAAK,CAAC,QAAQ;SACzB,CAAC,CAAC;QACH,IAAI,eAAe,CAAC,SAAS,EAAE,CAAC;YAC9B,OAAO;gBACL,EAAE,EAAE,eAAe,CAAC,OAAO;gBAC3B,OAAO,EAAE,eAAe,CAAC,OAAO;gBAChC,YAAY,EAAE,WAAW;gBACzB,MAAM,EAAE,WAAW;gBACnB,KAAK,CAAC,IAAI;oBACR,kEAAkE;gBACpE,CAAC;gBACD,IAAI,EAAE,OAAO,CAAC,OAAO,CAAC,EAAE,IAAI,EAAE,CAAC,EAAE,CAAC;aACnC,CAAC;QACJ,CAAC;QAED,MAAM,IAAI,GAAG,IAAI,CAAC,SAAS,CAAC;YAC1B,OAAO,EAAE,KAAK,CAAC,OAAO;YACtB,sEAAsE;YACtE,oEAAoE;YACpE,uEAAuE;YACvE,KAAK,EAAE,KAAK,CAAC,KAAK;YAClB,MAAM,EAAE;gBACN,MAAM,EAAE,MAAM,QAAQ,CAAC,KAAK,CAAC,MAAM,CAAC,UAAU,EAAE,MAAM,CAAC;gBACvD,KAAK,EAAE,MAAM,QAAQ,CAAC,KAAK,CAAC,MAAM,CAAC,UAAU,EAAE,MAAM,CAAC;gBACtD,WAAW,EAAE,IAAI,CAAC,KAAK,CAAC,MAAM,QAAQ,CAAC,KAAK,CAAC,MAAM,CAAC,eAAe,EAAE,MAAM,CAAC,CAAY;aACzF;YACD,qEAAqE;YACrE,iEAAiE;YACjE,oBAAoB;YACpB,qBAAqB,EAAE,oBAAoB;YAC3C,MAAM,EAAE,KAAK,CAAC,MAAM,IAAI,kBAAkB,EAAE;SAC7C,CAAC,CAAC;QAEH,MAAM,QAAQ,GAAG,mBAAmB,CAAC,QAAQ,EAAE,KAAK,CAAC,SAAS,CAAC,CAAC;QAChE,KAAK,CAAC,EAAE,CAAC,IAAI,CAAC,sCAAsC,QAAQ,EAAE,CAAC,CAAC;QAChE,MAAM,UAAU,GAAG,MAAM,oBAAoB,CAC3C,QAAQ,EACR;YACE,MAAM,EAAE,MAAM;YACd,OAAO,EAAE,WAAW,CAAC,IAAI,CAAC,KAAK,CAAC;YAChC,IAAI;SACL,EACD,EAAE,MAAM,EAAE,cAAc,EAAE,CAC3B,CAAC;QAEF,MAAM,OAAO,GAAG,YAAY,CAAC,UAAU,CAAC,OAAO,EAAE,SAAS,CAAC,CAAC;QAC5D,MAAM,YAAY,GAAG,YAAY,CAAC,UAAU,CAAC,YAAY,EAAE,cAAc,CAAC,CAAC;QAC3E,MAAM,aAAa,GAAG,YAAY,CAAC,UAAU,CAAC,MAAM,CAAC,CAAC;QACtD,KAAK,CAAC,EAAE,CAAC,IAAI,CAAC,qBAAqB,YAAY,sBAAsB,OAAO,EAAE,CAAC,CAAC;QAEhF,IAAI,QAAQ,GAAG,KAAK,CAAC;QACrB,MAAM,IAAI,GAAG,CAAC,KAAK,IAA+B,EAAE;YAClD,IAAI,aAAa,KAAK,OAAO,IAAI,aAAa,KAAK,QAAQ;gBAAE,OAAO,EAAE,IAAI,EAAE,CAAC,EAAE,CAAC;YAChF,IAAI,aAAa,KAAK,QAAQ;gBAAE,OAAO,EAAE,IAAI,EAAE,CAAC,EAAE,CAAC;YAEnD,IAAI,CAAC;gBACH,MAAM,WAAW,GAAG,MAAM,eAAe,CAAC;oBACxC,QAAQ;oBACR,WAAW,EAAE,KAAK,CAAC,SAAS;oBAC5B,OAAO;oBACP,KAAK,EAAE,IAAI,CAAC,KAAK;oBACjB,EAAE,EAAE,KAAK,CAAC,EAAE;oBACZ,KAAK,EAAE,KAAK,CAAC,KAAK;iBACnB,CAAC,CAAC;gBACH,OAAO,EAAE,IAAI,EAAE,WAAW,KAAK,OAAO,IAAI,WAAW,KAAK,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;YAC/E,CAAC;YAAC,OAAO,GAAG,EAAE,CAAC;gBACb,IAAI,CAAC,QAAQ,EAAE,CAAC;oBACd,KAAK,CAAC,EAAE,CAAC,KAAK,CACZ,iCAAiC,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,EAAE,CACpF,CAAC;gBACJ,CAAC;gBACD,OAAO,EAAE,IAAI,EAAE,CAAC,EAAE,CAAC;YACrB,CAAC;QACH,CAAC,CAAC,EAAE,CAAC;QAEL,MAAM,IAAI,GAAG,KAAK,IAAmB,EAAE;YACrC,IAAI,QAAQ;gBAAE,OAAO;YACrB,QAAQ,GAAG,IAAI,CAAC;YAChB,MAAM,WAAW,CAAC;gBAChB,QAAQ;gBACR,WAAW,EAAE,KAAK,CAAC,SAAS;gBAC5B,OAAO;gBACP,KAAK,EAAE,IAAI,CAAC,KAAK;gBACjB,MAAM,EAAE,YAAY;aACrB,CAAC,CAAC;QACL,CAAC,CAAC;QAEF,OAAO;YACL,EAAE,EAAE,OAAO;YACX,OAAO;YACP,YAAY;YACZ,MAAM,EAAE,aAAa;YACrB,IAAI;YACJ,IAAI;SACL,CAAC;IACJ,CAAC;CACF,CAAC;AAEF,SAAS,mBAAmB,CAAC,QAAgB,EAAE,WAAmB;IAChE,OAAO,GAAG,QAAQ,sBAAsB,kBAAkB,CAAC,WAAW,CAAC,cAAc,CAAC;AACxF,CAAC;AAED,SAAS,eAAe,CAAC,KAAsB;IAC7C,MAAM,SAAS,GAAG,KAAK,CAAC,QAAQ,EAAE,IAAI,EAAE,CAAC;IACzC,MAAM,OAAO,GAAG,OAAO,CAAC,GAAG,CAAC,0BAA0B,EAAE,IAAI,EAAE;WACzD,OAAO,CAAC,GAAG,CAAC,mBAAmB,EAAE,IAAI,EAAE,CAAC;IAC7C,MAAM,WAAW,GAAG,yBAAyB,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;IAC7D,MAAM,GAAG,GAAG,SAAS,IAAI,OAAO,IAAI,WAAW,IAAI,aAAa,EAAE,CAAC;IACnE,MAAM,QAAQ,GAAG,iBAAiB,CAAC,GAAG,CAAC,CAAC;IACxC,IAAI,QAAQ,KAAK,iBAAiB,CAAC,aAAa,EAAE,CAAC,EAAE,CAAC;QACpD,KAAK,CAAC,EAAE,CAAC,IAAI,CACX,iCAAiC,QAAQ,gCAAgC,6BAA6B,EAAE,CACzG,CAAC;IACJ,CAAC;IACD,OAAO,QAAQ,CAAC;AAClB,CAAC;AAED,SAAS,UAAU,CAAC,KAAsB;IACxC,IAAI,KAAK,CAAC,QAAQ;QAAE,OAAO,IAAI,CAAC;IAChC,MAAM,GAAG,GAAG,OAAO,CAAC,GAAG,CAAC,0BAA0B,EAAE,IAAI,EAAE,CAAC,WAAW,EAAE,CAAC;IACzE,OAAO,GAAG,KAAK,GAAG,IAAI,GAAG,KAAK,MAAM,IAAI,GAAG,KAAK,KAAK,CAAC;AACxD,CAAC;AAED,KAAK,UAAU,kBAAkB,CAAC,IASjC;IACC,4EAA4E;IAC5E,uEAAuE;IACvE,qEAAqE;IACrE,yBAAyB;IACzB,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,OAAO,EAAE,CAAC;QAC1B,IAAI,CAAC,EAAE,CAAC,IAAI,CAAC,uEAAuE,CAAC,CAAC;QACtF,OAAO,EAAE,CAAC;IACZ,CAAC;IACD,MAAM,MAAM,GAAG,MAAM,oBAAoB,CAAC,IAAI,CAAC,CAAC;IAChD,MAAM,aAAa,GAAG,mBAAmB,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;IACxD,IAAI,MAAM,KAAK,MAAM,EAAE,CAAC;QACtB,MAAM,YAAY,GAAG,MAAM,sBAAsB,CAAC;YAChD,QAAQ,EAAE,IAAI,CAAC,QAAQ;YACvB,WAAW,EAAE,IAAI,CAAC,WAAW;YAC7B,KAAK,EAAE,IAAI,CAAC,KAAK;YACjB,aAAa;YACb,QAAQ,EAAE,eAAe;SAC1B,CAAC,CAAC;QACH,IAAI,CAAC,EAAE,CAAC,IAAI,CAAC,+CAA+C,IAAI,CAAC,OAAO,CAAC,OAAO,EAAE,CAAC,CAAC;QACpF,OAAO,EAAE,CAAC,aAAa,CAAC,EAAE,YAAY,EAAE,CAAC;IAC3C,CAAC;IAED,IAAI,MAAM,KAAK,MAAM,EAAE,CAAC;QACtB,MAAM,GAAG,GAAG,MAAM,cAAc,CAAC,IAAI,CAAC,CAAC;QACvC,MAAM,YAAY,GAAG,MAAM,sBAAsB,CAAC;YAChD,QAAQ,EAAE,IAAI,CAAC,QAAQ;YACvB,WAAW,EAAE,IAAI,CAAC,WAAW;YAC7B,KAAK,EAAE,IAAI,CAAC,KAAK;YACjB,aAAa;YACb,QAAQ,EAAE,aAAa;YACvB,MAAM,EAAE,GAAG;SACZ,CAAC,CAAC;QACH,IAAI,CAAC,EAAE,CAAC,IAAI,CAAC,qCAAqC,IAAI,CAAC,OAAO,CAAC,OAAO,EAAE,CAAC,CAAC;QAC1E,OAAO,EAAE,CAAC,aAAa,CAAC,EAAE,YAAY,EAAE,CAAC;IAC3C,CAAC;IAED,MAAM,kBAAkB,CAAC,IAAI,CAAC,CAAC;IAC/B,OAAO,gCAAgC,CAAC,IAAI,CAAC,CAAC;AAChD,CAAC;AAED,KAAK,UAAU,oBAAoB,CAAC,IASnC;IACC,IAAI,IAAI,CAAC,aAAa;QAAE,OAAO,IAAI,CAAC,aAAa,CAAC;IAClD,MAAM,OAAO,GAAG,OAAO,CAAC,GAAG,CAAC,+BAA+B,EAAE,IAAI,EAAE,CAAC;IACpE,IAAI,OAAO;QAAE,OAAO,mBAAmB,CAAC,OAAO,CAAC,CAAC;IAEjD,MAAM,SAAS,GAAG,MAAM,uBAAuB,CAAC,IAAI,CAAC,CAAC;IACtD,IAAI,SAAS;QAAE,OAAO,OAAO,CAAC;IAE9B,IAAI,IAAI,CAAC,QAAQ,EAAE,CAAC;QAClB,MAAM,IAAI,KAAK,CACb,UAAU,IAAI,CAAC,OAAO,CAAC,OAAO,gJAAgJ,CAC/K,CAAC;IACJ,CAAC;IAED,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,EAAE,CAAC,MAAM,CACjC,GAAG,IAAI,CAAC,OAAO,CAAC,OAAO,yEAAyE,EAChG,EAAE,YAAY,EAAE,MAAM,EAAE,CACzB,CAAC;IACF,OAAO,mBAAmB,CAAC,MAAM,CAAC,CAAC;AACrC,CAAC;AAED;;;;;;;;;;;;;GAaG;AACH,KAAK,UAAU,uBAAuB,CAAC,IAGtC;IACC,MAAM,IAAI,GAAG,MAAM,gBAAgB,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;IACnD,IAAI,CAAC,IAAI;QAAE,OAAO,KAAK,CAAC;IACxB,OAAO,mBAAmB,CAAC,IAAI,EAAE,mBAAmB,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC;AACtE,CAAC;AAED;;;GAGG;AACH,KAAK,UAAU,gBAAgB,CAAC,QAAgB;IAC9C,MAAM,IAAI,GAAG,MAAM,mBAAmB,CAAC,QAAQ,CAAC,CAAC;IACjD,IAAI,CAAC,IAAI;QAAE,OAAO,IAAI,CAAC;IACvB,MAAM,MAAM,GAAG,mBAAmB,CAAC,oBAAoB,CAAC,IAAI,EAAE,QAAQ,CAAC,CAAC;IACxE,MAAM,GAAG,GAAG,MAAM,MAAM,CAAC,KAAK,CAAC,sBAAsB,EAAE;QACrD,MAAM,EAAE,KAAK;QACb,OAAO,EAAE,EAAE,YAAY,EAAE,UAAU,EAAE;KACtC,CAAC,CAAC;IACH,IAAI,GAAG,CAAC,MAAM,KAAK,GAAG,IAAI,GAAG,CAAC,MAAM,KAAK,GAAG;QAAE,OAAO,IAAI,CAAC;IAC1D,IAAI,GAAG,CAAC,MAAM,KAAK,GAAG,EAAE,CAAC;QACvB,MAAM,IAAI,KAAK,CAAC,iFAAiF,CAAC,CAAC;IACrG,CAAC;IACD,IAAI,CAAC,GAAG,CAAC,EAAE,EAAE,CAAC;QACZ,MAAM,IAAI,KAAK,CAAC,+BAA+B,GAAG,CAAC,MAAM,IAAI,MAAM,eAAe,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;IAC7F,CAAC;IACD,OAAO,CAAC,MAAM,GAAG,CAAC,IAAI,EAAE,CAA4B,CAAC;AACvD,CAAC;AAED;;;;;;;;;;;;;;;GAeG;AACH,KAAK,UAAU,gCAAgC,CAAC,IAI/C;IACC,MAAM,QAAQ,GAAG,mBAAmB,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;IACnD,MAAM,IAAI,GAAG,MAAM,gBAAgB,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;IACnD,IAAI,QAAQ,KAAK,WAAW,EAAE,CAAC;QAC7B,iEAAiE;QACjE,gEAAgE;QAChE,mEAAmE;QACnE,iEAAiE;QACjE,qEAAqE;QACrE,oEAAoE;QACpE,uCAAuC;QACvC,MAAM,WAAW,GAAG,IAAI,CAAC,CAAC,CAAC,gCAAgC,CAAC,IAAI,EAAE,WAAW,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC;QACtF,IAAI,WAAW,EAAE,CAAC;YAChB,IAAI,CAAC,EAAE,CAAC,IAAI,CACV,UAAU,QAAQ,2DAA2D;gBAC3E,6FAA6F,CAChG,CAAC;YACF,OAAO,EAAE,SAAS,EAAE,WAAW,EAAE,CAAC;QACpC,CAAC;QACD,IAAI,CAAC,EAAE,CAAC,IAAI,CACV,UAAU,QAAQ,2DAA2D;YAC3E,wFAAwF,CAC3F,CAAC;QACF,OAAO,EAAE,CAAC;IACZ,CAAC;IACD,MAAM,YAAY,GAAG,IAAI,CAAC,CAAC,CAAC,gCAAgC,CAAC,IAAI,EAAE,QAAQ,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC;IACpF,IAAI,CAAC,YAAY,EAAE,CAAC;QAClB,IAAI,CAAC,EAAE,CAAC,IAAI,CACV,uBAAuB,QAAQ,0EAA0E,CAC1G,CAAC;QACF,OAAO,EAAE,CAAC;IACZ,CAAC;IACD,IAAI,CAAC,EAAE,CAAC,IAAI,CAAC,6BAA6B,QAAQ,yBAAyB,CAAC,CAAC;IAC7E,OAAO,EAAE,CAAC,QAAQ,CAAC,EAAE,YAAY,EAAE,CAAC;AACtC,CAAC;AAED,KAAK,UAAU,cAAc,CAAC,IAK7B;IACC,IAAI,IAAI,CAAC,OAAO,EAAE,IAAI,EAAE;QAAE,OAAO,IAAI,CAAC,OAAO,CAAC,IAAI,EAAE,CAAC;IACrD,MAAM,OAAO,GAAG,OAAO,CAAC,GAAG,CAAC,yBAAyB,EAAE,IAAI,EAAE,CAAC;IAC9D,IAAI,OAAO;QAAE,OAAO,OAAO,CAAC;IAC5B,IAAI,IAAI,CAAC,QAAQ,EAAE,CAAC;QAClB,MAAM,IAAI,KAAK,CACb,qFAAqF,IAAI,CAAC,OAAO,CAAC,OAAO,EAAE,CAC5G,CAAC;IACJ,CAAC;IACD,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,EAAE,CAAC,MAAM,CAAC,eAAe,IAAI,CAAC,OAAO,CAAC,OAAO,EAAE,CAAC,CAAC;IAC3E,IAAI,CAAC,MAAM,CAAC,IAAI,EAAE,EAAE,CAAC;QACnB,MAAM,IAAI,KAAK,CAAC,mCAAmC,IAAI,CAAC,OAAO,CAAC,OAAO,EAAE,CAAC,CAAC;IAC7E,CAAC;IACD,OAAO,MAAM,CAAC,IAAI,EAAE,CAAC;AACvB,CAAC;AAED,KAAK,UAAU,kBAAkB,CAAC,IAOjC;IACC,IAAI,MAAM,uBAAuB,CAAC,IAAI,CAAC,EAAE,CAAC;QACxC,IAAI,CAAC,EAAE,CAAC,IAAI,CAAC,UAAU,IAAI,CAAC,OAAO,CAAC,OAAO,gCAAgC,CAAC,CAAC;QAC7E,OAAO;IACT,CAAC;IACD,IAAI,IAAI,CAAC,QAAQ,EAAE,CAAC;QAClB,MAAM,IAAI,KAAK,CACb,UAAU,IAAI,CAAC,OAAO,CAAC,OAAO,qGAAqG,CACpI,CAAC;IACJ,CAAC;IACD,MAAM,EAAE,GAAG,MAAM,IAAI,CAAC,EAAE,CAAC,OAAO,CAC9B,WAAW,IAAI,CAAC,OAAO,CAAC,OAAO,mCAAmC,EAClE,EAAE,YAAY,EAAE,IAAI,EAAE,CACvB,CAAC;IACF,IAAI,CAAC,EAAE,EAAE,CAAC;QACR,MAAM,IAAI,KAAK,CAAC,UAAU,IAAI,CAAC,OAAO,CAAC,OAAO,sCAAsC,CAAC,CAAC;IACxF,CAAC;IACD,MAAM,aAAa,GAAG,mBAAmB,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;IACxD,MAAM,mBAAmB,CAAC,eAAe,CAAC;QACxC,QAAQ,EAAE,aAAa;QACvB,MAAM,EAAE,IAAI,CAAC,QAAQ;QACrB,QAAQ,EAAE,YAAY;QACtB,EAAE,EAAE;YACF,GAAG,EAAE,CAAC,GAAG,KAAgB,EAAE,EAAE,CAAC,IAAI,CAAC,EAAE,CAAC,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;YACvE,KAAK,EAAE,CAAC,GAAG,KAAgB,EAAE,EAAE,CAAC,IAAI,CAAC,EAAE,CAAC,KAAK,CAAC,KAAK,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;SAC3E;KACF,CAAC,CAAC;IACH,MAAM,SAAS,CACb,GAAG,EAAE,CAAC,uBAAuB,CAAC,IAAI,CAAC,EACnC,yBAAyB,IAAI,CAAC,OAAO,CAAC,OAAO,oBAAoB,CAClE,CAAC;IACF,IAAI,CAAC,EAAE,CAAC,IAAI,CAAC,UAAU,IAAI,CAAC,OAAO,CAAC,OAAO,wBAAwB,CAAC,CAAC;AACvE,CAAC;AAED,MAAM,UAAU,gCAAgC,CAAC,IAGhD;IACC,gCAAgC,CAAC,IAAI,CAAC,CAAC;AACzC,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,4BAA4B,CAAC,IASlD;IACC,MAAM,MAAM,GAAG,gCAAgC,CAAC,IAAI,CAAC,CAAC;IACtD,MAAM,QAAQ,GAAG,mBAAmB,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;IAEnD,IAAI,MAAM,KAAK,MAAM,EAAE,CAAC;QACtB,MAAM,GAAG,GAAG,MAAM,cAAc,CAAC,IAAI,CAAC,CAAC;QACvC,MAAM,YAAY,GAAG,MAAM,sBAAsB,CAAC;YAChD,QAAQ,EAAE,IAAI,CAAC,QAAQ;YACvB,WAAW,EAAE,IAAI,CAAC,WAAW;YAC7B,KAAK,EAAE,IAAI,CAAC,KAAK;YACjB,aAAa,EAAE,QAAQ;YACvB,QAAQ,EAAE,aAAa;YACvB,MAAM,EAAE,GAAG;SACZ,CAAC,CAAC;QACH,IAAI,CAAC,EAAE,CAAC,IAAI,CAAC,4CAA4C,QAAQ,EAAE,CAAC,CAAC;QACrE,OAAO;YACL,QAAQ;YACR,oBAAoB,EAAE,EAAE,CAAC,QAAQ,CAAC,EAAE,YAAY,EAAE;SACnD,CAAC;IACJ,CAAC;IAED,MAAM,uBAAuB,CAAC,IAAI,CAAC,CAAC;IACpC,MAAM,oBAAoB,GAAG,MAAM,gCAAgC,CAAC,IAAI,CAAC,CAAC;IAC1E,OAAO,MAAM,CAAC,IAAI,CAAC,oBAAoB,CAAC,CAAC,MAAM,GAAG,CAAC;QACjD,CAAC,CAAC,EAAE,QAAQ,EAAE,oBAAoB,EAAE;QACpC,CAAC,CAAC,EAAE,QAAQ,EAAE,CAAC;AACnB,CAAC;AAED,SAAS,gCAAgC,CAAC,IAGzC;IACC,MAAM,SAAS,GAAG,IAAI,CAAC,aAAa,IAAI,OAAO,CAAC,GAAG,CAAC,+BAA+B,EAAE,IAAI,EAAE,CAAC;IAC5F,MAAM,MAAM,GAAG,SAAS,CAAC,CAAC,CAAC,mBAAmB,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC;IACpE,IAAI,MAAM,KAAK,MAAM,EAAE,CAAC;QACtB,MAAM,IAAI,KAAK,CACb,YAAY,IAAI,CAAC,OAAO,CAAC,EAAE,wFAAwF;YACjH,yGAAyG,CAC5G,CAAC;IACJ,CAAC;IACD,OAAO,MAAM,CAAC;AAChB,CAAC;AAED,KAAK,UAAU,uBAAuB,CAAC,IAOtC;IACC,MAAM,QAAQ,GAAG,mBAAmB,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;IACnD,IAAI,MAAM,uBAAuB,CAAC,IAAI,CAAC,EAAE,CAAC;QACxC,IAAI,CAAC,EAAE,CAAC,IAAI,CAAC,iBAAiB,QAAQ,gCAAgC,CAAC,CAAC;QACxE,OAAO;IACT,CAAC;IACD,IAAI,IAAI,CAAC,QAAQ,EAAE,CAAC;QAClB,MAAM,IAAI,KAAK,CACb,YAAY,IAAI,CAAC,OAAO,CAAC,EAAE,mCAAmC,QAAQ,kCAAkC;YACtG,mJAAmJ,CACtJ,CAAC;IACJ,CAAC;IACD,MAAM,EAAE,GAAG,MAAM,IAAI,CAAC,EAAE,CAAC,OAAO,CAC9B,WAAW,QAAQ,uDAAuD,EAC1E,EAAE,YAAY,EAAE,IAAI,EAAE,CACvB,CAAC;IACF,IAAI,CAAC,EAAE,EAAE,CAAC;QACR,MAAM,IAAI,KAAK,CAAC,iEAAiE,CAAC,CAAC;IACrF,CAAC;IACD,MAAM,mBAAmB,CAAC,eAAe,CAAC;QACxC,QAAQ;QACR,MAAM,EAAE,IAAI,CAAC,QAAQ;QACrB,QAAQ,EAAE,YAAY;QACtB,EAAE,EAAE;YACF,GAAG,EAAE,CAAC,GAAG,KAAgB,EAAE,EAAE,CAAC,IAAI,CAAC,EAAE,CAAC,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;YACvE,KAAK,EAAE,CAAC,GAAG,KAAgB,EAAE,EAAE,CAAC,IAAI,CAAC,EAAE,CAAC,KAAK,CAAC,KAAK,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;SAC3E;KACF,CAAC,CAAC;IACH,MAAM,SAAS,CACb,GAAG,EAAE,CAAC,uBAAuB,CAAC,IAAI,CAAC,EACnC,yBAAyB,QAAQ,oBAAoB,CACtD,CAAC;IACF,IAAI,CAAC,EAAE,CAAC,IAAI,CAAC,iBAAiB,QAAQ,wBAAwB,CAAC,CAAC;AAClE,CAAC;AAED,KAAK,UAAU,qBAAqB,CAAC,IAQpC;IACC,MAAM,QAAQ,GAAG,MAAM,iBAAiB,CAAC,IAAI,CAAC,CAAC;IAC/C,IAAI,CAAC,QAAQ;QAAE,OAAO,EAAE,SAAS,EAAE,KAAK,EAAE,CAAC;IAC3C,MAAM,MAAM,GAAG,MAAM,eAAe,CAAC,IAAI,CAAC,CAAC;IAC3C,IAAI,MAAM,KAAK,QAAQ,EAAE,CAAC;QACxB,IAAI,CAAC,EAAE,CAAC,IAAI,CAAC,2CAA2C,IAAI,CAAC,SAAS,iBAAiB,CAAC,CAAC;QACzF,OAAO,EAAE,SAAS,EAAE,IAAI,EAAE,OAAO,EAAE,QAAQ,CAAC,EAAE,EAAE,CAAC;IACnD,CAAC;IACD,IAAI,MAAM,KAAK,QAAQ,EAAE,CAAC;QACxB,IAAI,CAAC,EAAE,CAAC,IAAI,CAAC,oCAAoC,IAAI,CAAC,SAAS,EAAE,CAAC,CAAC;QACnE,OAAO,EAAE,SAAS,EAAE,KAAK,EAAE,CAAC;IAC9B,CAAC;IAED,IAAI,CAAC,EAAE,CAAC,IAAI,CAAC,sCAAsC,IAAI,CAAC,SAAS,gBAAgB,CAAC,CAAC;IACnF,MAAM,WAAW,CAAC;QAChB,QAAQ,EAAE,IAAI,CAAC,QAAQ;QACvB,WAAW,EAAE,IAAI,CAAC,WAAW;QAC7B,KAAK,EAAE,IAAI,CAAC,KAAK;QACjB,OAAO,EAAE,QAAQ,CAAC,EAAE;QACpB,MAAM,EAAE,gCAAgC;KACzC,CAAC,CAAC;IACH,OAAO,EAAE,SAAS,EAAE,KAAK,EAAE,CAAC;AAC9B,CAAC;AAED;;;;;;;;;;;;;;;;;;;GAmBG;AACH,KAAK,UAAU,iBAAiB,CAAC,IAKhC;IACC,MAAM,GAAG,GAAG,GAAG,IAAI,CAAC,QAAQ,sBAAsB,kBAAkB,CAClE,IAAI,CAAC,WAAW,CACjB,cAAc,CAAC;IAChB,MAAM,GAAG,GAAG,MAAM,KAAK,CAAC,GAAG,EAAE;QAC3B,MAAM,EAAE,KAAK;QACb,OAAO,EAAE;YACP,aAAa,EAAE,UAAU,IAAI,CAAC,KAAK,EAAE;YACrC,YAAY,EAAE,UAAU;SACzB;KACF,CAAC,CAAC;IACH,IAAI,GAAG,CAAC,MAAM,KAAK,GAAG,IAAI,GAAG,CAAC,MAAM,KAAK,GAAG;QAAE,OAAO,IAAI,CAAC;IAC1D,IAAI,GAAG,CAAC,MAAM,KAAK,GAAG,EAAE,CAAC;QACvB,MAAM,IAAI,KAAK,CAAC,0FAA0F,CAAC,CAAC;IAC9G,CAAC;IACD,IAAI,CAAC,GAAG,CAAC,EAAE,EAAE,CAAC;QACZ,MAAM,IAAI,KAAK,CAAC,wCAAwC,GAAG,CAAC,MAAM,IAAI,MAAM,eAAe,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;IACtG,CAAC;IACD,OAAO,kBAAkB,CAAC,CAAC,MAAM,GAAG,CAAC,IAAI,EAAE,CAA0B,EAAE,IAAI,CAAC,SAAS,CAAC,CAAC;AACzF,CAAC;AAED,KAAK,UAAU,eAAe,CAAC,IAK9B;IACC,IAAI,IAAI,CAAC,QAAQ;QAAE,OAAO,IAAI,CAAC,QAAQ,CAAC;IACxC,MAAM,OAAO,GAAG,OAAO,CAAC,GAAG,CAAC,0BAA0B,EAAE,IAAI,EAAE,CAAC;IAC/D,IAAI,OAAO;QAAE,OAAO,oBAAoB,CAAC,OAAO,CAAC,CAAC;IAClD,IAAI,IAAI,CAAC,QAAQ,EAAE,CAAC;QAClB,OAAO,QAAQ,CAAC;IAClB,CAAC;IACD,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,EAAE,CAAC,MAAM,CACjC,WAAW,IAAI,CAAC,SAAS,oDAAoD,EAC7E,EAAE,YAAY,EAAE,QAAQ,EAAE,CAC3B,CAAC;IACF,OAAO,oBAAoB,CAAC,MAAM,CAAC,CAAC;AACtC,CAAC;AAED,KAAK,UAAU,WAAW,CAAC,IAM1B;IACC,MAAM,UAAU,GAAG,GAAG,IAAI,CAAC,QAAQ,sBAAsB,kBAAkB,CACzE,IAAI,CAAC,WAAW,CACjB,WAAW,kBAAkB,CAAC,IAAI,CAAC,OAAO,CAAC,UAAU,CAAC;IACvD,MAAM,GAAG,GAAG,MAAM,KAAK,CAAC,UAAU,EAAE;QAClC,MAAM,EAAE,MAAM;QACd,OAAO,EAAE;YACP,aAAa,EAAE,UAAU,IAAI,CAAC,KAAK,EAAE;YACrC,YAAY,EAAE,UAAU;SACzB;KACF,CAAC,CAAC;IACH,IAAI,GAAG,CAAC,MAAM,KAAK,GAAG,EAAE,CAAC;QACvB,MAAM,IAAI,KAAK,CAAC,GAAG,IAAI,CAAC,MAAM,2DAA2D,CAAC,CAAC;IAC7F,CAAC;IACD,IAAI,GAAG,CAAC,MAAM,KAAK,GAAG,IAAI,GAAG,CAAC,MAAM,KAAK,GAAG,EAAE,CAAC;QAC7C,MAAM,IAAI,KAAK,CACb,GAAG,IAAI,CAAC,MAAM,4EAA4E,CAC3F,CAAC;IACJ,CAAC;IACD,IAAI,CAAC,GAAG,CAAC,EAAE,EAAE,CAAC;QACZ,MAAM,IAAI,KAAK,CAAC,GAAG,IAAI,CAAC,MAAM,YAAY,GAAG,CAAC,MAAM,IAAI,MAAM,eAAe,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;IACxF,CAAC;AACH,CAAC;AAED;;;;;;;;;;;;;;GAcG;AACH,SAAS,kBAAkB,CACzB,IAA2B,EAC3B,iBAA0B;IAE1B,uEAAuE;IACvE,MAAM,MAAM,GAAG,cAAc,CAAC,IAAI,CAAC,KAAK,EAAE,iBAAiB,EAAE;QAC3D,mBAAmB,EAAE,KAAK;KAC3B,CAAC,CAAC;IACH,IAAI,MAAM;QAAE,OAAO,MAAM,CAAC;IAE1B,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,MAAM,CAAC;QAAE,OAAO,IAAI,CAAC;IAC7C,sEAAsE;IACtE,sEAAsE;IACtE,MAAM,OAAO,GAAuD,EAAE,CAAC;IACvE,KAAK,MAAM,KAAK,IAAI,IAAI,CAAC,MAAM,EAAE,CAAC;QAChC,MAAM,MAAM,GAAG,cAAc,CAAC,KAAK,EAAE,iBAAiB,EAAE;YACtD,mBAAmB,EAAE,OAAO,CAAC,iBAAiB,CAAC;SAChD,CAAC,CAAC;QACH,IAAI,CAAC,MAAM;YAAE,SAAS;QACtB,MAAM,YAAY,GAAG,KAAK,IAAI,OAAO,KAAK,KAAK,QAAQ,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC;YAC9E,CAAC,CAAE,KAAiC,CAAC,SAAS;YAC9C,CAAC,CAAC,SAAS,CAAC;QACd,MAAM,WAAW,GAAG,OAAO,YAAY,KAAK,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC;QACtF,OAAO,CAAC,IAAI,CAAC;YACX,KAAK,EAAE,MAAM;YACb,SAAS,EAAE,MAAM,CAAC,QAAQ,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC;SAC1D,CAAC,CAAC;IACL,CAAC;IACD,IAAI,OAAO,CAAC,MAAM,KAAK,CAAC;QAAE,OAAO,IAAI,CAAC;IACtC,iEAAiE;IACjE,gEAAgE;IAChE,4BAA4B;IAC5B,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE;QACpB,MAAM,OAAO,GAAG,CAAC,CAAC,KAAK,CAAC,MAAM,KAAK,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;QACpD,MAAM,OAAO,GAAG,CAAC,CAAC,KAAK,CAAC,MAAM,KAAK,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;QACpD,IAAI,OAAO,KAAK,OAAO;YAAE,OAAO,OAAO,GAAG,OAAO,CAAC;QAClD,OAAO,CAAC,CAAC,SAAS,GAAG,CAAC,CAAC,SAAS,CAAC;IACnC,CAAC,CAAC,CAAC;IACH,OAAO,OAAO,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC;AAC1B,CAAC;AAED;;;;;;;;;;;;;;GAcG;AACH,SAAS,cAAc,CACrB,KAAc,EACd,iBAA0B,EAC1B,OAA0C,EAAE;IAE5C,IAAI,CAAC,KAAK,IAAI,OAAO,KAAK,KAAK,QAAQ,IAAI,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC;QAAE,OAAO,IAAI,CAAC;IAC7E,MAAM,MAAM,GAAG,KAAgC,CAAC;IAChD,MAAM,EAAE,GAAG,eAAe,CAAC,MAAM,EAAE,CAAC,SAAS,EAAE,IAAI,CAAC,CAAC,CAAC;IACtD,IAAI,CAAC,EAAE;QAAE,OAAO,IAAI,CAAC;IACrB,IAAI,iBAAiB,EAAE,CAAC;QACtB,MAAM,iBAAiB,GAAG;YACxB,eAAe,CAAC,MAAM,EAAE,CAAC,cAAc,CAAC,CAAC;YACzC,eAAe,CAAC,MAAM,EAAE,CAAC,aAAa,EAAE,cAAc,EAAE,MAAM,CAAC,CAAC;YAChE,8DAA8D;YAC9D,+DAA+D;YAC/D,cAAc;YACd,eAAe,CAAC,MAAM,EAAE,CAAC,WAAW,EAAE,YAAY,CAAC,CAAC;SACrD,CAAC,MAAM,CAAC,CAAC,SAAS,EAAuB,EAAE,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC,CAAC;QACjE,IAAI,iBAAiB,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YACnC,kEAAkE;YAClE,0CAA0C;YAC1C,IAAI,IAAI,CAAC,mBAAmB;gBAAE,OAAO,IAAI,CAAC;QAC5C,CAAC;aAAM,IAAI,CAAC,iBAAiB,CAAC,QAAQ,CAAC,iBAAiB,CAAC,EAAE,CAAC;YAC1D,OAAO,IAAI,CAAC;QACd,CAAC;IACH,CAAC;IACD,qEAAqE;IACrE,sEAAsE;IACtE,MAAM,MAAM,GAAG,OAAO,MAAM,CAAC,MAAM,KAAK,QAAQ,CAAC,CAAC,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,SAAS,CAAC;IAC7E,IAAI,MAAM,KAAK,WAAW;QAAE,OAAO,IAAI,CAAC;IACxC,OAAO;QACL,EAAE;QACF,GAAG,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,MAAM,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;KAC9B,CAAC;AACJ,CAAC;AAED,KAAK,UAAU,sBAAsB,CAAC,IAOrC;IACC,IAAI,IAAI,CAAC,QAAQ,KAAK,eAAe,EAAE,CAAC;QACtC,MAAM,GAAG,GAAG,IAAI,GAAG,CAAC,GAAG,IAAI,CAAC,QAAQ,sBAAsB,kBAAkB,CAC1E,IAAI,CAAC,WAAW,CACjB,+BAA+B,CAAC,CAAC;QAClC,GAAG,CAAC,YAAY,CAAC,GAAG,CAAC,UAAU,EAAE,IAAI,CAAC,aAAa,CAAC,CAAC;QACrD,MAAM,IAAI,GAAG,MAAM,oBAAoB,CACrC,GAAG,CAAC,QAAQ,EAAE,EACd;YACE,MAAM,EAAE,MAAM;YACd,OAAO,EAAE,WAAW,CAAC,IAAI,CAAC,KAAK,CAAC;SACjC,EACD,EAAE,MAAM,EAAE,oCAAoC,EAAE,CACjD,CAAC;QACF,OAAO,gBAAgB,CAAC,IAAI,CAAC,CAAC;IAChC,CAAC;IAED,MAAM,IAAI,GAAG,MAAM,oBAAoB,CACrC,GAAG,IAAI,CAAC,QAAQ,sBAAsB,kBAAkB,CAAC,IAAI,CAAC,WAAW,CAAC,4BAA4B,EACtG;QACE,MAAM,EAAE,MAAM;QACd,OAAO,EAAE,WAAW,CAAC,IAAI,CAAC,KAAK,CAAC;QAChC,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC;YACnB,oEAAoE;YACpE,sEAAsE;YACtE,aAAa,EAAE,IAAI,CAAC,aAAa;YACjC,cAAc,EAAE,IAAI,CAAC,aAAa;YAClC,GAAG,EAAE,IAAI,CAAC,MAAM;YAChB,OAAO,EAAE,IAAI,CAAC,MAAM;SACrB,CAAC;KACH,EACD,EAAE,MAAM,EAAE,iCAAiC,EAAE,CAC9C,CAAC;IACF,OAAO,gBAAgB,CAAC,IAAI,CAAC,CAAC;AAChC,CAAC;AAED,SAAS,mBAAmB,CAAC,OAAoB;IAC/C,2EAA2E;IAC3E,sEAAsE;IACtE,6CAA6C;IAC7C,MAAM,eAAe,GAAG,OAAO,CAAC,OAAO,IAAI,WAAW,CAAC;IACvD,MAAM,KAAK,GAAG,OAAO,OAAO,CAAC,KAAK,KAAK,QAAQ,CAAC,CAAC,CAAC,OAAO,CAAC,KAAK,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;IAC5E,IAAI,CAAC,KAAK;QAAE,OAAO,eAAe,CAAC;IACnC,MAAM,KAAK,GAAG,KAAK,CAAC,WAAW,EAAE,CAAC;IAClC,IAAI,oBAAoB,CAAC,KAAK,EAAE,CAAC,WAAW,EAAE,QAAQ,CAAC,CAAC;QAAE,OAAO,WAAW,CAAC;IAC7E,IAAI,oBAAoB,CAAC,KAAK,EAAE,CAAC,QAAQ,EAAE,OAAO,EAAE,KAAK,CAAC,CAAC;QAAE,OAAO,QAAQ,CAAC;IAC7E,IAAI,oBAAoB,CAAC,KAAK,EAAE,CAAC,QAAQ,EAAE,QAAQ,CAAC,CAAC;QAAE,OAAO,QAAQ,CAAC;IACvE,IAAI,oBAAoB,CAAC,KAAK,EAAE,CAAC,YAAY,EAAE,UAAU,CAAC,CAAC;QAAE,OAAO,YAAY,CAAC;IACjF,MAAM,CAAC,QAAQ,CAAC,GAAG,KAAK,CAAC,KAAK,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC;IAC1C,IAAI,QAAQ,EAAE,IAAI,EAAE;QAAE,OAAO,QAAQ,CAAC,IAAI,EAAE,CAAC,WAAW,EAAE,CAAC;IAC3D,OAAO,eAAe,CAAC;AACzB,CAAC;AAED,SAAS,oBAAoB,CAAC,KAAa,EAAE,MAAyB;IACpE,OAAO,MAAM,CAAC,IAAI,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,IAAI,MAAM,CAAC,IAAI,YAAY,CAAC,KAAK,CAAC,aAAa,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC;AAC9F,CAAC;AAED,SAAS,YAAY,CAAC,KAAa;IACjC,OAAO,KAAK,CAAC,OAAO,CAAC,qBAAqB,EAAE,MAAM,CAAC,CAAC;AACtD,CAAC;AAED,SAAS,gBAAgB,CAAC,IAA6B;IACrD,MAAM,MAAM,GAAG,eAAe,CAAC,IAAI,EAAE,CAAC,sBAAsB,EAAE,wBAAwB,EAAE,cAAc,EAAE,IAAI,CAAC,CAAC,CAAC;IAC/G,IAAI,MAAM;QAAE,OAAO,MAAM,CAAC;IAC1B,KAAK,MAAM,KAAK,IAAI,CAAC,YAAY,EAAE,oBAAoB,CAAC,EAAE,CAAC;QACzD,MAAM,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC;QAC3B,IAAI,MAAM,IAAI,OAAO,MAAM,KAAK,QAAQ,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,EAAE,CAAC;YACnE,MAAM,QAAQ,GAAG,eAAe,CAAC,MAAM,EAAE,CAAC,IAAI,EAAE,sBAAsB,EAAE,wBAAwB,CAAC,CAAC,CAAC;YACnG,IAAI,QAAQ;gBAAE,OAAO,QAAQ,CAAC;QAChC,CAAC;IACH,CAAC;IACD,MAAM,IAAI,KAAK,CAAC,2DAA2D,CAAC,CAAC;AAC/E,CAAC;AAED;;;;;;;;;;;;;;;;GAgBG;AACH,SAAS,uBAAuB,CAC9B,IAA6B,EAC7B,gBAAwB;IAExB,IAAI,CAAC,IAAI,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,MAAM,CAAC;QAAE,OAAO,EAAE,CAAC;IACpD,MAAM,QAAQ,GAAG,gBAAgB,CAAC,IAAI,EAAE,CAAC,WAAW,EAAE,CAAC;IACvD,IAAI,CAAC,QAAQ;QAAE,OAAO,EAAE,CAAC;IACzB,MAAM,OAAO,GAAG,IAAI,GAAG,CAAC,CAAC,QAAQ,EAAE,4BAA4B,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC;IAC5E,MAAM,OAAO,GAAsB,EAAE,CAAC;IACtC,KAAK,MAAM,KAAK,IAAI,IAAI,CAAC,MAAM,EAAE,CAAC;QAChC,IAAI,CAAC,KAAK,IAAI,OAAO,KAAK,KAAK,QAAQ,IAAI,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC;YAAE,SAAS;QAC1E,MAAM,KAAK,GAAG,KAAwB,CAAC;QACvC,IAAI,OAAO,KAAK,CAAC,OAAO,KAAK,QAAQ;YAAE,SAAS;QAChD,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,OAAO,CAAC,IAAI,EAAE,CAAC,WAAW,EAAE,CAAC;YAAE,SAAS;QAC/D,IAAI,KAAK,CAAC,MAAM,KAAK,WAAW;YAAE,SAAS;QAC3C,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;IACtB,CAAC;IACD,OAAO,OAAO,CAAC;AACjB,CAAC;AAED,SAAS,mBAAmB,CAAC,IAA6B,EAAE,gBAAwB;IAClF,OAAO,uBAAuB,CAAC,IAAI,EAAE,gBAAgB,CAAC,CAAC,MAAM,GAAG,CAAC,CAAC;AACpE,CAAC;AAED,SAAS,gCAAgC,CACvC,IAA6B,EAC7B,gBAAwB;IAExB,MAAM,OAAO,GAAG,uBAAuB,CAAC,IAAI,EAAE,gBAAgB,CAAC,CAAC;IAChE,qEAAqE;IACrE,yEAAyE;IACzE,wEAAwE;IACxE,8DAA8D;IAC9D,MAAM,UAAU,GAAG;QACjB,GAAG,OAAO,CAAC,MAAM,CAAC,uBAAuB,CAAC;QAC1C,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC,uBAAuB,CAAC,KAAK,CAAC,CAAC;KAC9D,CAAC;IACF,KAAK,MAAM,KAAK,IAAI,UAAU,EAAE,CAAC;QAC/B,IAAI,OAAO,KAAK,CAAC,EAAE,KAAK,QAAQ,IAAI,KAAK,CAAC,EAAE,CAAC,IAAI,EAAE;YAAE,OAAO,KAAK,CAAC,EAAE,CAAC,IAAI,EAAE,CAAC;IAC9E,CAAC;IACD,OAAO,IAAI,CAAC;AACd,CAAC;AAED,SAAS,uBAAuB,CAAC,KAAsB;IACrD,OAAO,KAAK,CAAC,QAAQ,KAAK,IAAI,IAAI,KAAK,CAAC,SAAS,KAAK,IAAI,CAAC;AAC7D,CAAC;AAED;;;;GAIG;AACH,SAAS,4BAA4B,CAAC,aAAqB;IACzD,QAAQ,aAAa,EAAE,CAAC;QACtB,KAAK,WAAW;YACd,OAAO,QAAQ,CAAC;QAClB,KAAK,QAAQ;YACX,OAAO,OAAO,CAAC;QACjB,KAAK,QAAQ;YACX,OAAO,QAAQ,CAAC;QAClB,KAAK,YAAY;YACf,OAAO,UAAU,CAAC;QACpB;YACE,OAAO,aAAa,CAAC;IACzB,CAAC;AACH,CAAC;AAED,SAAS,mBAAmB,CAAC,KAAa;IACxC,MAAM,UAAU,GAAG,KAAK,CAAC,IAAI,EAAE,CAAC,WAAW,EAAE,CAAC;IAC9C,IAAI,UAAU,KAAK,MAAM,IAAI,UAAU,KAAK,MAAM,IAAI,UAAU,KAAK,OAAO,EAAE,CAAC;QAC7E,OAAO,UAAU,CAAC;IACpB,CAAC;IACD,MAAM,IAAI,KAAK,CAAC,8DAA8D,KAAK,GAAG,CAAC,CAAC;AAC1F,CAAC;AAED,SAAS,oBAAoB,CAAC,KAAa;IACzC,MAAM,UAAU,GAAG,KAAK,CAAC,IAAI,EAAE,CAAC,WAAW,EAAE,CAAC;IAC9C,IAAI,UAAU,KAAK,QAAQ,IAAI,UAAU,KAAK,SAAS,IAAI,UAAU,KAAK,QAAQ,EAAE,CAAC;QACnF,OAAO,UAAU,CAAC;IACpB,CAAC;IACD,MAAM,IAAI,KAAK,CAAC,+DAA+D,KAAK,GAAG,CAAC,CAAC;AAC3F,CAAC;AAED,SAAS,eAAe,CACtB,IAAY,EACZ,MAAyB;IAEzB,MAAM,MAAM,GAAG,IAA+B,CAAC;IAC/C,KAAK,MAAM,KAAK,IAAI,MAAM,EAAE,CAAC;QAC3B,MAAM,KAAK,GAAG,MAAM,CAAC,KAAK,CAAC,CAAC;QAC5B,IAAI,OAAO,KAAK,KAAK,QAAQ,IAAI,KAAK,CAAC,IAAI,EAAE,EAAE,CAAC;YAC9C,OAAO,KAAK,CAAC,IAAI,EAAE,CAAC;QACtB,CAAC;IACH,CAAC;IACD,OAAO,SAAS,CAAC;AACnB,CAAC;AAED,KAAK,UAAU,SAAS,CACtB,KAA6B,EAC7B,cAAsB;IAEtB,MAAM,QAAQ,GAAG,IAAI,CAAC,GAAG,EAAE,GAAG,aAAa,EAAE,CAAC;IAC9C,OAAO,IAAI,CAAC,GAAG,EAAE,GAAG,QAAQ,EAAE,CAAC;QAC7B,IAAI,MAAM,KAAK,EAAE;YAAE,OAAO;QAC1B,MAAM,KAAK,CAAC,cAAc,EAAE,CAAC,CAAC;IAChC,CAAC;IACD,MAAM,IAAI,KAAK,CAAC,cAAc,CAAC,CAAC;AAClC,CAAC;AAED,SAAS,yBAAyB,CAAC,OAAoB;IACrD,MAAM,KAAK,GAAI,OAA6C,CAAC,KAAK,CAAC;IACnE,IAAI,KAAK,KAAK,IAAI,IAAI,OAAO,KAAK,KAAK,QAAQ,IAAI,WAAW,IAAI,KAAK,EAAE,CAAC;QACxE,MAAM,SAAS,GAAI,KAAiC,CAAC,SAAS,CAAC;QAC/D,IAAI,OAAO,SAAS,KAAK,QAAQ,IAAI,SAAS,CAAC,IAAI,EAAE,EAAE,CAAC;YACtD,OAAO,SAAS,CAAC,IAAI,EAAE,CAAC;QAC1B,CAAC;IACH,CAAC;IACD,OAAO,SAAS,CAAC;AACnB,CAAC;AAED,SAAS,iBAAiB,CAAC,GAAW;IACpC,MAAM,OAAO,GAAG,GAAG,CAAC,IAAI,EAAE,CAAC;IAC3B,IAAI,CAAC,OAAO;QAAE,OAAO,iBAAiB,CAAC,aAAa,EAAE,CAAC,CAAC;IACxD,OAAO,OAAO,CAAC,OAAO,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC;AACrC,CAAC;AAED,KAAK,UAAU,mBAAmB,CAAC,MAAc;IAC/C,IAAI,IAAI,GAAG,MAAM,mBAAmB,CAAC,cAAc,EAAE,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC,IAAI,CAAC,CAAC;IACxE,IAAI,CAAC,IAAI;QAAE,OAAO,IAAI,CAAC;IACvB,IAAI,aAAa,CAAC,IAAI,CAAC,oBAAoB,CAAC,EAAE,CAAC;QAC7C,IAAI,GAAG,MAAM,mBAAmB,CAAC,iBAAiB,CAAC,IAAI,CAAC,CAAC,KAAK,CAAC,CAAC,GAAG,EAAE,EAAE;YACrE,OAAO,CAAC,IAAI,CAAC,sCAAsC,kBAAkB,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;YAC9E,OAAO,IAAI,CAAC;QACd,CAAC,CAAC,CAAC;IACL,CAAC;IACD,IAAI,CAAC,IAAI;QAAE,OAAO,IAAI,CAAC;IACvB,OAAO;QACL,GAAG,IAAI;QACP,MAAM;KACP,CAAC;AACJ,CAAC;AAED,SAAS,kBAAkB,CAAC,GAAY;IACtC,OAAO,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;AAC1D,CAAC;AAED,SAAS,aAAa,CAAC,SAAiB;IACtC,MAAM,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC;IACrC,OAAO,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC,IAAI,MAAM,IAAI,IAAI,CAAC,GAAG,EAAE,GAAG,MAAM,CAAC;AAC/D,CAAC;AAED,SAAS,kBAAkB;IACzB,MAAM,GAAG,GAAG,OAAO,CAAC,GAAG,CAAC,4BAA4B,EAAE,IAAI,EAAE,CAAC;IAC7D,IAAI,CAAC,GAAG;QAAE,OAAO,SAAS,CAAC;IAC3B,IAAI,MAAe,CAAC;IACpB,IAAI,CAAC;QACH,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;IAC3B,CAAC;IAAC,MAAM,CAAC;QACP,MAAM,IAAI,KAAK,CAAC,gDAAgD,CAAC,CAAC;IACpE,CAAC;IACD,IAAI,CAAC,MAAM,IAAI,OAAO,MAAM,KAAK,QAAQ,IAAI,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,EAAE,CAAC;QACnE,MAAM,IAAI,KAAK,CAAC,oDAAoD,CAAC,CAAC;IACxE,CAAC;IACD,MAAM,GAAG,GAA2B,EAAE,CAAC;IACvC,KAAK,MAAM,CAAC,GAAG,EAAE,KAAK,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,MAAM,CAAC,EAAE,CAAC;QAClD,IAAI,OAAO,KAAK,KAAK,QAAQ,EAAE,CAAC;YAC9B,MAAM,IAAI,KAAK,CAAC,gCAAgC,GAAG,mBAAmB,CAAC,CAAC;QAC1E,CAAC;QACD,GAAG,CAAC,GAAG,CAAC,GAAG,KAAK,CAAC;IACnB,CAAC;IACD,OAAO,GAAG,CAAC;AACb,CAAC;AAED,KAAK,UAAU,eAAe,CAAC,IAO9B;IACC,MAAM,SAAS,GAAG,GAAG,IAAI,CAAC,QAAQ,sBAAsB,kBAAkB,CACxE,IAAI,CAAC,WAAW,CACjB,WAAW,kBAAkB,CAAC,IAAI,CAAC,OAAO,CAAC,EAAE,CAAC;IAC/C,MAAM,QAAQ,GAAG,IAAI,CAAC,GAAG,EAAE,GAAG,aAAa,EAAE,CAAC;IAC9C,IAAI,UAAU,GAAG,UAAU,CAAC;IAE5B,OAAO,IAAI,CAAC,GAAG,EAAE,GAAG,QAAQ,EAAE,CAAC;QAC7B,MAAM,KAAK,CAAC,cAAc,EAAE,CAAC,CAAC;QAC9B,MAAM,IAAI,GAAG,MAAM,oBAAoB,CACrC,SAAS,EACT;YACE,MAAM,EAAE,KAAK;YACb,OAAO,EAAE;gBACP,aAAa,EAAE,UAAU,IAAI,CAAC,KAAK,EAAE;gBACrC,YAAY,EAAE,UAAU;aACzB;SACF,EACD,EAAE,MAAM,EAAE,mBAAmB,EAAE,CAChC,CAAC;QACF,MAAM,MAAM,GAAG,YAAY,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;QACzC,IAAI,MAAM,KAAK,UAAU,EAAE,CAAC;YAC1B,OAAO,CAAC,IAAI,EAAE,iBAAiB,MAAM,EAAE,CAAC,CAAC;YACzC,UAAU,GAAG,MAAM,CAAC;QACtB,CAAC;QACD,IAAI,MAAM,KAAK,OAAO,IAAI,MAAM,KAAK,QAAQ,IAAI,MAAM,KAAK,QAAQ;YAAE,OAAO,MAAM,CAAC;IACtF,CAAC;IAED,MAAM,IAAI,KAAK,CAAC,mBAAmB,aAAa,EAAE,GAAG,IAAI,uBAAuB,IAAI,CAAC,OAAO,EAAE,CAAC,CAAC;AAClG,CAAC;AAED,SAAS,WAAW,CAAC,KAAa;IAChC,OAAO;QACL,aAAa,EAAE,UAAU,KAAK,EAAE;QAChC,cAAc,EAAE,kBAAkB;QAClC,YAAY,EAAE,UAAU;KACzB,CAAC;AACJ,CAAC;AAED,KAAK,UAAU,oBAAoB,CACjC,GAAW,EACX,IAAiB,EACjB,IAAwB;IAExB,IAAI,SAAkB,CAAC;IACvB,KAAK,IAAI,OAAO,GAAG,CAAC,EAAE,OAAO,IAAI,YAAY,EAAE,OAAO,IAAI,CAAC,EAAE,CAAC;QAC5D,IAAI,CAAC;YACH,MAAM,GAAG,GAAG,MAAM,KAAK,CAAC,GAAG,EAAE,IAAI,CAAC,CAAC;YACnC,IAAI,GAAG,CAAC,MAAM,KAAK,GAAG,EAAE,CAAC;gBACvB,MAAM,IAAI,KAAK,CAAC,GAAG,IAAI,CAAC,MAAM,2DAA2D,CAAC,CAAC;YAC7F,CAAC;YACD,IAAI,GAAG,CAAC,MAAM,IAAI,GAAG,IAAI,OAAO,GAAG,YAAY,EAAE,CAAC;gBAChD,SAAS,GAAG,IAAI,KAAK,CAAC,GAAG,IAAI,CAAC,MAAM,YAAY,GAAG,CAAC,MAAM,IAAI,MAAM,eAAe,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;YAC9F,CAAC;iBAAM,IAAI,CAAC,GAAG,CAAC,EAAE,EAAE,CAAC;gBACnB,MAAM,IAAI,KAAK,CAAC,GAAG,IAAI,CAAC,MAAM,YAAY,GAAG,CAAC,MAAM,IAAI,MAAM,eAAe,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;YACxF,CAAC;iBAAM,CAAC;gBACN,OAAO,CAAC,MAAM,GAAG,CAAC,IAAI,EAAE,CAAM,CAAC;YACjC,CAAC;QACH,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACb,SAAS,GAAG,GAAG,CAAC;YAChB,IAAI,OAAO,KAAK,YAAY,IAAI,CAAC,gBAAgB,CAAC,GAAG,CAAC,EAAE,CAAC;gBACvD,MAAM,GAAG,CAAC;YACZ,CAAC;QACH,CAAC;QACD,MAAM,KAAK,CAAC,SAAS,CAAC,OAAO,CAAC,CAAC,CAAC;IAClC,CAAC;IAED,MAAM,SAAS,YAAY,KAAK,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,IAAI,KAAK,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC,CAAC;AAC9E,CAAC;AAED,SAAS,gBAAgB,CAAC,GAAY;IACpC,IAAI,CAAC,CAAC,GAAG,YAAY,KAAK,CAAC;QAAE,OAAO,KAAK,CAAC;IAC1C,IAAI,GAAG,CAAC,OAAO,CAAC,QAAQ,CAAC,cAAc,CAAC;QAAE,OAAO,KAAK,CAAC;IACvD,IAAI,GAAG,CAAC,OAAO,CAAC,QAAQ,CAAC,WAAW,CAAC;QAAE,OAAO,KAAK,CAAC;IACpD,OAAO,IAAI,CAAC;AACd,CAAC;AAED,SAAS,SAAS,CAAC,OAAe;IAChC,MAAM,QAAQ,GAAG,aAAa,CAAC,mCAAmC,CAAC,CAAC;IACpE,OAAO,QAAQ,IAAI,OAAO,GAAG,GAAG,CAAC;AACnC,CAAC;AAED,SAAS,KAAK,CAAC,EAAU;IACvB,OAAO,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,UAAU,CAAC,OAAO,EAAE,EAAE,CAAC,CAAC,CAAC;AAC3D,CAAC;AAED,SAAS,OAAO,CAAC,IAGhB,EAAE,IAAY;IACb,IAAI,CAAC,KAAK,EAAE,CAAC,IAAI,CAAC,CAAC;IACnB,IAAI,CAAC,EAAE,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;AACrB,CAAC;AAED,SAAS,aAAa;IACpB,OAAO,aAAa,CAAC,kCAAkC,CAAC,IAAI,eAAe,CAAC;AAC9E,CAAC;AAED,SAAS,cAAc;IACrB,OAAO,aAAa,CAAC,mCAAmC,CAAC,IAAI,gBAAgB,CAAC;AAChF,CAAC;AAED,SAAS,aAAa,CAAC,IAAY;IACjC,MAAM,GAAG,GAAG,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,CAAC;IACtC,IAAI,CAAC,GAAG;QAAE,OAAO,SAAS,CAAC;IAC3B,MAAM,MAAM,GAAG,MAAM,CAAC,GAAG,CAAC,CAAC;IAC3B,OAAO,MAAM,CAAC,QAAQ,CAAC,MAAM,CAAC,IAAI,MAAM,IAAI,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,SAAS,CAAC;AACrE,CAAC;AAED,KAAK,UAAU,eAAe,CAAC,GAAa;IAC1C,MAAM,IAAI,GAAG,MAAM,GAAG,CAAC,IAAI,EAAE,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC,EAAE,CAAC,CAAC;IAC9C,OAAO,IAAI,CAAC,IAAI,EAAE,CAAC,KAAK,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC;AACnC,CAAC;AAED,SAAS,YAAY,CAAC,KAAc,EAAE,KAAa;IACjD,IAAI,OAAO,KAAK,KAAK,QAAQ,IAAI,CAAC,KAAK,CAAC,IAAI,EAAE,EAAE,CAAC;QAC/C,MAAM,IAAI,KAAK,CAAC,iCAAiC,KAAK,EAAE,CAAC,CAAC;IAC5D,CAAC;IACD,OAAO,KAAK,CAAC;AACf,CAAC;AAED,SAAS,YAAY,CAAC,KAAc;IAClC,IACE,KAAK,KAAK,OAAO;WACd,KAAK,KAAK,UAAU;WACpB,KAAK,KAAK,QAAQ;WAClB,KAAK,KAAK,QAAQ;WAClB,KAAK,KAAK,WAAW,EACxB,CAAC;QACD,OAAO,KAAK,CAAC;IACf,CAAC;IACD,MAAM,IAAI,KAAK,CAAC,6CAA6C,MAAM,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;AACjF,CAAC"}
@@ -140,11 +140,15 @@ async function launch(overrides) {
140
140
  }
141
141
  }
142
142
  test('cloud launcher POSTs a deploy bundle and returns the cloud handle', async () => {
143
+ const dispatcherAgentSpec = {
144
+ ...agentSpec,
145
+ launchedBy: 'team-dispatcher'
146
+ };
143
147
  const { handle, calls } = await launch({
144
148
  env: {
145
149
  WORKFORCE_DEPLOY_CLOUD_URL: 'https://cloud.example.test'
146
150
  },
147
- input: { inputs: { topic: 'AI' } },
151
+ input: { inputs: { topic: 'AI' }, agent: dispatcherAgentSpec },
148
152
  fetch(url, init) {
149
153
  if (init?.method === 'GET' && url.endsWith('/deployments')) {
150
154
  return okJson({ agents: [] });
@@ -154,7 +158,7 @@ test('cloud launcher POSTs a deploy bundle and returns the cloud handle', async
154
158
  const body = JSON.parse(String(init?.body));
155
159
  assert.equal(body.persona.id, 'demo');
156
160
  // Listeners travel as the top-level `agent` block, not on the persona.
157
- assert.deepEqual(body.agent, agentSpec);
161
+ assert.deepEqual(body.agent, dispatcherAgentSpec);
158
162
  assert.equal(body.persona.schedules, undefined);
159
163
  assert.deepEqual(body.inputs, { topic: 'AI' });
160
164
  assert.deepEqual(body.bundle.packageJson, { type: 'module' });
@@ -523,7 +527,9 @@ test('cloud harness OAuth starts auth and polls /cloud-agents until the harness
523
527
  restoreDeps();
524
528
  await cleanup();
525
529
  }
526
- assert.equal(credentialChecks, 3);
530
+ // 3 connection polls + 1 post-connect selections lookup (the oauth leg
531
+ // re-reads /cloud-agents to stamp credentialSelections — workforce#196).
532
+ assert.equal(credentialChecks, 4);
527
533
  assert.deepEqual(connected, ['openai']);
528
534
  });
529
535
  test('cloud launcher maps 401 deploy responses to the workforce login guidance', async () => {
@@ -937,4 +943,265 @@ test('findExistingAgent: malformed array entries (null/empty) are skipped withou
937
943
  function callsForUrl(calls, suffix) {
938
944
  return calls.filter((call) => call.url.endsWith(suffix)).length;
939
945
  }
946
+ test('cloud oauth deploy stamps anthropic credentialSelections from the connected row', async () => {
947
+ // workforce#196: the byok/plan legs stamp the credential they create, but
948
+ // the oauth leg deployed with empty selections, so ctx.llm stubbed on
949
+ // every fire. The connected row id comes back through
950
+ // /api/v1/cloud-agents (cloud selects it straight from
951
+ // provider_credentials). Note the row's harness field holds the
952
+ // OAuth-completion alias 'claude', not the model-provider string
953
+ // 'anthropic' — the lookup must match both spellings.
954
+ const restoreDeps = configureCloudCredentialDepsForTest({
955
+ readStoredAuth: async () => ({
956
+ apiUrl: 'https://cloud.example.test',
957
+ accessToken: 'access',
958
+ refreshToken: 'refresh',
959
+ accessTokenExpiresAt: '2999-01-01T00:00:00.000Z'
960
+ }),
961
+ createCloudApiClient() {
962
+ return {
963
+ async fetch(pathname) {
964
+ assert.equal(pathname, '/api/v1/cloud-agents');
965
+ return okJson({
966
+ agents: [
967
+ { id: 'pc-anthropic-1', harness: 'claude', status: 'connected' }
968
+ ]
969
+ });
970
+ }
971
+ };
972
+ }
973
+ });
974
+ try {
975
+ const { handle, io } = await launch({
976
+ persona: persona({ harness: 'claude', model: 'claude-sonnet-4-6' }),
977
+ defaultPlanCredential: false,
978
+ env: {
979
+ WORKFORCE_DEPLOY_CLOUD_URL: 'https://cloud.example.test',
980
+ WORKFORCE_DEPLOY_HARNESS_SOURCE: 'oauth',
981
+ WORKFORCE_DEPLOY_NO_PROMPT: '1'
982
+ },
983
+ fetch(url, init) {
984
+ if (init?.method === 'GET' && url.endsWith('/deployments'))
985
+ return okJson({ agents: [] });
986
+ if (url.endsWith('/deployments')) {
987
+ const body = JSON.parse(String(init?.body));
988
+ assert.deepEqual(body.credentialSelections, { anthropic: 'pc-anthropic-1' });
989
+ assert.deepEqual(body.credential_selections, { anthropic: 'pc-anthropic-1' });
990
+ return okJson({ agentId: 'agent-oauth-anthropic', deploymentId: 'dep-1', status: 'active' }, 201);
991
+ }
992
+ throw new Error(`unexpected URL ${url}`);
993
+ }
994
+ });
995
+ assert.equal(handle.id, 'agent-oauth-anthropic');
996
+ assert.ok(io.messages.some((entry) => entry.message.includes('selected connected anthropic credential')), 'expected the selected-credential info line');
997
+ }
998
+ finally {
999
+ restoreDeps();
1000
+ }
1001
+ });
1002
+ test('cloud oauth deploy does NOT stamp openai selections and prints the harness-only message', async () => {
1003
+ // ChatGPT/codex OAuth tokens are harness-only: cloud's runtime credential
1004
+ // resolution rejects them for env injection, so stamping one would turn
1005
+ // the ctx.llm stub into a failed delivery. The deploy must stay
1006
+ // unstamped and tell the user the working alternatives.
1007
+ const restoreDeps = configureCloudCredentialDepsForTest({
1008
+ readStoredAuth: async () => ({
1009
+ apiUrl: 'https://cloud.example.test',
1010
+ accessToken: 'access',
1011
+ refreshToken: 'refresh',
1012
+ accessTokenExpiresAt: '2999-01-01T00:00:00.000Z'
1013
+ }),
1014
+ createCloudApiClient() {
1015
+ return {
1016
+ async fetch(pathname) {
1017
+ assert.equal(pathname, '/api/v1/cloud-agents');
1018
+ return okJson({
1019
+ agents: [
1020
+ { id: 'pc-openai-1', harness: 'openai', status: 'connected' }
1021
+ ]
1022
+ });
1023
+ }
1024
+ };
1025
+ }
1026
+ });
1027
+ try {
1028
+ const { io } = await launch({
1029
+ defaultPlanCredential: false,
1030
+ env: {
1031
+ WORKFORCE_DEPLOY_CLOUD_URL: 'https://cloud.example.test',
1032
+ WORKFORCE_DEPLOY_HARNESS_SOURCE: 'oauth',
1033
+ WORKFORCE_DEPLOY_NO_PROMPT: '1'
1034
+ },
1035
+ fetch(url, init) {
1036
+ if (init?.method === 'GET' && url.endsWith('/deployments'))
1037
+ return okJson({ agents: [] });
1038
+ if (url.endsWith('/deployments')) {
1039
+ const body = JSON.parse(String(init?.body));
1040
+ assert.deepEqual(body.credentialSelections, {});
1041
+ assert.deepEqual(body.credential_selections, {});
1042
+ return okJson({ agentId: 'agent-oauth-openai', deploymentId: 'dep-1', status: 'active' }, 201);
1043
+ }
1044
+ throw new Error(`unexpected URL ${url}`);
1045
+ }
1046
+ });
1047
+ assert.ok(io.messages.some((entry) => entry.message.includes('harness-only')), 'expected the harness-only guidance line');
1048
+ }
1049
+ finally {
1050
+ restoreDeps();
1051
+ }
1052
+ });
1053
+ test('cloud oauth deploy falls back to unstamped when the connected row has no id', async () => {
1054
+ // Defensive split between the probe and the stamp: a connected entry
1055
+ // missing its id must still count as connected (no reconnect prompt)
1056
+ // while the selection stamp degrades to today's unstamped behavior with
1057
+ // an explanatory line instead of failing the deploy.
1058
+ const restoreDeps = configureCloudCredentialDepsForTest({
1059
+ readStoredAuth: async () => ({
1060
+ apiUrl: 'https://cloud.example.test',
1061
+ accessToken: 'access',
1062
+ refreshToken: 'refresh',
1063
+ accessTokenExpiresAt: '2999-01-01T00:00:00.000Z'
1064
+ }),
1065
+ createCloudApiClient() {
1066
+ return {
1067
+ async fetch(pathname) {
1068
+ assert.equal(pathname, '/api/v1/cloud-agents');
1069
+ return okJson({
1070
+ agents: [{ harness: 'claude', status: 'connected' }]
1071
+ });
1072
+ }
1073
+ };
1074
+ }
1075
+ });
1076
+ try {
1077
+ const { handle, io } = await launch({
1078
+ persona: persona({ harness: 'claude', model: 'claude-sonnet-4-6' }),
1079
+ defaultPlanCredential: false,
1080
+ env: {
1081
+ WORKFORCE_DEPLOY_CLOUD_URL: 'https://cloud.example.test',
1082
+ WORKFORCE_DEPLOY_HARNESS_SOURCE: 'oauth',
1083
+ WORKFORCE_DEPLOY_NO_PROMPT: '1'
1084
+ },
1085
+ fetch(url, init) {
1086
+ if (init?.method === 'GET' && url.endsWith('/deployments'))
1087
+ return okJson({ agents: [] });
1088
+ if (url.endsWith('/deployments')) {
1089
+ const body = JSON.parse(String(init?.body));
1090
+ assert.deepEqual(body.credentialSelections, {});
1091
+ return okJson({ agentId: 'agent-oauth-noid', deploymentId: 'dep-1', status: 'active' }, 201);
1092
+ }
1093
+ throw new Error(`unexpected URL ${url}`);
1094
+ }
1095
+ });
1096
+ assert.equal(handle.id, 'agent-oauth-noid');
1097
+ assert.ok(io.messages.some((entry) => entry.message.includes('no connected anthropic credential row')), 'expected the unstamped-fallback info line');
1098
+ }
1099
+ finally {
1100
+ restoreDeps();
1101
+ }
1102
+ });
1103
+ test('cloud oauth deploy stamps the ACTIVE anthropic row over a newer inactive one', async () => {
1104
+ // The web wizard selects on is_active (cloud keeps one active row per
1105
+ // provider), not recency — cloud lists rows most-recently-updated first,
1106
+ // so a newer-but-inactive row precedes the active one in the response.
1107
+ // The stamp must prefer the flagged row and only fall back to list order
1108
+ // when no row carries the flag.
1109
+ const restoreDeps = configureCloudCredentialDepsForTest({
1110
+ readStoredAuth: async () => ({
1111
+ apiUrl: 'https://cloud.example.test',
1112
+ accessToken: 'access',
1113
+ refreshToken: 'refresh',
1114
+ accessTokenExpiresAt: '2999-01-01T00:00:00.000Z'
1115
+ }),
1116
+ createCloudApiClient() {
1117
+ return {
1118
+ async fetch(pathname) {
1119
+ assert.equal(pathname, '/api/v1/cloud-agents');
1120
+ return okJson({
1121
+ agents: [
1122
+ { id: 'pc-newer-inactive', harness: 'claude', status: 'connected', isActive: false },
1123
+ { id: 'pc-older-active', harness: 'claude', status: 'connected', is_active: true }
1124
+ ]
1125
+ });
1126
+ }
1127
+ };
1128
+ }
1129
+ });
1130
+ try {
1131
+ await launch({
1132
+ persona: persona({ harness: 'claude', model: 'claude-sonnet-4-6' }),
1133
+ defaultPlanCredential: false,
1134
+ env: {
1135
+ WORKFORCE_DEPLOY_CLOUD_URL: 'https://cloud.example.test',
1136
+ WORKFORCE_DEPLOY_HARNESS_SOURCE: 'oauth',
1137
+ WORKFORCE_DEPLOY_NO_PROMPT: '1'
1138
+ },
1139
+ fetch(url, init) {
1140
+ if (init?.method === 'GET' && url.endsWith('/deployments'))
1141
+ return okJson({ agents: [] });
1142
+ if (url.endsWith('/deployments')) {
1143
+ const body = JSON.parse(String(init?.body));
1144
+ assert.deepEqual(body.credentialSelections, { anthropic: 'pc-older-active' });
1145
+ return okJson({ agentId: 'agent-oauth-active', deploymentId: 'dep-1', status: 'active' }, 201);
1146
+ }
1147
+ throw new Error(`unexpected URL ${url}`);
1148
+ }
1149
+ });
1150
+ }
1151
+ finally {
1152
+ restoreDeps();
1153
+ }
1154
+ });
1155
+ test('cloud oauth deploy cross-stamps a connected anthropic credential for an openai-family persona', async () => {
1156
+ // The codex/ChatGPT OAuth credential cannot back ctx.llm, but the runtime
1157
+ // already falls back to whichever provider env IS present and swaps in
1158
+ // that family's default model — so the deploy stamps the connected
1159
+ // anthropic credential instead of leaving the deployment selection-less.
1160
+ const restoreDeps = configureCloudCredentialDepsForTest({
1161
+ readStoredAuth: async () => ({
1162
+ apiUrl: 'https://cloud.example.test',
1163
+ accessToken: 'access',
1164
+ refreshToken: 'refresh',
1165
+ accessTokenExpiresAt: '2999-01-01T00:00:00.000Z'
1166
+ }),
1167
+ createCloudApiClient() {
1168
+ return {
1169
+ async fetch(pathname) {
1170
+ assert.equal(pathname, '/api/v1/cloud-agents');
1171
+ return okJson({
1172
+ agents: [
1173
+ { id: 'pc-openai-oauth', harness: 'openai', status: 'connected' },
1174
+ { id: 'pc-anthropic-1', harness: 'claude', status: 'connected', isActive: true }
1175
+ ]
1176
+ });
1177
+ }
1178
+ };
1179
+ }
1180
+ });
1181
+ try {
1182
+ const { io } = await launch({
1183
+ defaultPlanCredential: false,
1184
+ env: {
1185
+ WORKFORCE_DEPLOY_CLOUD_URL: 'https://cloud.example.test',
1186
+ WORKFORCE_DEPLOY_HARNESS_SOURCE: 'oauth',
1187
+ WORKFORCE_DEPLOY_NO_PROMPT: '1'
1188
+ },
1189
+ fetch(url, init) {
1190
+ if (init?.method === 'GET' && url.endsWith('/deployments'))
1191
+ return okJson({ agents: [] });
1192
+ if (url.endsWith('/deployments')) {
1193
+ const body = JSON.parse(String(init?.body));
1194
+ assert.deepEqual(body.credentialSelections, { anthropic: 'pc-anthropic-1' });
1195
+ assert.deepEqual(body.credential_selections, { anthropic: 'pc-anthropic-1' });
1196
+ return okJson({ agentId: 'agent-cross-stamp', deploymentId: 'dep-1', status: 'active' }, 201);
1197
+ }
1198
+ throw new Error(`unexpected URL ${url}`);
1199
+ }
1200
+ });
1201
+ assert.ok(io.messages.some((entry) => entry.message.includes('stamping your connected anthropic credential instead')), 'expected the cross-stamp info line');
1202
+ }
1203
+ finally {
1204
+ restoreDeps();
1205
+ }
1206
+ });
940
1207
  //# sourceMappingURL=cloud.test.js.map