@flowdesk/opencode-plugin 0.1.1 → 0.1.2

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 (41) hide show
  1. package/dist/command-handlers.d.ts +5 -1
  2. package/dist/command-handlers.d.ts.map +1 -1
  3. package/dist/command-handlers.js +74 -1
  4. package/dist/command-handlers.js.map +1 -1
  5. package/dist/lane-heartbeat-writer.d.ts +43 -0
  6. package/dist/lane-heartbeat-writer.d.ts.map +1 -0
  7. package/dist/lane-heartbeat-writer.js +133 -0
  8. package/dist/lane-heartbeat-writer.js.map +1 -0
  9. package/dist/local-adapter.d.ts +8 -1
  10. package/dist/local-adapter.d.ts.map +1 -1
  11. package/dist/local-adapter.js +62 -5
  12. package/dist/local-adapter.js.map +1 -1
  13. package/dist/managed-dispatch-adapter.d.ts +506 -1
  14. package/dist/managed-dispatch-adapter.d.ts.map +1 -1
  15. package/dist/managed-dispatch-adapter.js +2624 -38
  16. package/dist/managed-dispatch-adapter.js.map +1 -1
  17. package/dist/provider-usage-live-tool.d.ts +59 -0
  18. package/dist/provider-usage-live-tool.d.ts.map +1 -0
  19. package/dist/provider-usage-live-tool.js +259 -0
  20. package/dist/provider-usage-live-tool.js.map +1 -0
  21. package/dist/quick-fallback-run.d.ts +54 -0
  22. package/dist/quick-fallback-run.d.ts.map +1 -0
  23. package/dist/quick-fallback-run.js +230 -0
  24. package/dist/quick-fallback-run.js.map +1 -0
  25. package/dist/quick-reviewer-run.d.ts +61 -0
  26. package/dist/quick-reviewer-run.d.ts.map +1 -0
  27. package/dist/quick-reviewer-run.js +397 -0
  28. package/dist/quick-reviewer-run.js.map +1 -0
  29. package/dist/runtime-reviewer-execution-bridge.d.ts +43 -0
  30. package/dist/runtime-reviewer-execution-bridge.d.ts.map +1 -0
  31. package/dist/runtime-reviewer-execution-bridge.js +313 -0
  32. package/dist/runtime-reviewer-execution-bridge.js.map +1 -0
  33. package/dist/server.d.ts +104 -6
  34. package/dist/server.d.ts.map +1 -1
  35. package/dist/server.js +1990 -104
  36. package/dist/server.js.map +1 -1
  37. package/dist/status-live-tool.d.ts +55 -0
  38. package/dist/status-live-tool.d.ts.map +1 -0
  39. package/dist/status-live-tool.js +215 -0
  40. package/dist/status-live-tool.js.map +1 -0
  41. package/package.json +2 -2
@@ -0,0 +1 @@
1
+ {"version":3,"file":"quick-fallback-run.d.ts","sourceRoot":"","sources":["../src/quick-fallback-run.ts"],"names":[],"mappings":"AAWA,MAAM,WAAW,iCAAiC;IACjD,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,yBAAyB,CAAC,EAAE,OAAO,CAAC;IACpC,yBAAyB,CAAC,EAAE,OAAO,CAAC;CACpC;AAED,MAAM,WAAW,gCAAgC;IAChD,mBAAmB,CAAC,EAAE,MAAM,CAAC;IAC7B,iBAAiB,CAAC,EAAE,MAAM,CAAC;IAC3B,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,WAAW,CAAC,EAAE,MAAM,CAAC;CACrB;AAED,MAAM,WAAW,gCAAgC;IAChD,MAAM,EACH,8BAA8B,GAC9B,+BAA+B,GAC/B,mCAAmC,CAAC;IACvC,UAAU,EAAE,MAAM,CAAC;IACnB,qBAAqB,CAAC,EAAE,MAAM,CAAC;IAC/B,mBAAmB,CAAC,EAAE,MAAM,CAAC;IAC7B,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,YAAY,CAAC,EAAE,OAAO,CAAC;IACvB,+BAA+B,CAAC,EAAE,MAAM,CAAC;IACzC,wBAAwB,CAAC,EAAE,SAAS,MAAM,EAAE,CAAC;IAC7C,kBAAkB,CAAC,EAAE;QACpB,MAAM,EAAE,MAAM,CAAC;QACf,cAAc,EAAE,OAAO,CAAC;QACxB,gBAAgB,EAAE,OAAO,CAAC;QAC1B,UAAU,CAAC,EAAE,MAAM,CAAC;QACpB,mBAAmB,CAAC,EAAE,MAAM,CAAC;KAC7B,CAAC;IACF,mBAAmB,CAAC,EAAE,MAAM,CAAC;IAC7B,eAAe,EAAE,SAAS,CAAC,kBAAkB,GAAG,kBAAkB,CAAC,EAAE,CAAC;IACtE,SAAS,EAAE;QACV,oBAAoB,EAAE,KAAK,CAAC;QAC5B,YAAY,EAAE,KAAK,CAAC;QACpB,gBAAgB,EAAE,KAAK,CAAC;QACxB,gBAAgB,EAAE,KAAK,CAAC;QACxB,iBAAiB,EAAE,KAAK,CAAC;QACzB,2BAA2B,EAAE,KAAK,CAAC;QACnC,4BAA4B,EAAE,KAAK,CAAC;QACpC,aAAa,EAAE,KAAK,CAAC;QACrB,kBAAkB,EAAE,OAAO,CAAC;KAC5B,CAAC;CACF;AAoJD,wBAAsB,iCAAiC,CAAC,KAAK,EAAE;IAC9D,MAAM,EAAE,gCAAgC,CAAC;IACzC,OAAO,CAAC,EAAE,iCAAiC,CAAC;IAC5C,GAAG,CAAC,EAAE,MAAM,IAAI,CAAC;CACjB,GAAG,OAAO,CAAC,gCAAgC,CAAC,CAgJ5C"}
@@ -0,0 +1,230 @@
1
+ import { consumeFlowDeskProductionApprovalSourceV1, } from "@flowdesk/core";
2
+ import { materializeFlowDeskManagedFallbackRegatePlanEvidenceV1, orchestrateFlowDeskManagedFallbackRegateV1, } from "./managed-dispatch-adapter.js";
3
+ const FALLBACK_REASON_LABELS = [
4
+ "provider_unhealthy",
5
+ "quota_exhausted",
6
+ "runtime_incompatible",
7
+ "policy_ineligible",
8
+ "manual_reselection_requested",
9
+ ];
10
+ function isReasonLabel(value) {
11
+ return FALLBACK_REASON_LABELS.includes(value);
12
+ }
13
+ function defaultAuthority(prepared) {
14
+ return {
15
+ realOpenCodeDispatch: false,
16
+ providerCall: false,
17
+ runtimeExecution: false,
18
+ actualLaneLaunch: false,
19
+ fallbackAuthority: false,
20
+ automaticFallbackAuthorized: false,
21
+ hardCancelOrNoReplyAuthority: false,
22
+ toolAuthority: false,
23
+ regatePlanPrepared: prepared,
24
+ };
25
+ }
26
+ function safeNextActions() {
27
+ return ["/flowdesk-status", "/flowdesk-doctor"];
28
+ }
29
+ function safeStamp(observedAt) {
30
+ return observedAt.replace(/[^0-9A-Za-z]/g, "");
31
+ }
32
+ function blockedResponse(observedAt, request, reason) {
33
+ return {
34
+ status: "blocked_before_quick_fallback_run",
35
+ observedAt,
36
+ ...(request.fromProvider
37
+ ? { requestedFromProvider: request.fromProvider }
38
+ : {}),
39
+ ...(request.toProvider ? { requestedToProvider: request.toProvider } : {}),
40
+ ...(request.reason ? { requestedReason: request.reason } : {}),
41
+ ...(request.workflowId ? { workflowId: request.workflowId } : {}),
42
+ redactedBlockReason: reason,
43
+ safeNextActions: safeNextActions(),
44
+ authority: defaultAuthority(false),
45
+ };
46
+ }
47
+ function buildSyntheticDecision(input) {
48
+ return {
49
+ schema_version: "flowdesk.fallback_decision.v1",
50
+ decision_id: `fallback-decision-quick-${input.stamp}`,
51
+ workflow_id: input.workflowId,
52
+ parent_attempt_id: input.parentAttemptId,
53
+ new_attempt_id: input.newAttemptId,
54
+ from_provider_qualified_model_id: input.fromProvider,
55
+ to_provider_qualified_model_id: input.toProvider,
56
+ reason_label: input.reasonLabel,
57
+ depth: 1,
58
+ max_depth: 2,
59
+ fresh_evidence_refs: [
60
+ `usage-fresh-${input.stamp}`,
61
+ `health-fresh-${input.stamp}`,
62
+ `runtime-fresh-${input.stamp}`,
63
+ ],
64
+ fresh_guard_decision_ref: `guard-fresh-${input.stamp}`,
65
+ fresh_approval_ref: `approval-fresh-${input.stamp}`,
66
+ fresh_pre_dispatch_audit_ref: `audit-fresh-${input.stamp}`,
67
+ policy_eligibility_ref: `policy-fresh-${input.stamp}`,
68
+ runtime_compatibility_ref: `runtime-compatibility-fresh-${input.stamp}`,
69
+ state: "requires_full_regate",
70
+ automatic_fallback_authorized: false,
71
+ dispatch_authority_enabled: false,
72
+ providerCall: false,
73
+ actualLaneLaunch: false,
74
+ runtimeExecution: false,
75
+ };
76
+ }
77
+ function buildSyntheticConsumedApproval(input) {
78
+ const observedAtMs = Date.parse(input.observedAt);
79
+ const issuedAt = new Date(observedAtMs - 60_000).toISOString();
80
+ const consumedAt = input.observedAt;
81
+ const expiresAt = new Date(observedAtMs + 10 * 60_000).toISOString();
82
+ const actorRef = `actor-quick-fallback-${input.sourceLabel ?? "developer"}`;
83
+ const profileRef = `profile-quick-fallback-${input.sourceLabel ?? "developer"}`;
84
+ const result = consumeFlowDeskProductionApprovalSourceV1({
85
+ approval: {
86
+ schema_version: "flowdesk.production_approval_source.v1",
87
+ approval_id: `approval-fresh-${input.stamp}`,
88
+ workflow_id: input.workflowId,
89
+ attempt_id: input.newAttemptId,
90
+ action_type: "fallback_reselection",
91
+ issuer_boundary: "external_user_confirmation",
92
+ approval_method: "typed_phrase",
93
+ actor_ref: actorRef,
94
+ profile_ref: profileRef,
95
+ provider_qualified_model_id: input.toProvider,
96
+ provider_binding_hash: `hash-provider-quick-fallback-${input.stamp}`,
97
+ evidence_bundle_hash: `hash-evidence-quick-fallback-${input.stamp}`,
98
+ guard_decision_ref: `guard-fresh-${input.stamp}`,
99
+ issuance_audit_ref: `audit-issuance-quick-fallback-${input.stamp}`,
100
+ nonce_ref: `nonce-quick-fallback-${input.stamp}`,
101
+ issued_at: issuedAt,
102
+ expires_at: expiresAt,
103
+ revoked: false,
104
+ consume_strategy: "atomic_compare_and_swap_required",
105
+ dispatch_authority_enabled: false,
106
+ },
107
+ workflowId: input.workflowId,
108
+ attemptId: input.newAttemptId,
109
+ actionType: "fallback_reselection",
110
+ actorRef,
111
+ profileRef,
112
+ providerQualifiedModelId: input.toProvider,
113
+ providerBindingHash: `hash-provider-quick-fallback-${input.stamp}`,
114
+ evidenceBundleHash: `hash-evidence-quick-fallback-${input.stamp}`,
115
+ guardDecisionRef: `guard-fresh-${input.stamp}`,
116
+ consumptionAuditRef: `audit-consumption-quick-fallback-${input.stamp}`,
117
+ consumedAt,
118
+ });
119
+ if (!result.ok || result.consumed_approval === undefined)
120
+ return undefined;
121
+ return result.consumed_approval;
122
+ }
123
+ export async function executeFlowDeskQuickFallbackRunV1(input) {
124
+ const observedAt = (input.now ? input.now() : new Date()).toISOString();
125
+ const stamp = safeStamp(observedAt);
126
+ const request = input.request ?? {};
127
+ if (request.developerModeAcknowledged !== true) {
128
+ return blockedResponse(observedAt, request, "developerModeAcknowledged must be true to acknowledge that quick fallback synthesizes a developer-mode fallback_reselection approval");
129
+ }
130
+ const fromProvider = request.fromProvider ?? input.config.defaultFromProvider;
131
+ const toProvider = request.toProvider ?? input.config.defaultToProvider;
132
+ if (typeof fromProvider !== "string" ||
133
+ fromProvider.trim().length === 0 ||
134
+ typeof toProvider !== "string" ||
135
+ toProvider.trim().length === 0) {
136
+ return blockedResponse(observedAt, request, "fromProvider and toProvider concrete provider-qualified model ids are required");
137
+ }
138
+ if (fromProvider === toProvider) {
139
+ return blockedResponse(observedAt, request, "fromProvider and toProvider must differ for a fallback regate plan");
140
+ }
141
+ const reasonLabelCandidate = (request.reason ?? "manual_reselection_requested").trim();
142
+ if (!isReasonLabel(reasonLabelCandidate)) {
143
+ return blockedResponse(observedAt, request, `reason must be one of ${FALLBACK_REASON_LABELS.join(", ")}`);
144
+ }
145
+ const workflowId = request.workflowId && request.workflowId.trim().length > 0
146
+ ? request.workflowId.trim()
147
+ : `workflow-quick-fallback-${stamp}`;
148
+ const parentAttemptId = `attempt-quick-fallback-parent-${stamp}`;
149
+ const newAttemptId = `attempt-quick-fallback-${stamp}`;
150
+ const decision = buildSyntheticDecision({
151
+ fromProvider,
152
+ toProvider,
153
+ reasonLabel: reasonLabelCandidate,
154
+ workflowId,
155
+ parentAttemptId,
156
+ newAttemptId,
157
+ stamp,
158
+ });
159
+ const consumedApproval = buildSyntheticConsumedApproval({
160
+ toProvider,
161
+ workflowId,
162
+ newAttemptId,
163
+ stamp,
164
+ observedAt,
165
+ sourceLabel: input.config.sourceLabel,
166
+ });
167
+ if (consumedApproval === undefined) {
168
+ return blockedResponse(observedAt, request, "failed to synthesize a developer-mode fallback_reselection approval");
169
+ }
170
+ const orchestrator = orchestrateFlowDeskManagedFallbackRegateV1({
171
+ decision,
172
+ consumedApproval,
173
+ });
174
+ const regatePlanState = orchestrator.regatePlan?.state;
175
+ const regatePlanOk = orchestrator.regatePlan?.ok;
176
+ const requiredEvidenceCount = Array.isArray(orchestrator.regatePlan?.required_fresh_evidence_refs)
177
+ ? orchestrator.regatePlan.required_fresh_evidence_refs.length
178
+ : undefined;
179
+ const planErrors = orchestrator.regatePlan?.errors ?? [];
180
+ const prepared = orchestrator.status === "regate_plan_ready";
181
+ let regatePlanEvidence;
182
+ const shouldPersist = prepared &&
183
+ request.persistRegatePlanEvidence === true &&
184
+ typeof input.config.rootDir === "string" &&
185
+ input.config.rootDir.trim().length > 0 &&
186
+ orchestrator.regatePlan !== undefined;
187
+ if (shouldPersist && orchestrator.regatePlan !== undefined) {
188
+ const materialized = await materializeFlowDeskManagedFallbackRegatePlanEvidenceV1({
189
+ rootDir: input.config.rootDir,
190
+ regatePlan: orchestrator.regatePlan,
191
+ evidenceId: `fallback-regate-plan-quick-${stamp}`,
192
+ });
193
+ regatePlanEvidence = {
194
+ status: materialized.status,
195
+ writeAttempted: materialized.writeAttempted,
196
+ evidenceReloaded: materialized.evidenceReloaded,
197
+ ...(materialized.evidenceId
198
+ ? { evidenceId: materialized.evidenceId }
199
+ : {}),
200
+ ...(materialized.redactedBlockReason
201
+ ? { redactedBlockReason: materialized.redactedBlockReason }
202
+ : {}),
203
+ };
204
+ }
205
+ return {
206
+ status: prepared
207
+ ? "quick_fallback_run_completed"
208
+ : "quick_fallback_run_incomplete",
209
+ observedAt,
210
+ requestedFromProvider: fromProvider,
211
+ requestedToProvider: toProvider,
212
+ requestedReason: reasonLabelCandidate,
213
+ workflowId,
214
+ parentAttemptId,
215
+ newAttemptId,
216
+ ...(regatePlanState ? { regatePlanState } : {}),
217
+ ...(regatePlanOk !== undefined ? { regatePlanOk } : {}),
218
+ ...(requiredEvidenceCount !== undefined
219
+ ? { regatePlanRequiredEvidenceCount: requiredEvidenceCount }
220
+ : {}),
221
+ ...(planErrors.length > 0 ? { regatePlanRedactedErrors: planErrors } : {}),
222
+ ...(regatePlanEvidence ? { regatePlanEvidence } : {}),
223
+ ...(!prepared && orchestrator.redactedBlockReason
224
+ ? { redactedBlockReason: orchestrator.redactedBlockReason }
225
+ : {}),
226
+ safeNextActions: safeNextActions(),
227
+ authority: defaultAuthority(prepared),
228
+ };
229
+ }
230
+ //# sourceMappingURL=quick-fallback-run.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"quick-fallback-run.js","sourceRoot":"","sources":["../src/quick-fallback-run.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,61 @@
1
+ import { type FlowDeskTopTierReviewPerspective } from "@flowdesk/core";
2
+ import type { FlowDeskManagedDispatchBetaOpenCodeClientV1 } from "./managed-dispatch-adapter.js";
3
+ export interface FlowDeskQuickReviewerRunRequestV1 {
4
+ client: FlowDeskManagedDispatchBetaOpenCodeClientV1;
5
+ prompt: string;
6
+ providerQualifiedModelId: string;
7
+ runtimeAgent: string;
8
+ allowProviderCall: boolean;
9
+ developerModeAcknowledged: boolean;
10
+ perspectives?: readonly FlowDeskTopTierReviewPerspective[];
11
+ parentSessionId?: string;
12
+ rootDir?: string;
13
+ workflowId?: string;
14
+ attemptId?: string;
15
+ observedAt?: string;
16
+ sourceLabel?: string;
17
+ title?: string;
18
+ }
19
+ export interface FlowDeskQuickReviewerRunLaneSummaryV1 {
20
+ perspective: string;
21
+ launchPlanEvidenceId: string;
22
+ verdictId?: string;
23
+ launchStatus?: string;
24
+ runningLifecycle?: string;
25
+ completeLifecycle?: string;
26
+ observationStatus?: string;
27
+ verdictMaterializationStatus?: string;
28
+ }
29
+ export interface FlowDeskQuickReviewerRunResultV1 {
30
+ adapterProfile: "quick_reviewer_run_helper";
31
+ status: "quick_reviewer_run_completed" | "quick_reviewer_run_incomplete" | "blocked_before_quick_reviewer_run";
32
+ workflowId?: string;
33
+ attemptId?: string;
34
+ parentSessionId?: string;
35
+ rootDir?: string;
36
+ providerQualifiedModelId: string;
37
+ runtimeAgent: string;
38
+ laneCount: number;
39
+ lanes: FlowDeskQuickReviewerRunLaneSummaryV1[];
40
+ acceptanceStatus?: string;
41
+ durableLinkageStatus?: string;
42
+ linkedVerdictCount?: number;
43
+ linkedLifecycleCount?: number;
44
+ acceptedPerspectives?: readonly string[];
45
+ redactedBlockReason?: string;
46
+ safeNextActions: ["/flowdesk-status"] | ["/flowdesk-status", "/flowdesk-export-debug"];
47
+ authority: {
48
+ realOpenCodeDispatch: false;
49
+ fallbackAuthority: false;
50
+ hardCancelOrNoReplyAuthority: false;
51
+ toolAuthority: false;
52
+ providerCall: boolean;
53
+ runtimeExecution: boolean;
54
+ actualLaneLaunch: boolean;
55
+ dispatchAuthorityEnabled: false;
56
+ developerModeAcknowledged: boolean;
57
+ quickReviewerRunExecuted: boolean;
58
+ };
59
+ }
60
+ export declare function executeFlowDeskQuickReviewerRunV1(input: FlowDeskQuickReviewerRunRequestV1): Promise<FlowDeskQuickReviewerRunResultV1>;
61
+ //# sourceMappingURL=quick-reviewer-run.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"quick-reviewer-run.d.ts","sourceRoot":"","sources":["../src/quick-reviewer-run.ts"],"names":[],"mappings":"AAGA,OAAO,EAIN,KAAK,gCAAgC,EAKrC,MAAM,gBAAgB,CAAC;AACxB,OAAO,KAAK,EAAE,2CAA2C,EAAE,MAAM,+BAA+B,CAAC;AAGjG,MAAM,WAAW,iCAAiC;IACjD,MAAM,EAAE,2CAA2C,CAAC;IACpD,MAAM,EAAE,MAAM,CAAC;IACf,wBAAwB,EAAE,MAAM,CAAC;IACjC,YAAY,EAAE,MAAM,CAAC;IACrB,iBAAiB,EAAE,OAAO,CAAC;IAC3B,yBAAyB,EAAE,OAAO,CAAC;IACnC,YAAY,CAAC,EAAE,SAAS,gCAAgC,EAAE,CAAC;IAC3D,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,KAAK,CAAC,EAAE,MAAM,CAAC;CACf;AAED,MAAM,WAAW,qCAAqC;IACrD,WAAW,EAAE,MAAM,CAAC;IACpB,oBAAoB,EAAE,MAAM,CAAC;IAC7B,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B,iBAAiB,CAAC,EAAE,MAAM,CAAC;IAC3B,iBAAiB,CAAC,EAAE,MAAM,CAAC;IAC3B,4BAA4B,CAAC,EAAE,MAAM,CAAC;CACtC;AAED,MAAM,WAAW,gCAAgC;IAChD,cAAc,EAAE,2BAA2B,CAAC;IAC5C,MAAM,EACH,8BAA8B,GAC9B,+BAA+B,GAC/B,mCAAmC,CAAC;IACvC,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,wBAAwB,EAAE,MAAM,CAAC;IACjC,YAAY,EAAE,MAAM,CAAC;IACrB,SAAS,EAAE,MAAM,CAAC;IAClB,KAAK,EAAE,qCAAqC,EAAE,CAAC;IAC/C,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B,oBAAoB,CAAC,EAAE,MAAM,CAAC;IAC9B,kBAAkB,CAAC,EAAE,MAAM,CAAC;IAC5B,oBAAoB,CAAC,EAAE,MAAM,CAAC;IAC9B,oBAAoB,CAAC,EAAE,SAAS,MAAM,EAAE,CAAC;IACzC,mBAAmB,CAAC,EAAE,MAAM,CAAC;IAC7B,eAAe,EAAE,CAAC,kBAAkB,CAAC,GAAG,CAAC,kBAAkB,EAAE,wBAAwB,CAAC,CAAC;IACvF,SAAS,EAAE;QACV,oBAAoB,EAAE,KAAK,CAAC;QAC5B,iBAAiB,EAAE,KAAK,CAAC;QACzB,4BAA4B,EAAE,KAAK,CAAC;QACpC,aAAa,EAAE,KAAK,CAAC;QACrB,YAAY,EAAE,OAAO,CAAC;QACtB,gBAAgB,EAAE,OAAO,CAAC;QAC1B,gBAAgB,EAAE,OAAO,CAAC;QAC1B,wBAAwB,EAAE,KAAK,CAAC;QAChC,yBAAyB,EAAE,OAAO,CAAC;QACnC,wBAAwB,EAAE,OAAO,CAAC;KAClC,CAAC;CACF;AA0LD,wBAAsB,iCAAiC,CACtD,KAAK,EAAE,iCAAiC,GACtC,OAAO,CAAC,gCAAgC,CAAC,CA0Q3C"}