@calltelemetry/ct-lab-mcp 0.8.130 → 0.8.132
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.
- package/README.md +5 -3
- package/dist/src/generated-version.d.ts +1 -1
- package/dist/src/generated-version.js +1 -1
- package/dist/src/tools/appliance-claim-tools.d.ts +31 -0
- package/dist/src/tools/appliance-claim-tools.d.ts.map +1 -1
- package/dist/src/tools/appliance-claim-tools.js +95 -6
- package/dist/src/tools/appliance-claim-tools.js.map +1 -1
- package/dist/src/tools/claimed-import-qcow.d.ts +2 -2
- package/dist/src/tools/cube-canonical.d.ts +2 -2
- package/dist/src/tools/held-claims.d.ts +68 -0
- package/dist/src/tools/held-claims.d.ts.map +1 -0
- package/dist/src/tools/held-claims.js +189 -0
- package/dist/src/tools/held-claims.js.map +1 -0
- package/dist/src/tools/import-qcow.d.ts +6 -6
- package/dist/src/tools/index.d.ts.map +1 -1
- package/dist/src/tools/index.js +12 -1
- package/dist/src/tools/index.js.map +1 -1
- package/dist/src/tools/placement.d.ts +185 -0
- package/dist/src/tools/placement.d.ts.map +1 -0
- package/dist/src/tools/placement.js +279 -0
- package/dist/src/tools/placement.js.map +1 -0
- package/dist/src/tools/quick-provision.d.ts +2 -2
- package/dist/src/tools/stig-tools.d.ts +1 -1
- package/dist/src/tools/stig-tools.js +1 -1
- package/dist/src/tools/stig-tools.js.map +1 -1
- package/package.json +1 -1
package/README.md
CHANGED
|
@@ -37,7 +37,9 @@ AI Clients (Claude Desktop / Cursor / Web / AI Agents)
|
|
|
37
37
|
├── lab_mission (Canonical manifest-bound multi-phase mission)
|
|
38
38
|
├── lab_dev (Canonical leased remote-development lifecycle)
|
|
39
39
|
├── list_appliance_claims (Kubernetes ApplianceClaim CRD fleet discovery)
|
|
40
|
-
├── create_appliance_claim (Declarative CRD provisioning with channel rules; profile=demo|bare)
|
|
40
|
+
├── create_appliance_claim (Declarative CRD provisioning with channel rules; profile=demo|bare; node defaults to auto: least-loaded eligible Proxmox host, recorded in calltelemetry.com/placement)
|
|
41
|
+
├── list_held_claims (Read-only: claims the operator holds instead of destroying, from its audit report)
|
|
42
|
+
├── release_appliance_claim_without_destroy (Ask the operator to drop a claim and leave the guest; honoured only for a template, absent guest or guest-less claim)
|
|
41
43
|
├── renew_appliance_claim (Extend a claim TTL; never shortens)
|
|
42
44
|
├── claimed_import_qcow (Image to claimed guest: claim-first bare claim, then canonical vm provision --source published-qcow)
|
|
43
45
|
├── delete_appliance_claim (Operator teardown trigger via CRD finalizer)
|
|
@@ -95,7 +97,7 @@ than use the legacy Node VMID/name slot state when the bridge is unavailable.
|
|
|
95
97
|
before publishers, and refuses active claims, partial discovery, identity
|
|
96
98
|
drift, or clustered Proxmox. Force host
|
|
97
99
|
power-off is not implemented.
|
|
98
|
-
- **Claimed-Guest Appliance Update**: `appliance_update` is a thin canonical bridge for `lab-inventory vm update`: dry-run by default, apply requires `confirmAssetId` equal to `assetId`, an active lease, a `calltelemetry-lab-claim/v1` claim file authorizing `appliance-update`, and an exact release version. The older in-guest `appliance_exec` shared-login flow is retired; use `appliance_update` for updates, `uat_access` for governed web access, and `lab-inventory vm ssh` (run from a lab-LAN host
|
|
100
|
+
- **Claimed-Guest Appliance Update**: `appliance_update` is a thin canonical bridge for `lab-inventory vm update`: dry-run by default, apply requires `confirmAssetId` equal to `assetId`, an active lease, a `calltelemetry-lab-claim/v1` claim file authorizing `appliance-update`, and an exact release version. The older in-guest `appliance_exec` shared-login flow is retired; use `appliance_update` for updates, `uat_access` for governed web access, and `lab-inventory vm ssh` (run from an operator machine or a lab-LAN host; the `ct-uat-proxmox` runner is retired as a load driver) for operator shell access.
|
|
99
101
|
- **Leased Remote Development**: `lab_dev` is a canonical-only façade for the `ct-local-dev-v1` profile. It supports strict `doctor`, `plan`, `prepare`, `start`, `status`, `sync`, `stop`, and `cleanup` actions bound to one asset, lease, Linear issue, operation ID, and reviewed receipt chain. It accepts no guest commands, remote paths, or mock fallback.
|
|
100
102
|
- **Claim custody annotation** (REL-1746; slots and reservation Leases are retired): Proxmox claim creation requires the actual canonical node, explicit VMID and VM name in `ct-lab`, with a finite TTL. The original-owner record lives on the claim itself as annotation `calltelemetry.com/claim-custody` (`claim-custody/v1`: guest tuple, phase, operation nonce, creation-request hash, context, provider binding), written in the same single create call as the claim. No Lease is ever created, renewed or required; per-guest serialization is in-process keyed by node and VMID, and the existing claim-occupancy scan plus the claim UID/resourceVersion protect against other actors. Whole effective immutable CRD fields and creation labels are rehashed on retry and deletion; only the declared lifecycle fields and stale label can change. A matching name alone grants no custody. Claims created before the retirement still carry a `ct-physical-slot-reservation.*` Lease: the MCP verifies them read-only (reporting `custody.source: "legacy-lease"`, `migration: "operator-pending"`) and the appliance operator converts them into the annotation; the MCP never writes a Lease.
|
|
101
103
|
- **One configured Kubernetes claim backend**: ApplianceClaim CRUD and read-only legacy reservation Lease reads share one backend resolver. Local stdio deployments must set an absolute `LAB_CLAIM_KUBECONFIG`, the exact `LAB_CLAIM_K8S_CONTEXT`, and an HTTPS-origin `LAB_CLAIM_K8S_SERVER`; the selected kubeconfig is validated against that server before a request. In-cluster deployments must set the context/server and provide the service-account token and CA for that same cluster. Cross-cluster deployments use the explicit kubeconfig path. The process never falls back to `KUBECONFIG`, `~/.kube/config`, or an embedded server, and a missing or mismatched binding is refused before any claim effect. The container image is published to Docker Hub by the Docker Build and Publish workflow, which only builds and pushes; it does not edit any cluster manifest. ct-lab-mcp is not Flux-deployed, and the retired DOKS cluster is no longer a target.
|
|
@@ -704,7 +706,7 @@ Apply the same request after reviewing the plan:
|
|
|
704
706
|
The fixed argv is `vm update --asset-id <assetId> --version <version> --claim-file <claimFile> [--resume-installed] [--apply --confirm-asset-id <assetId>]`. No shell command, host, credential or bundle pinning option (`--bundle-sha256`) is accepted.
|
|
705
707
|
|
|
706
708
|
### `appliance_exec` (retired)
|
|
707
|
-
`appliance_exec` and the other in-guest tools (shared-login SSH on port 2222) are retired and answer `CANONICAL_PHYSICAL_SLOT_AUTHORITY_REQUIRED`. Supported paths: `appliance_update` (release updates), `uat_access` (governed runtime web access), and `lab-inventory vm ssh` for operator shell access, run from a lab-LAN host
|
|
709
|
+
`appliance_exec` and the other in-guest tools (shared-login SSH on port 2222) are retired and answer `CANONICAL_PHYSICAL_SLOT_AUTHORITY_REQUIRED`. Supported paths: `appliance_update` (release updates), `uat_access` (governed runtime web access), and `lab-inventory vm ssh` for operator shell access, run from an operator machine or a lab-LAN host (the `ct-uat-proxmox` runner is retired as a load driver).
|
|
708
710
|
|
|
709
711
|
---
|
|
710
712
|
|
|
@@ -2,5 +2,5 @@
|
|
|
2
2
|
* Auto-synced package version fallback for non-filesystem runtimes (Cloudflare Workers).
|
|
3
3
|
* Updated automatically during release publication in .github/workflows/publish.yml.
|
|
4
4
|
*/
|
|
5
|
-
export declare const PACKAGE_VERSION = "0.8.
|
|
5
|
+
export declare const PACKAGE_VERSION = "0.8.132";
|
|
6
6
|
//# sourceMappingURL=generated-version.d.ts.map
|
|
@@ -2,5 +2,5 @@
|
|
|
2
2
|
* Auto-synced package version fallback for non-filesystem runtimes (Cloudflare Workers).
|
|
3
3
|
* Updated automatically during release publication in .github/workflows/publish.yml.
|
|
4
4
|
*/
|
|
5
|
-
export const PACKAGE_VERSION = "0.8.
|
|
5
|
+
export const PACKAGE_VERSION = "0.8.132";
|
|
6
6
|
//# sourceMappingURL=generated-version.js.map
|
|
@@ -10,6 +10,7 @@
|
|
|
10
10
|
import { z } from "zod";
|
|
11
11
|
import { CallToolResult } from "../types/mcp.js";
|
|
12
12
|
import { ToolContext } from "./list-hosts.js";
|
|
13
|
+
import { type PlacementFleet } from "./placement.js";
|
|
13
14
|
import { type ProxmoxClaimNode } from "./proxmox-host-policy.js";
|
|
14
15
|
export declare const RECOGNIZED_CHANNELS: readonly ["stable", "beta", "rc", "candidate", "dev", "edge"];
|
|
15
16
|
export type ReleaseChannel = (typeof RECOGNIZED_CHANNELS)[number];
|
|
@@ -283,6 +284,7 @@ export declare const RenewApplianceClaimInputShape: {
|
|
|
283
284
|
name: z.ZodString;
|
|
284
285
|
namespace: z.ZodDefault<z.ZodOptional<z.ZodString>>;
|
|
285
286
|
expectedUid: z.ZodOptional<z.ZodString>;
|
|
287
|
+
owner: z.ZodOptional<z.ZodString>;
|
|
286
288
|
extendHours: z.ZodDefault<z.ZodOptional<z.ZodNumber>>;
|
|
287
289
|
dryRun: z.ZodDefault<z.ZodOptional<z.ZodBoolean>>;
|
|
288
290
|
};
|
|
@@ -290,6 +292,7 @@ export declare const RenewApplianceClaimInputSchema: z.ZodObject<{
|
|
|
290
292
|
name: z.ZodString;
|
|
291
293
|
namespace: z.ZodDefault<z.ZodOptional<z.ZodString>>;
|
|
292
294
|
expectedUid: z.ZodOptional<z.ZodString>;
|
|
295
|
+
owner: z.ZodOptional<z.ZodString>;
|
|
293
296
|
extendHours: z.ZodDefault<z.ZodOptional<z.ZodNumber>>;
|
|
294
297
|
dryRun: z.ZodDefault<z.ZodOptional<z.ZodBoolean>>;
|
|
295
298
|
}, "strip", z.ZodTypeAny, {
|
|
@@ -298,12 +301,14 @@ export declare const RenewApplianceClaimInputSchema: z.ZodObject<{
|
|
|
298
301
|
extendHours: number;
|
|
299
302
|
namespace: string;
|
|
300
303
|
expectedUid?: string | undefined;
|
|
304
|
+
owner?: string | undefined;
|
|
301
305
|
}, {
|
|
302
306
|
name: string;
|
|
303
307
|
dryRun?: boolean | undefined;
|
|
304
308
|
extendHours?: number | undefined;
|
|
305
309
|
namespace?: string | undefined;
|
|
306
310
|
expectedUid?: string | undefined;
|
|
311
|
+
owner?: string | undefined;
|
|
307
312
|
}>;
|
|
308
313
|
export type RenewApplianceClaimInput = z.infer<typeof RenewApplianceClaimInputSchema>;
|
|
309
314
|
export type ClaimNode = ProxmoxClaimNode | "esxi";
|
|
@@ -346,6 +351,27 @@ export declare function buildApplianceClaimManifest(input: CreateApplianceClaimI
|
|
|
346
351
|
} | {
|
|
347
352
|
error: string;
|
|
348
353
|
};
|
|
354
|
+
/**
|
|
355
|
+
* Resolves node 'auto' from live evidence. Returns the claim node plus the placement annotation, or an error
|
|
356
|
+
* result listing every node's reason (never an overcommit, never a silent default).
|
|
357
|
+
*/
|
|
358
|
+
export declare function resolveClaimPlacement(input: {
|
|
359
|
+
node: string;
|
|
360
|
+
vmid?: number;
|
|
361
|
+
name?: string;
|
|
362
|
+
namespace?: string;
|
|
363
|
+
}, context?: ToolContext, deps?: {
|
|
364
|
+
fleet?: PlacementFleet;
|
|
365
|
+
listClaims?: () => Promise<any[]>;
|
|
366
|
+
now?: Date;
|
|
367
|
+
}): Promise<{
|
|
368
|
+
node: string;
|
|
369
|
+
annotation: string;
|
|
370
|
+
mode: "auto" | "pinned";
|
|
371
|
+
reason: string;
|
|
372
|
+
} | {
|
|
373
|
+
error: CallToolResult;
|
|
374
|
+
}>;
|
|
349
375
|
export declare function handleCreateApplianceClaim(args: unknown, context?: ToolContext): Promise<CallToolResult>;
|
|
350
376
|
/**
|
|
351
377
|
* Pauses or unpauses an ApplianceClaim (UAT-1740, ADR 0755). spec.paused=true
|
|
@@ -382,6 +408,11 @@ export declare function planClaimRenewal(claim: ApplianceClaimResource & {
|
|
|
382
408
|
* next pass. Never shortens, never touches fixtures, never un-expires a claim
|
|
383
409
|
* the operator already deleted.
|
|
384
410
|
*/
|
|
411
|
+
/** The live in-use marker (owner and until), or null when absent, expired, malformed or capped beyond 6 hours. */
|
|
412
|
+
export declare function liveInUseMarker(claim: any, now?: number): {
|
|
413
|
+
owner: string;
|
|
414
|
+
until: string;
|
|
415
|
+
} | null;
|
|
385
416
|
export declare function handleRenewApplianceClaim(args: unknown, context?: ToolContext): Promise<CallToolResult>;
|
|
386
417
|
export declare function handleDeleteApplianceClaim(args: unknown, context?: ToolContext): Promise<CallToolResult>;
|
|
387
418
|
/**
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"appliance-claim-tools.d.ts","sourceRoot":"","sources":["../../../src/tools/appliance-claim-tools.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"appliance-claim-tools.d.ts","sourceRoot":"","sources":["../../../src/tools/appliance-claim-tools.ts"],"names":[],"mappings":"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"}
|
|
@@ -15,6 +15,7 @@ import { logger } from "../utils/logger.js";
|
|
|
15
15
|
import { validateStigDescriptor } from "../stig/model.js";
|
|
16
16
|
import { createClaimWithCustody, deleteClaimWithCustody, NoClaimCustodyError } from "./claim-custody.js";
|
|
17
17
|
import { LAB_CLAIM_BACKEND_REMEDIATION, LabClaimBackendConfigError, diagnoseLabKubernetesBackend, resolveLabKubernetesBackend, runLabKubectl, } from "./kubernetes-backend.js";
|
|
18
|
+
import { AUTO_NODE, PLACEMENT_ANNOTATION, fleetFromManager, isAutoNode, pinnedPlacementAnnotation, placeOnFleet, placementAnnotation, } from "./placement.js";
|
|
18
19
|
import { proxmoxClaimNode, PROXMOX_HOST_CLAIM_NODES, } from "./proxmox-host-policy.js";
|
|
19
20
|
export const RECOGNIZED_CHANNELS = ["stable", "beta", "rc", "candidate", "dev", "edge"];
|
|
20
21
|
export function resolveAndValidateChannel(version, trainOrChannel) {
|
|
@@ -68,9 +69,9 @@ export const CreateApplianceClaimInputShape = {
|
|
|
68
69
|
vmid: z.number().int().min(100).max(8999).optional().describe("Proxmox VMID for the appliance. The strict operator destroys any guest no claim names (node + VMID, or vmName): a claim without vmid/vmName protects nothing."),
|
|
69
70
|
vmName: z.string().regex(/^[A-Za-z0-9](?:[A-Za-z0-9._-]{0,61}[A-Za-z0-9])?$/, "Must be a DNS-safe VM name").optional().describe("Exact hypervisor VM name. When set, the operator verifies the live guest name before any teardown and the name also shields the guest from the scavenger."),
|
|
70
71
|
profile: z.enum(["demo", "bare"]).optional().default("demo").describe("demo (default): operator bootstraps the guest (license, demo seed, CUBE/CallManager activation). bare: claim and track the guest only - no seed, no license, no bootstrap, Ready immediately; the TTL still applies. Use bare for benchmarks and imported images that must stay clean. Requires operator >= 0.2.18."),
|
|
71
|
-
node: z.string().optional().default(
|
|
72
|
-
.refine((node) => normalizeClaimNode(node) !== null, "must be a tracked Proxmox claim node or ESXi alias")
|
|
73
|
-
.describe("
|
|
72
|
+
node: z.string().optional().default(AUTO_NODE)
|
|
73
|
+
.refine((node) => isAutoNode(node) || normalizeClaimNode(node) !== null, "must be 'auto', a tracked Proxmox claim node or ESXi alias")
|
|
74
|
+
.describe("Where the guest lands. Default 'auto': the least loaded Proxmox host (minis, proxmox or ibm64) that can take the guest is chosen from live evidence at call time (RAM, CPU, running guests, thin storage; no overcommit), and the scoring is recorded on the claim annotation calltelemetry.com/placement. Pin 'minis' (proxmox-minis-lab), 'proxmox' (proxmox-lab) or 'ibm64' (proxmox-ibm64) to override; a pinned node is recorded as mode 'pinned'. Pin it when vmid names a guest that already exists on a specific node."),
|
|
74
75
|
version: z.string().optional().default("0.8.6.27").describe("Target appliance version (default: '0.8.6.27')."),
|
|
75
76
|
train: z.enum(["stable", "beta", "rc", "candidate", "dev", "edge"]).optional().describe("Release channel / train. Auto-resolved if omitted."),
|
|
76
77
|
cpuType: z.enum(["x86-64-v2-AES", "host"]).optional().describe("Guest CPU type. Omit for the fleet golden standard x86-64-v2-AES (ct-meta runbook: Proxmox fleet storage & golden guest contract). 'host' is an explicit passthrough deviation and is REQUIRED for legacy-compose-v1 appliances: 0.7.x images cannot boot under QEMU CPU models (proven: bare qemu64/x86-64-v2-AES guests panic with 'CPU does not support x86-64-v2' on this image's userspace)."),
|
|
@@ -114,6 +115,7 @@ export const RenewApplianceClaimInputShape = {
|
|
|
114
115
|
name: z.string().min(1).describe("Name of the ApplianceClaim resource to renew."),
|
|
115
116
|
namespace: z.string().optional().default("ct-lab").describe("Kubernetes namespace (default: 'ct-lab')."),
|
|
116
117
|
expectedUid: z.string().uuid().optional().describe("Optional current ApplianceClaim UID. When supplied, renewal uses a UID/resourceVersion JSON Patch precondition and refuses a recreated claim."),
|
|
118
|
+
owner: z.string().min(3).max(120).optional().describe("Owner id presented to the claim in-use marker (calltelemetry.com/in-use-by). Required to renew a claim another owner has marked in use."),
|
|
117
119
|
extendHours: z.number().int().min(1).max(8760).optional().default(24).describe("Hours of life to grant from now (default: 24). The claim then expires extendHours from now, not extendHours after its old expiry."),
|
|
118
120
|
dryRun: z.boolean().optional().default(false).describe("Compute and return the new TTL without patching.")
|
|
119
121
|
};
|
|
@@ -183,6 +185,10 @@ export function independentClaimVerb(operation, args) {
|
|
|
183
185
|
return "patch";
|
|
184
186
|
if (operation === "renew_appliance_claim")
|
|
185
187
|
return input?.dryRun === true ? "get" : "patch";
|
|
188
|
+
if (operation === "list_held_claims")
|
|
189
|
+
return "list";
|
|
190
|
+
if (operation === "release_appliance_claim_without_destroy")
|
|
191
|
+
return "patch";
|
|
186
192
|
return null;
|
|
187
193
|
}
|
|
188
194
|
export async function verifyIndependentClaimAccess(verb, namespace = "ct-lab", name) {
|
|
@@ -448,19 +454,76 @@ export function buildApplianceClaimManifest(input) {
|
|
|
448
454
|
};
|
|
449
455
|
return { manifest, claimName, train };
|
|
450
456
|
}
|
|
457
|
+
/**
|
|
458
|
+
* Resolves node 'auto' from live evidence. Returns the claim node plus the placement annotation, or an error
|
|
459
|
+
* result listing every node's reason (never an overcommit, never a silent default).
|
|
460
|
+
*/
|
|
461
|
+
export async function resolveClaimPlacement(input, context, deps = {}) {
|
|
462
|
+
if (!isAutoNode(input.node)) {
|
|
463
|
+
const node = normalizeClaimNode(input.node);
|
|
464
|
+
return { node, annotation: pinnedPlacementAnnotation(node, deps.now), mode: "pinned", reason: `node '${node}' pinned by the caller` };
|
|
465
|
+
}
|
|
466
|
+
const fleet = deps.fleet ?? (context?.proxmoxManager ? fleetFromManager(context.proxmoxManager) : undefined);
|
|
467
|
+
if (!fleet) {
|
|
468
|
+
return {
|
|
469
|
+
error: createToolErrorResult(ProxmoxErrorCode.VALIDATION_ERROR, "node 'auto' needs live Proxmox evidence and this server has no Proxmox clients; nothing was created. Pin node to minis, proxmox or ibm64 to override.", { operation: "create_appliance_claim", code: "NoPlacementEvidence" }),
|
|
470
|
+
};
|
|
471
|
+
}
|
|
472
|
+
let claims = [];
|
|
473
|
+
try {
|
|
474
|
+
claims = await (deps.listClaims ?? (() => listClaimItems(input.namespace ?? "ct-lab")))();
|
|
475
|
+
}
|
|
476
|
+
catch { /* pending claims are best effort; the operator re-checks admission */ }
|
|
477
|
+
// A resumed claim keeps the node it was created on: re-placing would change the guest identity.
|
|
478
|
+
const existing = input.name ? claims.find((c) => c?.metadata?.name === input.name) : undefined;
|
|
479
|
+
const existingNode = existing ? normalizeClaimNode(existing.spec?.node) : null;
|
|
480
|
+
if (existing && existingNode) {
|
|
481
|
+
return { node: existingNode, annotation: existing.metadata?.annotations?.[PLACEMENT_ANNOTATION] ?? pinnedPlacementAnnotation(existingNode, deps.now), mode: "auto", reason: `existing claim '${input.name}' stays on ${existingNode}` };
|
|
482
|
+
}
|
|
483
|
+
const decision = await placeOnFleet(fleet, { claims, vmid: input.vmid });
|
|
484
|
+
if (!decision.admit || !decision.node) {
|
|
485
|
+
return {
|
|
486
|
+
error: createToolErrorResult(ProxmoxErrorCode.VALIDATION_ERROR, `${decision.code}: ${decision.reason}. Nothing was created (no overcommit); free capacity, or pin node to a host you know can take the guest.`, { operation: "create_appliance_claim", code: decision.code, candidates: decision.candidates }),
|
|
487
|
+
};
|
|
488
|
+
}
|
|
489
|
+
return { node: decision.node, annotation: placementAnnotation(decision, { mode: "auto", request: decision.request, now: deps.now }), mode: "auto", reason: decision.reason };
|
|
490
|
+
}
|
|
491
|
+
async function listClaimItems(namespace) {
|
|
492
|
+
const apiRes = await queryKubernetesApi(`/apis/calltelemetry.com/v1alpha1/namespaces/${namespace}/applianceclaims`);
|
|
493
|
+
if (apiRes?.items)
|
|
494
|
+
return apiRes.items;
|
|
495
|
+
const { stdout } = await runLabKubectl(["get", "applianceclaims", "-n", namespace, "-o", "json"]);
|
|
496
|
+
return JSON.parse(stdout).items || [];
|
|
497
|
+
}
|
|
451
498
|
export async function handleCreateApplianceClaim(args, context) {
|
|
452
499
|
const parsed = CreateApplianceClaimInputSchema.safeParse(args);
|
|
453
500
|
if (!parsed.success) {
|
|
454
501
|
const issues = parsed.error.issues.map((i) => `${i.path.join(".")}: ${i.message}`).join("; ");
|
|
455
502
|
return createToolErrorResult(ProxmoxErrorCode.VALIDATION_ERROR, issues);
|
|
456
503
|
}
|
|
457
|
-
const
|
|
504
|
+
const auto = isAutoNode(parsed.data.node);
|
|
505
|
+
// Validate everything else first; 'auto' is probed with a stand-in node and resolved after the forward check.
|
|
506
|
+
let built = buildApplianceClaimManifest(auto ? { ...parsed.data, node: "minis" } : parsed.data);
|
|
458
507
|
if ("error" in built) {
|
|
459
508
|
return createToolErrorResult(ProxmoxErrorCode.VALIDATION_ERROR, built.error);
|
|
460
509
|
}
|
|
461
|
-
const { manifest, claimName, train } = built;
|
|
462
510
|
const { namespace, targetIp, version, dryRun } = parsed.data;
|
|
511
|
+
const resolveAndBuild = async () => {
|
|
512
|
+
const placed = await resolveClaimPlacement(parsed.data, context, {});
|
|
513
|
+
if ("error" in placed)
|
|
514
|
+
return placed;
|
|
515
|
+
const rebuilt = buildApplianceClaimManifest({ ...parsed.data, node: placed.node });
|
|
516
|
+
if ("error" in rebuilt)
|
|
517
|
+
return { error: createToolErrorResult(ProxmoxErrorCode.VALIDATION_ERROR, rebuilt.error) };
|
|
518
|
+
rebuilt.manifest.metadata.annotations = { ...(rebuilt.manifest.metadata.annotations ?? {}), [PLACEMENT_ANNOTATION]: placed.annotation };
|
|
519
|
+
built = rebuilt;
|
|
520
|
+
return { placement: { mode: placed.mode, reason: placed.reason } };
|
|
521
|
+
};
|
|
463
522
|
if (dryRun) {
|
|
523
|
+
const resolved = await resolveAndBuild();
|
|
524
|
+
if ("error" in resolved)
|
|
525
|
+
return resolved.error;
|
|
526
|
+
const { manifest, claimName } = built;
|
|
464
527
|
return {
|
|
465
528
|
content: [
|
|
466
529
|
{
|
|
@@ -470,6 +533,7 @@ export async function handleCreateApplianceClaim(args, context) {
|
|
|
470
533
|
dryRun: true,
|
|
471
534
|
status: "validated",
|
|
472
535
|
claimName,
|
|
536
|
+
placement: resolved.placement,
|
|
473
537
|
manifest
|
|
474
538
|
}, null, 2)
|
|
475
539
|
}
|
|
@@ -479,6 +543,10 @@ export async function handleCreateApplianceClaim(args, context) {
|
|
|
479
543
|
const forwarded = await forwardClaim("create_appliance_claim", parsed.data, context);
|
|
480
544
|
if (forwarded)
|
|
481
545
|
return forwarded;
|
|
546
|
+
const resolved = await resolveAndBuild();
|
|
547
|
+
if ("error" in resolved)
|
|
548
|
+
return resolved.error;
|
|
549
|
+
const { manifest, claimName, train } = built;
|
|
482
550
|
try {
|
|
483
551
|
// Every Proxmox creator converges here, including claim-first provision and
|
|
484
552
|
// claimed image import. No timeout fallback or name-only claim.
|
|
@@ -492,6 +560,7 @@ export async function handleCreateApplianceClaim(args, context) {
|
|
|
492
560
|
success: true,
|
|
493
561
|
message: `ApplianceClaim '${claimName}' ${guarded.reused ? 'resumed' : 'created'} in namespace '${namespace}'`,
|
|
494
562
|
claimName,
|
|
563
|
+
placement: resolved.placement,
|
|
495
564
|
targetIp: targetIp ?? null,
|
|
496
565
|
train,
|
|
497
566
|
version,
|
|
@@ -642,6 +711,20 @@ export function planClaimRenewal(claim, extendHours, now = Date.now()) {
|
|
|
642
711
|
* next pass. Never shortens, never touches fixtures, never un-expires a claim
|
|
643
712
|
* the operator already deleted.
|
|
644
713
|
*/
|
|
714
|
+
/** The live in-use marker (owner and until), or null when absent, expired, malformed or capped beyond 6 hours. */
|
|
715
|
+
export function liveInUseMarker(claim, now = Date.now()) {
|
|
716
|
+
const ann = claim?.metadata?.annotations ?? {};
|
|
717
|
+
const owner = ann["calltelemetry.com/in-use-by"];
|
|
718
|
+
const untilRaw = ann["calltelemetry.com/in-use-until"];
|
|
719
|
+
if (typeof owner !== "string" || owner.length < 3 || owner.length > 120 || typeof untilRaw !== "string")
|
|
720
|
+
return null;
|
|
721
|
+
if (!/(Z|[+-]\d\d:\d\d)$/.test(untilRaw))
|
|
722
|
+
return null;
|
|
723
|
+
const until = Date.parse(untilRaw);
|
|
724
|
+
if (!Number.isFinite(until) || until <= now || until > now + 6 * 3600_000 + 60_000)
|
|
725
|
+
return null;
|
|
726
|
+
return { owner, until: untilRaw };
|
|
727
|
+
}
|
|
645
728
|
export async function handleRenewApplianceClaim(args, context) {
|
|
646
729
|
const parsed = RenewApplianceClaimInputSchema.safeParse(args);
|
|
647
730
|
if (!parsed.success) {
|
|
@@ -651,7 +734,7 @@ export async function handleRenewApplianceClaim(args, context) {
|
|
|
651
734
|
const forwarded = await forwardClaim("renew_appliance_claim", parsed.data, context);
|
|
652
735
|
if (forwarded)
|
|
653
736
|
return forwarded;
|
|
654
|
-
const { name, namespace, expectedUid, extendHours, dryRun } = parsed.data;
|
|
737
|
+
const { name, namespace, expectedUid, extendHours, dryRun, owner } = parsed.data;
|
|
655
738
|
const apiPath = `/apis/calltelemetry.com/v1alpha1/namespaces/${namespace}/applianceclaims/${name}`;
|
|
656
739
|
try {
|
|
657
740
|
let claim = await queryKubernetesApi(apiPath);
|
|
@@ -659,6 +742,12 @@ export async function handleRenewApplianceClaim(args, context) {
|
|
|
659
742
|
const { stdout } = await runLabKubectl(["get", "applianceclaim", name, "-n", namespace, "-o", "json"]);
|
|
660
743
|
claim = JSON.parse(stdout);
|
|
661
744
|
}
|
|
745
|
+
// A renew rewrites the claim expiry the owner's credential entry is bound to, so it is refused while another
|
|
746
|
+
// owner has the claim marked in use (UAT-1663). Expired or malformed markers are ignored.
|
|
747
|
+
const inUse = liveInUseMarker(claim);
|
|
748
|
+
if (inUse && inUse.owner !== owner) {
|
|
749
|
+
return createToolErrorResult(ProxmoxErrorCode.VALIDATION_ERROR, `ApplianceClaim ${name} is marked in use by '${inUse.owner}' until ${inUse.until}; renewal refused. The owner renews it, or passes owner.`, { operation: "renew_appliance_claim", claim: name, namespace });
|
|
750
|
+
}
|
|
662
751
|
if (expectedUid && claim?.metadata?.uid !== expectedUid) {
|
|
663
752
|
return createToolErrorResult(ProxmoxErrorCode.VALIDATION_ERROR, "ApplianceClaim UID changed; refusing to renew a different object.", { operation: "renew_appliance_claim", claim: name, namespace });
|
|
664
753
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"appliance-claim-tools.js","sourceRoot":"","sources":["../../../src/tools/appliance-claim-tools.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"appliance-claim-tools.js","sourceRoot":"","sources":["../../../src/tools/appliance-claim-tools.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAEH,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,EAAE,KAAK,EAAE,KAAK,EAAE,MAAM,QAAQ,CAAC;AACtC,OAAO,KAAK,EAAE,MAAM,SAAS,CAAC;AAC9B,OAAO,EAAkB,gBAAgB,EAAE,qBAAqB,EAAE,MAAM,iBAAiB,CAAC;AAE1F,OAAO,EAAE,MAAM,EAAE,MAAM,oBAAoB,CAAC;AAC5C,OAAO,EAAE,sBAAsB,EAAE,MAAM,kBAAkB,CAAC;AAC1D,OAAO,EAAE,sBAAsB,EAAE,sBAAsB,EAAE,mBAAmB,EAAE,MAAM,oBAAoB,CAAC;AACzG,OAAO,EACL,6BAA6B,EAC7B,0BAA0B,EAC1B,4BAA4B,EAC5B,2BAA2B,EAC3B,aAAa,GACd,MAAM,yBAAyB,CAAC;AACjC,OAAO,EACL,SAAS,EACT,oBAAoB,EACpB,gBAAgB,EAChB,UAAU,EACV,yBAAyB,EACzB,YAAY,EACZ,mBAAmB,GAEpB,MAAM,gBAAgB,CAAC;AACxB,OAAO,EACL,gBAAgB,EAChB,wBAAwB,GAEzB,MAAM,0BAA0B,CAAC;AAElC,MAAM,CAAC,MAAM,mBAAmB,GAAG,CAAC,QAAQ,EAAE,MAAM,EAAE,IAAI,EAAE,WAAW,EAAE,KAAK,EAAE,MAAM,CAAU,CAAC;AAGjG,MAAM,UAAU,yBAAyB,CAAC,OAAe,EAAE,cAA8B;IACvF,MAAM,YAAY,GAAG,OAAO,CAAC,QAAQ,CAAC,KAAK,CAAC,IAAI,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAC,IAAI,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAC,IAAI,OAAO,CAAC,QAAQ,CAAC,YAAY,CAAC,CAAC;IACxI,MAAM,SAAS,GAAG,OAAO,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC;IAE9C,IAAI,OAAuB,CAAC;IAC5B,IAAI,CAAC,cAAc,EAAE,CAAC;QACpB,IAAI,YAAY,EAAE,CAAC;YACjB,OAAO,GAAG,IAAI,CAAC;QACjB,CAAC;aAAM,IAAI,SAAS,EAAE,CAAC;YACrB,OAAO,GAAG,MAAM,CAAC;QACnB,CAAC;aAAM,CAAC;YACN,OAAO,GAAG,QAAQ,CAAC;QACrB,CAAC;IACH,CAAC;SAAM,CAAC;QACN,OAAO,GAAG,cAAc,CAAC,WAAW,EAAE,CAAC,IAAI,EAAoB,CAAC;IAClE,CAAC;IAED,IAAI,CAAC,mBAAmB,CAAC,QAAQ,CAAC,OAAO,CAAC,EAAE,CAAC;QAC3C,MAAM,IAAI,KAAK,CAAC,kCAAkC,cAAc,sBAAsB,mBAAmB,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;IAC1H,CAAC;IAED,IAAI,OAAO,KAAK,QAAQ,EAAE,CAAC;QACzB,IAAI,SAAS,EAAE,CAAC;YACd,MAAM,IAAI,KAAK,CACb,uCAAuC,OAAO,+CAA+C;gBAC7F,+EAA+E,CAChF,CAAC;QACJ,CAAC;QACD,IAAI,YAAY,EAAE,CAAC;YACjB,MAAM,IAAI,KAAK,CACb,mDAAmD,OAAO,4CAA4C;gBACtG,kCAAkC,CACnC,CAAC;QACJ,CAAC;IACH,CAAC;IAED,OAAO,OAAO,CAAC;AACjB,CAAC;AA4DD,MAAM,CAAC,MAAM,6BAA6B,GAAG;IAC3C,SAAS,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC,QAAQ,CAAC,2CAA2C,CAAC;IACxG,KAAK,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,SAAS,EAAE,cAAc,EAAE,eAAe,EAAE,OAAO,EAAE,QAAQ,EAAE,QAAQ,CAAC,CAAC,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,kBAAkB,CAAC;IAChI,SAAS,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,SAAS,EAAE,SAAS,CAAC,CAAC,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,+CAA+C,CAAC;CAC/G,CAAC;AAEF,MAAM,CAAC,MAAM,8BAA8B,GAAG,CAAC,CAAC,MAAM,CAAC,6BAA6B,CAAC,CAAC;AAGtF,MAAM,CAAC,MAAM,2BAA2B,GAAG;IACzC,IAAI,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,sDAAsD,CAAC;IACxF,SAAS,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC,QAAQ,CAAC,2CAA2C,CAAC;CACzG,CAAC;AAEF,MAAM,CAAC,MAAM,4BAA4B,GAAG,CAAC,CAAC,MAAM,CAAC,2BAA2B,CAAC,CAAC;AAGlF,MAAM,CAAC,MAAM,8BAA8B,GAAG;IAC5C,IAAI,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,iFAAiF,CAAC;IACvH,SAAS,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC,QAAQ,CAAC,2CAA2C,CAAC;IACxG,QAAQ,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,KAAK,CAAC,uFAAuF,EAAE,4BAA4B,CAAC,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,gLAAgL,CAAC;IACvV,IAAI,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,EAAE,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,+JAA+J,CAAC;IAC9N,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,KAAK,CAAC,mDAAmD,EAAE,4BAA4B,CAAC,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,2JAA2J,CAAC;IAC5R,OAAO,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC,CAAC,QAAQ,EAAE,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,QAAQ,CAAC,qTAAqT,CAAC;IAC5X,IAAI,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,OAAO,CAAC,SAAS,CAAC;SAC3C,MAAM,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,UAAU,CAAC,IAAI,CAAC,IAAI,kBAAkB,CAAC,IAAI,CAAC,KAAK,IAAI,EAAE,4DAA4D,CAAC;SACrI,QAAQ,CAAC,ggBAAggB,CAAC;IAC7gB,OAAO,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,OAAO,CAAC,UAAU,CAAC,CAAC,QAAQ,CAAC,iDAAiD,CAAC;IAC9G,KAAK,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,QAAQ,EAAE,MAAM,EAAE,IAAI,EAAE,WAAW,EAAE,KAAK,EAAE,MAAM,CAAC,CAAC,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,oDAAoD,CAAC;IAC7I,OAAO,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,eAAe,EAAE,MAAM,CAAC,CAAC,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,mYAAmY,CAAC;IACnc,aAAa,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,mBAAmB,CAAC,CAAC,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,sPAAsP,CAAC;IACxT,WAAW,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,KAAK,CAAC,mCAAmC,EAAE,oCAAoC,CAAC,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,sDAAsD,CAAC;IACpL,MAAM,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,oBAAoB,EAAE,eAAe,EAAE,cAAc,EAAE,OAAO,CAAC,CAAC,CAAC,QAAQ,EAAE,CAAC,OAAO,CAAC,oBAAoB,CAAC,CAAC,QAAQ,CAAC,+DAA+D,CAAC;IACnM,QAAQ,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC,QAAQ,EAAE,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC,QAAQ,CAAC,8NAA8N,CAAC;IAC3S,WAAW,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,MAAM,EAAE,WAAW,EAAE,YAAY,EAAE,UAAU,EAAE,SAAS,EAAE,MAAM,CAAC,CAAC,CAAC,QAAQ,EAAE,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,QAAQ,CAAC,2FAA2F,CAAC;IACxN,WAAW,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC,QAAQ,EAAE,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC,QAAQ,CAAC,yCAAyC,CAAC;IACzH,UAAU,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,KAAK,EAAE,CAAC,QAAQ,EAAE,CAAC,OAAO,CAAC,wBAAwB,CAAC,CAAC,QAAQ,CAAC,mBAAmB,CAAC;IACzG,kBAAkB,EAAE,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,oFAAoF,CAAC;IAClJ,IAAI,EAAE,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,OAAO,EAAE,CAAC,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,wIAAwI,CAAC;IACzL,MAAM,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,QAAQ,EAAE,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,QAAQ,CAAC,oEAAoE,CAAC;CAC7H,CAAC;AAEF,MAAM,CAAC,MAAM,+BAA+B,GAAG,CAAC;KAC7C,MAAM,CAAC,8BAA8B,CAAC;KACtC,MAAM,EAAE;KACR,WAAW,CAAC,CAAC,GAAG,EAAE,GAAG,EAAE,EAAE;IACxB,IAAI,GAAG,CAAC,aAAa,KAAK,mBAAmB,IAAI,GAAG,CAAC,OAAO,KAAK,MAAM,EAAE,CAAC;QACxE,GAAG,CAAC,QAAQ,CAAC;YACX,IAAI,EAAE,CAAC,CAAC,YAAY,CAAC,MAAM;YAC3B,IAAI,EAAE,CAAC,SAAS,CAAC;YACjB,OAAO,EAAE,iJAAiJ;SAC3J,CAAC,CAAC;IACL,CAAC;AACH,CAAC,CAAC,CAAC;AAGL,MAAM,CAAC,MAAM,8BAA8B,GAAG;IAC5C,WAAW,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,IAAI,EAAE,CAAC,QAAQ,CAAC,8HAA8H,CAAC;IACvK,IAAI,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,gDAAgD,CAAC;IAClF,SAAS,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC,QAAQ,CAAC,2CAA2C,CAAC;CACzG,CAAC;AAEF,MAAM,CAAC,MAAM,+BAA+B,GAAG,CAAC,CAAC,MAAM,CAAC,8BAA8B,CAAC,CAAC,MAAM,EAAE,CAAC;AAGjG,MAAM,CAAC,MAAM,6BAA6B,GAAG;IAC3C,IAAI,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,0DAA0D,CAAC;IAC5F,SAAS,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC,QAAQ,CAAC,2CAA2C,CAAC;IACxG,MAAM,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,QAAQ,CAAC,uGAAuG,CAAC;IACnJ,YAAY,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,uFAAuF,CAAC;CACtI,CAAC;AAEF,MAAM,CAAC,MAAM,8BAA8B,GAAG,CAAC,CAAC,MAAM,CAAC,6BAA6B,CAAC,CAAC;AAGtF,MAAM,CAAC,MAAM,6BAA6B,GAAG;IAC3C,IAAI,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,+CAA+C,CAAC;IACjF,SAAS,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC,QAAQ,CAAC,2CAA2C,CAAC;IACxG,WAAW,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,IAAI,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,+IAA+I,CAAC;IACnM,KAAK,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,yIAAyI,CAAC;IAChM,WAAW,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC,QAAQ,EAAE,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC,QAAQ,CAAC,mIAAmI,CAAC;IACnN,MAAM,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,QAAQ,EAAE,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,QAAQ,CAAC,kDAAkD,CAAC;CAC3G,CAAC;AAEF,MAAM,CAAC,MAAM,8BAA8B,GAAG,CAAC,CAAC,MAAM,CAAC,6BAA6B,CAAC,CAAC;AAKtF;;;GAGG;AACH,MAAM,UAAU,kBAAkB,CAAC,IAAwB;IACzD,IAAI,OAAO,IAAI,KAAK,QAAQ;QAAE,OAAO,IAAI,CAAC;IAC1C,MAAM,GAAG,GAAG,IAAI,CAAC,IAAI,EAAE,CAAC,WAAW,EAAE,CAAC;IACtC,IAAI,CAAC,GAAG;QAAE,OAAO,IAAI,CAAC;IACtB,IAAI,GAAG,KAAK,MAAM;QAAE,OAAO,MAAM,CAAC;IAElC,OAAO,gBAAgB,CAAC,GAAG,CAAC,CAAC;AAC/B,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,kBAAkB,CACtC,IAAY,EACZ,UAAyF,EAAE;IAE3F,MAAM,OAAO,GAAG,2BAA2B,EAAE,CAAC;IAC9C,IAAI,OAAO,CAAC,IAAI,KAAK,YAAY,EAAE,CAAC;QAClC,MAAM,KAAK,GAAG,EAAE,CAAC,YAAY,CAAC,OAAO,CAAC,SAAS,EAAE,OAAO,CAAC,CAAC,IAAI,EAAE,CAAC;QACjE,IAAI,CAAC,KAAK;YAAE,MAAM,IAAI,KAAK,CAAC,4CAA4C,CAAC,CAAC;QAC1E,MAAM,EAAE,GAAG,EAAE,CAAC,YAAY,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC;QAE3C,MAAM,KAAK,GAAG,IAAI,KAAK,CAAC;YACtB,OAAO,EAAE;gBACP,EAAE;gBACF,kBAAkB,EAAE,IAAI;aACzB;SACF,CAAC,CAAC;QAEH,IAAI,CAAC;YACH,MAAM,GAAG,GAAG,MAAM,KAAK,CAAC,GAAG,OAAO,CAAC,MAAM,GAAG,IAAI,EAAE,EAAE;gBAClD,MAAM,EAAE,OAAO,CAAC,MAAM,IAAI,KAAK;gBAC/B,OAAO,EAAE;oBACP,aAAa,EAAE,UAAU,KAAK,EAAE;oBAChC,yEAAyE;oBACzE,yCAAyC;oBACzC,cAAc,EACZ,OAAO,CAAC,WAAW,IAAI,CAAC,CAAC,OAAO,CAAC,MAAM,IAAI,KAAK,CAAC,KAAK,OAAO,CAAC,CAAC,CAAC,8BAA8B,CAAC,CAAC,CAAC,kBAAkB,CAAC;iBACvH;gBACD,IAAI,EAAE,OAAO,CAAC,IAAI,KAAK,SAAS,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,IAAI,CAAC;gBAC3E,UAAU,EAAE,KAAK;gBACjB,MAAM,EAAE,WAAW,CAAC,OAAO,CAAC,OAAO,CAAC,SAAS,IAAI,MAAM,CAAC;aACzD,CAAC,CAAC;YAEH,IAAI,CAAC,GAAG,CAAC,EAAE;gBAAE,MAAM,IAAI,KAAK,CAAC,kCAAkC,GAAG,CAAC,MAAM,GAAG,CAAC,CAAC;YAC9E,OAAO,GAAG,CAAC,IAAI,EAAE,CAAC;QACpB,CAAC;gBAAS,CAAC;YACT,MAAM,KAAK,CAAC,KAAK,EAAE,CAAC;QACtB,CAAC;IACH,CAAC;IAED,gFAAgF;IAChF,OAAO,IAAI,CAAC;AACd,CAAC;AAKD,MAAM,UAAU,oBAAoB,CAAC,SAAiB,EAAE,IAAa;IACnE,MAAM,KAAK,GAAG,IAAsC,CAAC;IACrD,IAAI,SAAS,KAAK,uBAAuB;QAAE,OAAO,MAAM,CAAC;IACzD,IAAI,SAAS,KAAK,qBAAqB;QAAE,OAAO,KAAK,CAAC;IACtD,IAAI,SAAS,KAAK,wBAAwB;QAAE,OAAO,KAAK,EAAE,MAAM,KAAK,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,QAAQ,CAAC;IAC5F,IAAI,SAAS,KAAK,wBAAwB;QAAE,OAAO,QAAQ,CAAC;IAC5D,IAAI,SAAS,KAAK,uBAAuB;QAAE,OAAO,OAAO,CAAC;IAC1D,IAAI,SAAS,KAAK,uBAAuB;QAAE,OAAO,KAAK,EAAE,MAAM,KAAK,IAAI,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,OAAO,CAAC;IAC3F,IAAI,SAAS,KAAK,kBAAkB;QAAE,OAAO,MAAM,CAAC;IACpD,IAAI,SAAS,KAAK,yCAAyC;QAAE,OAAO,OAAO,CAAC;IAC5E,OAAO,IAAI,CAAC;AACd,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,4BAA4B,CAChD,IAA0B,EAAE,SAAS,GAAG,QAAQ,EAAE,IAAa;IAE/D,IAAI,CAAC;QACH,MAAM,UAAU,GAAG;YACjB,SAAS,EAAE,IAAI,EAAE,KAAK,EAAE,mBAAmB,EAAE,QAAQ,EAAE,iBAAiB;YACxE,GAAG,CAAC,IAAI,IAAI,IAAI,KAAK,MAAM,IAAI,IAAI,KAAK,QAAQ,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;SAClE,CAAC;QACF,MAAM,MAAM,GAAG,MAAM,kBAAkB,CAAC,wDAAwD,EAAE;YAChG,MAAM,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM;YACjC,IAAI,EAAE,EAAE,UAAU,EAAE,yBAAyB,EAAE,IAAI,EAAE,yBAAyB;gBAC5E,IAAI,EAAE,EAAE,kBAAkB,EAAE,UAAU,EAAE,EAAE;SAC7C,CAAC,CAAC;QACH,IAAI,MAAM,KAAK,IAAI,EAAE,CAAC;YACpB,MAAM,QAAQ,GAAG,MAAM,EAAE,IAAI,EAAE,kBAAkB,CAAC;YAClD,OAAO,MAAM,EAAE,UAAU,KAAK,yBAAyB,IAAI,MAAM,EAAE,IAAI,KAAK,yBAAyB;mBAChG,QAAQ,EAAE,SAAS,KAAK,SAAS,IAAI,QAAQ,EAAE,IAAI,KAAK,IAAI;mBAC5D,QAAQ,EAAE,KAAK,KAAK,mBAAmB,IAAI,QAAQ,EAAE,QAAQ,KAAK,iBAAiB;mBACnF,QAAQ,EAAE,IAAI,KAAK,UAAU,CAAC,IAAI;mBAClC,MAAM,EAAE,MAAM,EAAE,OAAO,KAAK,IAAI,IAAI,MAAM,EAAE,MAAM,EAAE,MAAM,KAAK,IAAI;mBACnE,CAAC,MAAM,EAAE,MAAM,EAAE,eAAe,CAAC;QACxC,CAAC;QACD,MAAM,QAAQ,GAAG,UAAU,CAAC,IAAI,CAAC,CAAC,CAAC,qCAAqC,UAAU,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,mCAAmC,CAAC;QAChI,MAAM,EAAE,MAAM,EAAE,GAAG,MAAM,aAAa,CAAC,CAAC,MAAM,EAAE,OAAO,EAAE,IAAI,EAAE,QAAQ,EAAE,eAAe,SAAS,EAAE,CAAC,EAAE,EAAE,SAAS,EAAE,MAAM,EAAE,CAAC,CAAC;QAC7H,OAAO,MAAM,CAAC,IAAI,EAAE,KAAK,KAAK,CAAC;IACjC,CAAC;IAAC,MAAM,CAAC;QAAC,OAAO,KAAK,CAAC;IAAC,CAAC;AAC3B,CAAC;AAED;;;;GAIG;AACH,MAAM,UAAU,6BAA6B,CAAC,GAAY,EAAE,SAAkB;IAC5E,IAAI,CAAC,CAAC,GAAG,YAAY,0BAA0B,CAAC;QAAE,OAAO,IAAI,CAAC;IAC9D,OAAO,qBAAqB,CAC1B,GAAG,CAAC,IAAI,EACR,wDAAwD,GAAG,CAAC,OAAO,EAAE,EACrE;QACE,GAAG,CAAC,SAAS,CAAC,CAAC,CAAC,EAAE,SAAS,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QACnC,OAAO,EAAE,GAAG,CAAC,SAAS,CAAC,OAAO;QAC9B,OAAO,EAAE,GAAG,CAAC,SAAS,CAAC,OAAO;QAC9B,WAAW,EAAE,6BAA6B;KAC3C,CACF,CAAC;AACJ,CAAC;AAED,sFAAsF;AACtF,MAAM,UAAU,0BAA0B,CAAC,SAAiB;IAC1D,MAAM,EAAE,OAAO,EAAE,OAAO,EAAE,GAAG,4BAA4B,EAAE,CAAC;IAC5D,IAAI,OAAO,CAAC,MAAM,KAAK,CAAC,IAAI,OAAO,CAAC,MAAM,KAAK,CAAC;QAAE,OAAO,IAAI,CAAC;IAC9D,OAAO,qBAAqB,CAC1B,gCAAgC,EAChC,wDAAwD;QACtD,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,YAAY,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE;QACtD,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,YAAY,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE;KACvD,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,MAAM,6BAA6B,EAAE,EACjE,EAAE,SAAS,EAAE,OAAO,EAAE,OAAO,EAAE,WAAW,EAAE,6BAA6B,EAAE,CAC5E,CAAC;AACJ,CAAC;AAKD,MAAM,cAAc,GAAG;IACrB,qBAAqB,EAAE,YAAY;IACnC,mBAAmB,EAAE,WAAW;IAChC,sBAAsB,EAAE,cAAc;IACtC,qBAAqB,EAAE,aAAa;IACpC,sBAAsB,EAAE,cAAc;IACtC,qBAAqB,EAAE,aAAa;CAC5B,CAAC;AAEX;;;;;GAKG;AACH,KAAK,UAAU,YAAY,CACzB,SAAkC,EAClC,KAAc,EACd,OAAqB;IAErB,MAAM,QAAQ,GAAG,OAAO,EAAE,WAAW,CAAC;IACtC,IAAI,CAAC,QAAQ,IAAI,QAAQ,CAAC,QAAQ,KAAK,QAAQ,IAAI,CAAC,0BAA0B,CAAC,SAAS,CAAC;QAAE,OAAO,IAAI,CAAC;IACvG,MAAM,IAAI,GAAG,QAAQ,CAAC,cAAc,CAAC,SAAS,CAAC,CAAC,CAAC;IACjD,IAAI,CAAC,IAAI;QAAE,OAAO,IAAI,CAAC;IACvB,MAAM,OAAO,GAAG,CAAC,CAAC,uBAAuB,EAAE,qBAAqB,CAAC,CAAC,QAAQ,CAAC,SAAS,CAAC,CAAC;IACtF,IAAI,CAAC;QACH,OAAO,MAAM,IAAI,CAAC,IAAI,CAAC,QAAQ,EAAE,KAAK,EAAE,OAAO,EAAE,MAAM,CAAC,CAAC;IAC3D,CAAC;IAAC,OAAO,GAAY,EAAE,CAAC;QACtB,OAAO,qBAAqB,CAC1B,gCAAgC,EAChC,kBAAkB,OAAO,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,MAAM,iCAAiC,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,EAAE;cAC/H,CAAC,OAAO,CAAC,CAAC,CAAC,gFAAgF,CAAC,CAAC,CAAC,EAAE,CAAC,EACrG,EAAE,SAAS,EAAE,QAAQ,EAAE,QAAQ,CAAC,QAAQ,EAAE,CAC3C,CAAC;IACJ,CAAC;AACH,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,yBAAyB,CAC7C,IAAa,EACb,OAAqB;IAErB,MAAM,MAAM,GAAG,8BAA8B,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC;IAC9D,IAAI,CAAC,MAAM,CAAC,OAAO,EAAE,CAAC;QACpB,MAAM,MAAM,GAAG,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC,OAAO,EAAE,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QAC9F,OAAO,qBAAqB,CAAC,gBAAgB,CAAC,gBAAgB,EAAE,MAAM,CAAC,CAAC;IAC1E,CAAC;IACD,MAAM,SAAS,GAAG,MAAM,YAAY,CAAC,uBAAuB,EAAE,MAAM,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC;IACpF,IAAI,SAAS;QAAE,OAAO,SAAS,CAAC;IAEhC,MAAM,EAAE,SAAS,EAAE,KAAK,EAAE,SAAS,EAAE,GAAG,MAAM,CAAC,IAAI,CAAC;IAEpD,IAAI,CAAC;QACH,IAAI,KAAK,GAA6B,EAAE,CAAC;QAEzC,MAAM,OAAO,GAAG,+CAA+C,SAAS,kBAAkB,CAAC;QAC3F,MAAM,MAAM,GAAQ,MAAM,kBAAkB,CAAC,OAAO,CAAC,CAAC;QAEtD,IAAI,MAAM,IAAI,MAAM,CAAC,KAAK,EAAE,CAAC;YAC3B,KAAK,GAAG,MAAM,CAAC,KAAK,CAAC;QACvB,CAAC;aAAM,CAAC;YACN,MAAM,EAAE,MAAM,EAAE,GAAG,MAAM,aAAa,CAAC,CAAC,KAAK,EAAE,iBAAiB,EAAE,IAAI,EAAE,SAAS,EAAE,IAAI,EAAE,MAAM,CAAC,CAAC,CAAC;YAClG,MAAM,SAAS,GAAG,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC;YACrC,KAAK,GAAG,SAAS,CAAC,KAAK,IAAI,EAAE,CAAC;QAChC,CAAC;QAED,IAAI,KAAK,EAAE,CAAC;YACV,KAAK,GAAG,KAAK,CAAC,MAAM,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,MAAM,EAAE,KAAK,KAAK,KAAK,CAAC,CAAC;QAC/D,CAAC;QACD,IAAI,SAAS,EAAE,CAAC;YACd,KAAK,GAAG,KAAK,CAAC,MAAM,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC,IAAI,CAAC,IAAI,EAAE,SAAS,IAAI,SAAS,CAAC,KAAK,SAAS,CAAC,CAAC;QACpF,CAAC;QAED,MAAM,OAAO,GAAG,KAAK,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC;YACpC,IAAI,EAAE,KAAK,CAAC,QAAQ,EAAE,IAAI;YAC1B,kGAAkG;YAClG,OAAO,EAAE,KAAK,CAAC,IAAI,EAAE,MAAM,IAAI,IAAI;YACnC,KAAK,EAAE,KAAK,CAAC,MAAM,EAAE,KAAK,IAAI,SAAS;YACvC,EAAE,EAAE,KAAK,CAAC,IAAI,EAAE,QAAQ;YACxB,IAAI,EAAE,KAAK,CAAC,IAAI,EAAE,IAAI;YACtB,IAAI,EAAE,KAAK,CAAC,IAAI,EAAE,IAAI,IAAI,OAAO;YACjC,OAAO,EAAE,KAAK,CAAC,IAAI,EAAE,OAAO;YAC5B,KAAK,EAAE,KAAK,CAAC,IAAI,EAAE,KAAK;YACxB,SAAS,EAAE,KAAK,CAAC,IAAI,EAAE,SAAS,IAAI,SAAS;YAC7C,QAAQ,EAAE,KAAK,CAAC,IAAI,EAAE,QAAQ;YAC9B,SAAS,EAAE,KAAK,CAAC,QAAQ,EAAE,iBAAiB;YAC5C,WAAW,EAAE,KAAK,CAAC,QAAQ,EAAE,MAAM,EAAE,CAAC,gCAAgC,CAAC,IAAI,IAAI;SAChF,CAAC,CAAC,CAAC;QAEJ,MAAM,IAAI,GAAG,EAAE,OAAO,EAAE,IAAI,EAAE,SAAS,EAAE,KAAK,EAAE,KAAK,CAAC,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,CAAC;QAChF,6EAA6E;QAC7E,0EAA0E;QAC1E,MAAM,OAAO,GAA8B,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,IAAI,EAAE,IAAI,EAAE,CAAC,CAAC,EAAE,CAAC,CAAC;QACnG,IAAI,KAAK,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YACvB,MAAM,OAAO,GAAG,CAAC,KAAK,CAAC,CAAC,CAAC,SAAS,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,EAAE,SAAS,CAAC,CAAC,CAAC,aAAa,SAAS,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;YACtH,OAAO,CAAC,IAAI,CAAC;gBACX,IAAI,EAAE,MAAM;gBACZ,IAAI,EAAE,0CAA0C,SAAS,IAAI,OAAO,CAAC,CAAC,CAAC,KAAK,OAAO,GAAG,CAAC,CAAC,CAAC,EAAE,GAAG;aAC/F,CAAC,CAAC;QACL,CAAC;QACD,OAAO,EAAE,OAAO,EAAE,iBAAiB,EAAE,IAAI,EAAE,CAAC;IAC9C,CAAC;IAAC,OAAO,GAAQ,EAAE,CAAC;QAClB,CAAC;YAAC,MAAM,GAAG,GAAG,6BAA6B,CAAC,GAAG,CAAC,CAAC;YAAC,IAAI,GAAG;gBAAE,OAAO,GAAG,CAAC;QAAC,CAAC;QACxE,MAAM,CAAC,KAAK,CAAC,oCAAoC,GAAG,CAAC,OAAO,EAAE,CAAC,CAAC;QAChE,OAAO,qBAAqB,CAC1B,gBAAgB,CAAC,kBAAkB,EACnC,iDAAiD,SAAS,MAAM,GAAG,CAAC,OAAO,EAAE,CAC9E,CAAC;IACJ,CAAC;AACH,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,uBAAuB,CAC3C,IAAa,EACb,OAAqB;IAErB,MAAM,MAAM,GAAG,4BAA4B,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC;IAC5D,IAAI,CAAC,MAAM,CAAC,OAAO,EAAE,CAAC;QACpB,MAAM,MAAM,GAAG,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC,OAAO,EAAE,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QAC9F,OAAO,qBAAqB,CAAC,gBAAgB,CAAC,gBAAgB,EAAE,MAAM,CAAC,CAAC;IAC1E,CAAC;IACD,MAAM,SAAS,GAAG,MAAM,YAAY,CAAC,qBAAqB,EAAE,MAAM,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC;IAClF,IAAI,SAAS;QAAE,OAAO,SAAS,CAAC;IAEhC,MAAM,EAAE,IAAI,EAAE,SAAS,EAAE,GAAG,MAAM,CAAC,IAAI,CAAC;IAExC,IAAI,CAAC;QACH,MAAM,OAAO,GAAG,+CAA+C,SAAS,oBAAoB,IAAI,EAAE,CAAC;QACnG,MAAM,MAAM,GAAQ,MAAM,kBAAkB,CAAC,OAAO,CAAC,CAAC;QACtD,MAAM,KAAK,GAAkC,MAAM,EAAE,QAAQ;YAC3D,CAAC,CAAC,MAAM;YACR,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,MAAM,aAAa,CAAC,CAAC,KAAK,EAAE,gBAAgB,EAAE,IAAI,EAAE,IAAI,EAAE,SAAS,EAAE,IAAI,EAAE,MAAM,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC;QAE7G,OAAO;YACL,OAAO,EAAE;gBACP;oBACE,IAAI,EAAE,MAAM;oBACZ,IAAI,EAAE,IAAI,CAAC,SAAS,CAClB;wBACE,OAAO,EAAE,IAAI;wBACb,KAAK;qBACN,EACD,IAAI,EACJ,CAAC,CACF;iBACF;aACF;SACF,CAAC;IACJ,CAAC;IAAC,OAAO,GAAQ,EAAE,CAAC;QAClB,CAAC;YAAC,MAAM,GAAG,GAAG,6BAA6B,CAAC,GAAG,CAAC,CAAC;YAAC,IAAI,GAAG;gBAAE,OAAO,GAAG,CAAC;QAAC,CAAC;QACxE,OAAO,qBAAqB,CAC1B,gBAAgB,CAAC,gBAAgB,EACjC,mBAAmB,IAAI,6BAA6B,SAAS,MAAM,GAAG,CAAC,OAAO,EAAE,CACjF,CAAC;IACJ,CAAC;AACH,CAAC;AAED;;;;;GAKG;AACH,MAAM,UAAU,2BAA2B,CACzC,KAAgC;IAEhC,MAAM,EACJ,SAAS,EACT,QAAQ,EACR,IAAI,EACJ,MAAM,EACN,OAAO,EACP,IAAI,EACJ,OAAO,EACP,MAAM,EACN,QAAQ,EACR,WAAW,EACX,WAAW,EACX,UAAU,EACV,WAAW,EACX,kBAAkB,EAClB,IAAI,EACJ,OAAO,EACP,aAAa,EACd,GAAG,KAAK,CAAC;IAEV,MAAM,SAAS,GAAG,kBAAkB,CAAC,IAAI,CAAC,CAAC;IAC3C,IAAI,CAAC,SAAS,EAAE,CAAC;QACf,MAAM,SAAS,GAAG,CAAC,GAAG,IAAI,GAAG,CAAC,MAAM,CAAC,MAAM,CAAC,wBAAwB,CAAC,CAAC,EAAE,MAAM,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QAC3F,OAAO;YACL,KAAK,EAAE,SAAS,IAAI,2EAA2E,SAAS,2DAA2D;SACpK,CAAC;IACJ,CAAC;IACD,IAAI,SAAS,KAAK,MAAM,IAAI,CAAC,MAAM,EAAE,CAAC;QACpC,OAAO,EAAE,KAAK,EAAE,qFAAqF,EAAE,CAAC;IAC1G,CAAC;IACD,IAAI,IAAI,KAAK,SAAS,IAAI,CAAC,MAAM,EAAE,CAAC;QAClC,OAAO;YACL,KAAK,EACH,oKAAoK;SACvK,CAAC;IACJ,CAAC;IACD,IAAI,OAAO,KAAK,MAAM,IAAI,CAAC,QAAQ,EAAE,CAAC;QACpC,OAAO,EAAE,KAAK,EAAE,iIAAiI,EAAE,CAAC;IACtJ,CAAC;IACD,IAAI,OAAO,KAAK,MAAM,IAAI,QAAQ,KAAK,CAAC,EAAE,CAAC;QACzC,OAAO,EAAE,KAAK,EAAE,gHAAgH,EAAE,CAAC;IACrI,CAAC;IAED,IAAI,IAAI,EAAE,CAAC;QACT,MAAM,OAAO,GAAG,sBAAsB,CAAC,IAAI,CAAC,CAAC;QAC7C,IAAI,CAAC,OAAO,CAAC,EAAE;YAAE,OAAO,EAAE,KAAK,EAAE,sBAAsB,OAAO,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,EAAE,CAAC;IACvF,CAAC;IAED,IAAI,KAAqB,CAAC;IAC1B,IAAI,CAAC;QACH,KAAK,GAAG,yBAAyB,CAAC,OAAO,EAAE,KAAK,CAAC,KAAK,CAAC,CAAC;IAC1D,CAAC;IAAC,OAAO,MAAW,EAAE,CAAC;QACrB,OAAO,EAAE,KAAK,EAAE,MAAM,CAAC,OAAO,EAAE,CAAC;IACnC,CAAC;IAED,MAAM,SAAS,GACb,KAAK,CAAC,IAAI;QACV,CAAC,WAAW;YACV,CAAC,CAAC,SAAS,WAAW,CAAC,WAAW,EAAE,CAAC,OAAO,CAAC,aAAa,EAAE,EAAE,CAAC,IAAI,IAAI,IAAI,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,MAAM,EAAE,GAAG,GAAG,GAAG,GAAG,CAAC,EAAE;YAClH,CAAC,CAAC,mBAAmB,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,GAAG,EAAE,GAAG,IAAI,CAAC,EAAE,CAAC,CAAC;IAE1D,MAAM,IAAI,GAAG,OAAO,KAAK,MAAM,CAAC;IAChC,MAAM,QAAQ,GAA2B;QACvC,UAAU,EAAE,4BAA4B;QACxC,IAAI,EAAE,gBAAgB;QACtB,QAAQ,EAAE;YACR,IAAI,EAAE,SAAS;YACf,SAAS;YACT,MAAM,EAAE;gBACN,8BAA8B,EAAE,YAAY;gBAC5C,GAAG,CAAC,WAAW,CAAC,CAAC,CAAC,EAAE,gCAAgC,EAAE,WAAW,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;aAC1E;SACF;QACD,IAAI,EAAE;YACJ,GAAG,CAAC,QAAQ,CAAC,CAAC,CAAC,EAAE,QAAQ,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;YACjC,IAAI,EAAE,SAAS;YACf,OAAO;YACP,KAAK;YACL,QAAQ;YACR,OAAO;YACP,GAAG,CAAC,IAAI;gBACN,CAAC,CAAC,EAAE;gBACJ,CAAC,CAAC,EAAE,MAAM,EAAE,WAAW,EAAE,WAAW,EAAE,UAAU,EAAE,CAAC;YACrD,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;YACzB,GAAG,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,MAAM,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;YAC7B,GAAG,CAAC,kBAAkB,IAAI,MAAM,CAAC,IAAI,CAAC,kBAAkB,CAAC,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,EAAE,kBAAkB,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;YACnG,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;YACzB,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,OAAO,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;YAC/B,GAAG,CAAC,aAAa,CAAC,CAAC,CAAC,EAAE,aAAa,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;SAC5C;KACF,CAAC;IACF,OAAO,EAAE,QAAQ,EAAE,SAAS,EAAE,KAAK,EAAE,CAAC;AACxC,CAAC;AAED;;;GAGG;AACH,MAAM,CAAC,KAAK,UAAU,qBAAqB,CACzC,KAAyE,EACzE,OAAqB,EACrB,OAAkF,EAAE;IAEpF,IAAI,CAAC,UAAU,CAAC,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC;QAC5B,MAAM,IAAI,GAAG,kBAAkB,CAAC,KAAK,CAAC,IAAI,CAAW,CAAC;QACtD,OAAO,EAAE,IAAI,EAAE,UAAU,EAAE,yBAAyB,CAAC,IAAI,EAAE,IAAI,CAAC,GAAG,CAAC,EAAE,IAAI,EAAE,QAAQ,EAAE,MAAM,EAAE,SAAS,IAAI,wBAAwB,EAAE,CAAC;IACxI,CAAC;IACD,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,IAAI,CAAC,OAAO,EAAE,cAAc,CAAC,CAAC,CAAC,gBAAgB,CAAC,OAAO,CAAC,cAAc,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC;IAC7G,IAAI,CAAC,KAAK,EAAE,CAAC;QACX,OAAO;YACL,KAAK,EAAE,qBAAqB,CAC1B,gBAAgB,CAAC,gBAAgB,EACjC,uJAAuJ,EACvJ,EAAE,SAAS,EAAE,wBAAwB,EAAE,IAAI,EAAE,qBAAqB,EAAE,CACrE;SACF,CAAC;IACJ,CAAC;IACD,IAAI,MAAM,GAAU,EAAE,CAAC;IACvB,IAAI,CAAC;QAAC,MAAM,GAAG,MAAM,CAAC,IAAI,CAAC,UAAU,IAAI,CAAC,GAAG,EAAE,CAAC,cAAc,CAAC,KAAK,CAAC,SAAS,IAAI,QAAQ,CAAC,CAAC,CAAC,EAAE,CAAC;IAAC,CAAC;IAAC,MAAM,CAAC,CAAC,sEAAsE,CAAC,CAAC;IACnL,gGAAgG;IAChG,MAAM,QAAQ,GAAG,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,EAAE,QAAQ,EAAE,IAAI,KAAK,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;IAC/F,MAAM,YAAY,GAAG,QAAQ,CAAC,CAAC,CAAC,kBAAkB,CAAC,QAAQ,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC;IAC/E,IAAI,QAAQ,IAAI,YAAY,EAAE,CAAC;QAC7B,OAAO,EAAE,IAAI,EAAE,YAAY,EAAE,UAAU,EAAE,QAAQ,CAAC,QAAQ,EAAE,WAAW,EAAE,CAAC,oBAAoB,CAAC,IAAI,yBAAyB,CAAC,YAAY,EAAE,IAAI,CAAC,GAAG,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,MAAM,EAAE,mBAAmB,KAAK,CAAC,IAAI,cAAc,YAAY,EAAE,EAAE,CAAC;IAC1O,CAAC;IACD,MAAM,QAAQ,GAAG,MAAM,YAAY,CAAC,KAAK,EAAE,EAAE,MAAM,EAAE,IAAI,EAAE,KAAK,CAAC,IAAI,EAAE,CAAC,CAAC;IACzE,IAAI,CAAC,QAAQ,CAAC,KAAK,IAAI,CAAC,QAAQ,CAAC,IAAI,EAAE,CAAC;QACtC,OAAO;YACL,KAAK,EAAE,qBAAqB,CAC1B,gBAAgB,CAAC,gBAAgB,EACjC,GAAG,QAAQ,CAAC,IAAI,KAAK,QAAQ,CAAC,MAAM,0GAA0G,EAC9I,EAAE,SAAS,EAAE,wBAAwB,EAAE,IAAI,EAAE,QAAQ,CAAC,IAAI,EAAE,UAAU,EAAE,QAAQ,CAAC,UAAU,EAAE,CAC9F;SACF,CAAC;IACJ,CAAC;IACD,OAAO,EAAE,IAAI,EAAE,QAAQ,CAAC,IAAI,EAAE,UAAU,EAAE,mBAAmB,CAAC,QAAQ,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,QAAQ,CAAC,OAAO,EAAE,GAAG,EAAE,IAAI,CAAC,GAAG,EAAE,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,MAAM,EAAE,QAAQ,CAAC,MAAM,EAAE,CAAC;AAC/K,CAAC;AAED,KAAK,UAAU,cAAc,CAAC,SAAiB;IAC7C,MAAM,MAAM,GAAQ,MAAM,kBAAkB,CAAC,+CAA+C,SAAS,kBAAkB,CAAC,CAAC;IACzH,IAAI,MAAM,EAAE,KAAK;QAAE,OAAO,MAAM,CAAC,KAAK,CAAC;IACvC,MAAM,EAAE,MAAM,EAAE,GAAG,MAAM,aAAa,CAAC,CAAC,KAAK,EAAE,iBAAiB,EAAE,IAAI,EAAE,SAAS,EAAE,IAAI,EAAE,MAAM,CAAC,CAAC,CAAC;IAClG,OAAO,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,KAAK,IAAI,EAAE,CAAC;AACxC,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,0BAA0B,CAC9C,IAAa,EACb,OAAqB;IAErB,MAAM,MAAM,GAAG,+BAA+B,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC;IAC/D,IAAI,CAAC,MAAM,CAAC,OAAO,EAAE,CAAC;QACpB,MAAM,MAAM,GAAG,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC,OAAO,EAAE,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QAC9F,OAAO,qBAAqB,CAAC,gBAAgB,CAAC,gBAAgB,EAAE,MAAM,CAAC,CAAC;IAC1E,CAAC;IAED,MAAM,IAAI,GAAG,UAAU,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IAC1C,8GAA8G;IAC9G,IAAI,KAAK,GAAG,2BAA2B,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,GAAG,MAAM,CAAC,IAAI,EAAE,IAAI,EAAE,OAAO,EAAE,CAAC,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;IAChG,IAAI,OAAO,IAAI,KAAK,EAAE,CAAC;QACrB,OAAO,qBAAqB,CAAC,gBAAgB,CAAC,gBAAgB,EAAE,KAAK,CAAC,KAAK,CAAC,CAAC;IAC/E,CAAC;IACD,MAAM,EAAE,SAAS,EAAE,QAAQ,EAAE,OAAO,EAAE,MAAM,EAAE,GAAG,MAAM,CAAC,IAAI,CAAC;IAE7D,MAAM,eAAe,GAAG,KAAK,IAA0F,EAAE;QACvH,MAAM,MAAM,GAAG,MAAM,qBAAqB,CAAC,MAAM,CAAC,IAAI,EAAE,OAAO,EAAE,EAAE,CAAC,CAAC;QACrE,IAAI,OAAO,IAAI,MAAM;YAAE,OAAO,MAAM,CAAC;QACrC,MAAM,OAAO,GAAG,2BAA2B,CAAC,EAAE,GAAG,MAAM,CAAC,IAAI,EAAE,IAAI,EAAE,MAAM,CAAC,IAAI,EAAE,CAAC,CAAC;QACnF,IAAI,OAAO,IAAI,OAAO;YAAE,OAAO,EAAE,KAAK,EAAE,qBAAqB,CAAC,gBAAgB,CAAC,gBAAgB,EAAE,OAAO,CAAC,KAAK,CAAC,EAAE,CAAC;QAClH,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAAC,WAAW,GAAG,EAAE,GAAG,CAAC,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAAC,WAAW,IAAI,EAAE,CAAC,EAAE,CAAC,oBAAoB,CAAC,EAAE,MAAM,CAAC,UAAU,EAAE,CAAC;QACxI,KAAK,GAAG,OAAO,CAAC;QAChB,OAAO,EAAE,SAAS,EAAE,EAAE,IAAI,EAAE,MAAM,CAAC,IAAI,EAAE,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,EAAE,CAAC;IACrE,CAAC,CAAC;IAEF,IAAI,MAAM,EAAE,CAAC;QACX,MAAM,QAAQ,GAAG,MAAM,eAAe,EAAE,CAAC;QACzC,IAAI,OAAO,IAAI,QAAQ;YAAE,OAAO,QAAQ,CAAC,KAAK,CAAC;QAC/C,MAAM,EAAE,QAAQ,EAAE,SAAS,EAAE,GAAG,KAAgE,CAAC;QACjG,OAAO;YACL,OAAO,EAAE;gBACP;oBACE,IAAI,EAAE,MAAM;oBACZ,IAAI,EAAE,IAAI,CAAC,SAAS,CAClB;wBACE,OAAO,EAAE,IAAI;wBACb,MAAM,EAAE,IAAI;wBACZ,MAAM,EAAE,WAAW;wBACnB,SAAS;wBACT,SAAS,EAAE,QAAQ,CAAC,SAAS;wBAC7B,QAAQ;qBACT,EACD,IAAI,EACJ,CAAC,CACF;iBACF;aACF;SACF,CAAC;IACJ,CAAC;IAED,MAAM,SAAS,GAAG,MAAM,YAAY,CAAC,wBAAwB,EAAE,MAAM,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC;IACrF,IAAI,SAAS;QAAE,OAAO,SAAS,CAAC;IAEhC,MAAM,QAAQ,GAAG,MAAM,eAAe,EAAE,CAAC;IACzC,IAAI,OAAO,IAAI,QAAQ;QAAE,OAAO,QAAQ,CAAC,KAAK,CAAC;IAC/C,MAAM,EAAE,QAAQ,EAAE,SAAS,EAAE,KAAK,EAAE,GAAG,KAAuF,CAAC;IAE/H,IAAI,CAAC;QACH,4EAA4E;QAC5E,gEAAgE;QAChE,MAAM,OAAO,GAAG,MAAM,sBAAsB,CAAC,QAAQ,CAAC,CAAC;QACvD,MAAM,YAAY,GAAG,OAAO,CAAC,KAAK,CAAC;QAEnC,OAAO;YACL,OAAO,EAAE;gBACP;oBACE,IAAI,EAAE,MAAM;oBACZ,IAAI,EAAE,IAAI,CAAC,SAAS,CAClB;wBACE,OAAO,EAAE,IAAI;wBACb,OAAO,EAAE,mBAAmB,SAAS,KAAK,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,SAAS,kBAAkB,SAAS,GAAG;wBAC9G,SAAS;wBACT,SAAS,EAAE,QAAQ,CAAC,SAAS;wBAC7B,QAAQ,EAAE,QAAQ,IAAI,IAAI;wBAC1B,KAAK;wBACL,OAAO;wBACP,OAAO,EAAE,MAAM,CAAC,IAAI,CAAC,OAAO;wBAC5B,QAAQ,EAAE,MAAM,CAAC,IAAI,CAAC,QAAQ;wBAC9B,QAAQ;wBACR,KAAK,EAAE,YAAY;wBACnB,YAAY,EAAE,OAAO,CAAC,OAAO;wBAC7B,iEAAiE;wBACjE,YAAY,EAAE,OAAO,CAAC,OAAO;wBAC7B,mBAAmB,EAAE,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,SAAS;wBAC3D,IAAI,EACF,6LAA6L;qBAChM,EACD,IAAI,EACJ,CAAC,CACF;iBACF;aACF;SACF,CAAC;IACJ,CAAC;IAAC,OAAO,GAAQ,EAAE,CAAC;QAClB,CAAC;YAAC,MAAM,GAAG,GAAG,6BAA6B,CAAC,GAAG,CAAC,CAAC;YAAC,IAAI,GAAG;gBAAE,OAAO,GAAG,CAAC;QAAC,CAAC;QACxE,MAAM,CAAC,KAAK,CAAC,oCAAoC,SAAS,MAAM,GAAG,CAAC,OAAO,EAAE,CAAC,CAAC;QAC/E,OAAO,qBAAqB,CAC1B,gBAAgB,CAAC,kBAAkB,EACnC,oCAAoC,SAAS,MAAM,GAAG,CAAC,OAAO,EAAE,CACjE,CAAC;IACJ,CAAC;AACH,CAAC;AAED;;;;;;GAMG;AACH,MAAM,CAAC,KAAK,UAAU,yBAAyB,CAC7C,IAAa,EACb,OAAqB;IAErB,MAAM,MAAM,GAAG,8BAA8B,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC;IAC9D,IAAI,CAAC,MAAM,CAAC,OAAO,EAAE,CAAC;QACpB,MAAM,MAAM,GAAG,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC,OAAO,EAAE,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QAC9F,OAAO,qBAAqB,CAAC,gBAAgB,CAAC,gBAAgB,EAAE,MAAM,CAAC,CAAC;IAC1E,CAAC;IAED,MAAM,SAAS,GAAG,MAAM,YAAY,CAAC,uBAAuB,EAAE,MAAM,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC;IACpF,IAAI,SAAS;QAAE,OAAO,SAAS,CAAC;IAEhC,MAAM,EAAE,IAAI,EAAE,SAAS,EAAE,MAAM,EAAE,YAAY,EAAE,GAAG,MAAM,CAAC,IAAI,CAAC;IAE9D,IAAI,CAAC;QACH,MAAM,OAAO,GAAG,+CAA+C,SAAS,oBAAoB,IAAI,EAAE,CAAC;QACnG,MAAM,UAAU,GAA4B,EAAE,IAAI,EAAE,EAAE,MAAM,EAAE,EAAE,CAAC;QACjE,IAAI,MAAM,IAAI,YAAY,EAAE,CAAC;YAC1B,UAAU,CAAC,IAAgC,CAAC,YAAY,GAAG,YAAY,CAAC;QAC3E,CAAC;QAED,MAAM,QAAQ,GAAQ,MAAM,kBAAkB,CAAC,OAAO,EAAE,EAAE,MAAM,EAAE,OAAO,EAAE,IAAI,EAAE,UAAU,EAAE,CAAC,CAAC;QAE/F,IAAI,WAAW,GAAG,KAAK,CAAC;QACxB,IAAI,CAAC,QAAQ,EAAE,CAAC;YACd,MAAM,SAAS,GAAG;gBAChB,OAAO;gBACP,gBAAgB;gBAChB,IAAI;gBACJ,IAAI;gBACJ,SAAS;gBACT,cAAc;gBACd,IAAI;gBACJ,IAAI,CAAC,SAAS,CAAC,UAAU,CAAC;aAC3B,CAAC;YACF,MAAM,aAAa,CAAC,SAAS,CAAC,CAAC;YAC/B,WAAW,GAAG,IAAI,CAAC;QACrB,CAAC;QAED,6EAA6E;QAC7E,IAAI,cAAc,GAAmB,IAAI,CAAC;QAC1C,MAAM,QAAQ,GAAG,MAAM,kBAAkB,CAAC,OAAO,CAAC,CAAC;QACnD,IAAI,QAAQ,EAAE,CAAC;YACb,cAAc,GAAG,QAAQ,EAAE,IAAI,EAAE,MAAM,IAAI,IAAI,CAAC;QAClD,CAAC;aAAM,CAAC;YACN,MAAM,IAAI,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,MAAM,aAAa,CAAC,CAAC,KAAK,EAAE,gBAAgB,EAAE,IAAI,EAAE,IAAI,EAAE,SAAS,EAAE,IAAI,EAAE,MAAM,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC;YACtH,cAAc,GAAG,IAAI,EAAE,IAAI,EAAE,MAAM,IAAI,IAAI,CAAC;QAC9C,CAAC;QACD,MAAM,aAAa,GAAkB,IAAI,CAAC;QAE1C,OAAO;YACL,OAAO,EAAE;gBACP;oBACE,IAAI,EAAE,MAAM;oBACZ,IAAI,EAAE,IAAI,CAAC,SAAS,CAClB;wBACE,OAAO,EAAE,IAAI;wBACb,KAAK,EAAE,IAAI;wBACX,SAAS;wBACT,SAAS,EAAE,EAAE,MAAM,EAAE,YAAY,EAAE,YAAY,IAAI,IAAI,EAAE;wBACzD,SAAS,EAAE,WAAW,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,gBAAgB;wBACrD,cAAc;wBACd,aAAa;wBACb,SAAS,EACP,0HAA0H;wBAC5H,IAAI,EAAE,SAAS;qBAChB,EACD,IAAI,EACJ,CAAC,CACF;iBACF;aACF;SACF,CAAC;IACJ,CAAC;IAAC,OAAO,GAAQ,EAAE,CAAC;QAClB,CAAC;YAAC,MAAM,GAAG,GAAG,6BAA6B,CAAC,GAAG,CAAC,CAAC;YAAC,IAAI,GAAG;gBAAE,OAAO,GAAG,CAAC;QAAC,CAAC;QACxE,MAAM,CAAC,KAAK,CAAC,aAAa,MAAM,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,SAAS,oBAAoB,IAAI,MAAM,GAAG,CAAC,OAAO,EAAE,CAAC,CAAC;QACnG,OAAO,qBAAqB,CAC1B,gBAAgB,CAAC,kBAAkB,EACnC,aAAa,MAAM,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,SAAS,oBAAoB,IAAI,MAAM,GAAG,CAAC,OAAO,EAAE,CACrF,CAAC;IACJ,CAAC;AACH,CAAC;AAMD;;;;GAIG;AACH,MAAM,UAAU,gBAAgB,CAC9B,KAA4E,EAC5E,WAAmB,EACnB,MAAc,IAAI,CAAC,GAAG,EAAE;IAExB,MAAM,IAAI,GAAG,KAAK,CAAC,QAAQ,EAAE,IAAI,IAAI,EAAE,CAAC;IACxC,IAAI,KAAK,CAAC,QAAQ,EAAE,iBAAiB,EAAE,CAAC;QACtC,OAAO,EAAE,EAAE,EAAE,KAAK,EAAE,KAAK,EAAE,UAAU,IAAI,0CAA0C,EAAE,CAAC;IACxF,CAAC;IACD,IAAI,KAAK,CAAC,IAAI,EAAE,SAAS,KAAK,SAAS,IAAI,IAAI,CAAC,UAAU,CAAC,UAAU,CAAC,EAAE,CAAC;QACvE,OAAO,EAAE,EAAE,EAAE,KAAK,EAAE,KAAK,EAAE,UAAU,IAAI,iEAAiE,EAAE,CAAC;IAC/G,CAAC;IACD,IAAI,KAAK,CAAC,IAAI,EAAE,KAAK,KAAK,QAAQ,IAAI,KAAK,CAAC,IAAI,EAAE,MAAM,KAAK,IAAI,IAAI,KAAK,CAAC,MAAM,EAAE,KAAK,KAAK,QAAQ,EAAE,CAAC;QACtG,OAAO,EAAE,EAAE,EAAE,KAAK,EAAE,KAAK,EAAE,UAAU,IAAI,yCAAyC,EAAE,CAAC;IACvF,CAAC;IACD,MAAM,gBAAgB,GAAG,KAAK,CAAC,IAAI,EAAE,QAAQ,IAAI,EAAE,CAAC;IACpD,IAAI,gBAAgB,IAAI,CAAC,EAAE,CAAC;QAC1B,OAAO,EAAE,EAAE,EAAE,KAAK,EAAE,KAAK,EAAE,UAAU,IAAI,yDAAyD,EAAE,CAAC;IACvG,CAAC;IACD,MAAM,QAAQ,GAAG,KAAK,CAAC,MAAM,EAAE,cAAc,CAAC;IAC9C,sFAAsF;IACtF,MAAM,SAAS,GAAG,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,GAAG,GAAG,IAAI,IAAI,CAAC,QAAQ,CAAC,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;IACjF,MAAM,YAAY,GAAG,IAAI,CAAC,IAAI,CAAC,SAAS,GAAG,SAAS,CAAC,CAAC;IACtD,MAAM,WAAW,GAAG,IAAI,CAAC,GAAG,CAAC,gBAAgB,EAAE,YAAY,GAAG,WAAW,CAAC,CAAC;IAC3E,IAAI,WAAW,GAAG,IAAI,EAAE,CAAC;QACvB,OAAO,EAAE,EAAE,EAAE,KAAK,EAAE,KAAK,EAAE,+BAA+B,WAAW,oCAAoC,EAAE,CAAC;IAC9G,CAAC;IACD,MAAM,MAAM,GAAG,QAAQ,CAAC,CAAC,CAAC,IAAI,IAAI,CAAC,QAAQ,CAAC,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC,GAAG,CAAC;IAC7D,OAAO;QACL,EAAE,EAAE,IAAI;QACR,gBAAgB;QAChB,WAAW;QACX,YAAY;QACZ,QAAQ,EAAE,QAAQ,IAAI,aAAa;QACnC,SAAS,EAAE,IAAI,IAAI,CAAC,MAAM,GAAG,WAAW,GAAG,SAAS,CAAC,CAAC,WAAW,EAAE;KACpE,CAAC;AACJ,CAAC;AAED;;;;;GAKG;AACH,kHAAkH;AAClH,MAAM,UAAU,eAAe,CAAC,KAAU,EAAE,MAAc,IAAI,CAAC,GAAG,EAAE;IAClE,MAAM,GAAG,GAAG,KAAK,EAAE,QAAQ,EAAE,WAAW,IAAI,EAAE,CAAC;IAC/C,MAAM,KAAK,GAAG,GAAG,CAAC,6BAA6B,CAAC,CAAC;IACjD,MAAM,QAAQ,GAAG,GAAG,CAAC,gCAAgC,CAAC,CAAC;IACvD,IAAI,OAAO,KAAK,KAAK,QAAQ,IAAI,KAAK,CAAC,MAAM,GAAG,CAAC,IAAI,KAAK,CAAC,MAAM,GAAG,GAAG,IAAI,OAAO,QAAQ,KAAK,QAAQ;QAAE,OAAO,IAAI,CAAC;IACrH,IAAI,CAAC,oBAAoB,CAAC,IAAI,CAAC,QAAQ,CAAC;QAAE,OAAO,IAAI,CAAC;IACtD,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC;IACnC,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,KAAK,CAAC,IAAI,KAAK,IAAI,GAAG,IAAI,KAAK,GAAG,GAAG,GAAG,CAAC,GAAG,QAAQ,GAAG,MAAM;QAAE,OAAO,IAAI,CAAC;IAChG,OAAO,EAAE,KAAK,EAAE,KAAK,EAAE,QAAQ,EAAE,CAAC;AACpC,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,yBAAyB,CAC7C,IAAa,EACb,OAAqB;IAErB,MAAM,MAAM,GAAG,8BAA8B,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC;IAC9D,IAAI,CAAC,MAAM,CAAC,OAAO,EAAE,CAAC;QACpB,MAAM,MAAM,GAAG,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC,OAAO,EAAE,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QAC9F,OAAO,qBAAqB,CAAC,gBAAgB,CAAC,gBAAgB,EAAE,MAAM,CAAC,CAAC;IAC1E,CAAC;IACD,MAAM,SAAS,GAAG,MAAM,YAAY,CAAC,uBAAuB,EAAE,MAAM,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC;IACpF,IAAI,SAAS;QAAE,OAAO,SAAS,CAAC;IAEhC,MAAM,EAAE,IAAI,EAAE,SAAS,EAAE,WAAW,EAAE,WAAW,EAAE,MAAM,EAAE,KAAK,EAAE,GAAG,MAAM,CAAC,IAAI,CAAC;IACjF,MAAM,OAAO,GAAG,+CAA+C,SAAS,oBAAoB,IAAI,EAAE,CAAC;IAEnG,IAAI,CAAC;QACH,IAAI,KAAK,GAAQ,MAAM,kBAAkB,CAAC,OAAO,CAAC,CAAC;QACnD,IAAI,CAAC,KAAK,EAAE,CAAC;YACX,MAAM,EAAE,MAAM,EAAE,GAAG,MAAM,aAAa,CAAC,CAAC,KAAK,EAAE,gBAAgB,EAAE,IAAI,EAAE,IAAI,EAAE,SAAS,EAAE,IAAI,EAAE,MAAM,CAAC,CAAC,CAAC;YACvG,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC;QAC7B,CAAC;QAED,6GAA6G;QAC7G,0FAA0F;QAC1F,MAAM,KAAK,GAAG,eAAe,CAAC,KAAK,CAAC,CAAC;QACrC,IAAI,KAAK,IAAI,KAAK,CAAC,KAAK,KAAK,KAAK,EAAE,CAAC;YACnC,OAAO,qBAAqB,CAC1B,gBAAgB,CAAC,gBAAgB,EACjC,kBAAkB,IAAI,yBAAyB,KAAK,CAAC,KAAK,WAAW,KAAK,CAAC,KAAK,0DAA0D,EAC1I,EAAE,SAAS,EAAE,uBAAuB,EAAE,KAAK,EAAE,IAAI,EAAE,SAAS,EAAE,CAC/D,CAAC;QACJ,CAAC;QAED,IAAI,WAAW,IAAI,KAAK,EAAE,QAAQ,EAAE,GAAG,KAAK,WAAW,EAAE,CAAC;YACxD,OAAO,qBAAqB,CAC1B,gBAAgB,CAAC,gBAAgB,EACjC,mEAAmE,EACnE,EAAE,SAAS,EAAE,uBAAuB,EAAE,KAAK,EAAE,IAAI,EAAE,SAAS,EAAE,CAC/D,CAAC;QACJ,CAAC;QAED,MAAM,IAAI,GAAG,gBAAgB,CAAC,KAAK,EAAE,WAAW,CAAC,CAAC;QAClD,IAAI,CAAC,IAAI,CAAC,EAAE,EAAE,CAAC;YACb,OAAO,qBAAqB,CAAC,gBAAgB,CAAC,gBAAgB,EAAE,IAAI,CAAC,KAAK,CAAC,CAAC;QAC9E,CAAC;QAED,IAAI,CAAC,MAAM,EAAE,CAAC;YACZ,IAAI,WAAW,EAAE,CAAC;gBAChB,MAAM,eAAe,GAAG,MAAM,CAAC,KAAK,EAAE,QAAQ,EAAE,eAAe,IAAI,EAAE,CAAC,CAAC;gBACvE,IAAI,CAAC,eAAe,EAAE,CAAC;oBACrB,OAAO,qBAAqB,CAC1B,gBAAgB,CAAC,gBAAgB,EACjC,+EAA+E,EAC/E,EAAE,SAAS,EAAE,uBAAuB,EAAE,KAAK,EAAE,IAAI,EAAE,SAAS,EAAE,CAC/D,CAAC;gBACJ,CAAC;gBACD,MAAM,SAAS,GAAG;oBAChB,EAAE,EAAE,EAAE,MAAM,EAAE,IAAI,EAAE,eAAe,EAAE,KAAK,EAAE,WAAW,EAAE;oBACzD,EAAE,EAAE,EAAE,MAAM,EAAE,IAAI,EAAE,2BAA2B,EAAE,KAAK,EAAE,eAAe,EAAE;oBACzE,EAAE,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,gBAAgB,EAAE,KAAK,EAAE,IAAI,CAAC,WAAW,EAAE;iBACnE,CAAC;gBACF,MAAM,QAAQ,GAAQ,MAAM,kBAAkB,CAAC,OAAO,EAAE;oBACtD,MAAM,EAAE,OAAO,EAAE,IAAI,EAAE,SAAS,EAAE,WAAW,EAAE,6BAA6B;iBAC7E,CAAC,CAAC;gBACH,IAAI,CAAC,QAAQ,EAAE,CAAC;oBACd,MAAM,aAAa,CAAC;wBAClB,OAAO,EAAE,gBAAgB,EAAE,IAAI,EAAE,IAAI,EAAE,SAAS,EAAE,aAAa,EAAE,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,SAAS,CAAC;qBACjG,CAAC,CAAC;gBACL,CAAC;YACH,CAAC;iBAAM,CAAC;gBACN,MAAM,UAAU,GAAG,EAAE,IAAI,EAAE,EAAE,QAAQ,EAAE,IAAI,CAAC,WAAW,EAAE,EAAE,CAAC;gBAC5D,MAAM,QAAQ,GAAQ,MAAM,kBAAkB,CAAC,OAAO,EAAE,EAAE,MAAM,EAAE,OAAO,EAAE,IAAI,EAAE,UAAU,EAAE,CAAC,CAAC;gBAC/F,IAAI,CAAC,QAAQ,EAAE,CAAC;oBACd,MAAM,aAAa,CAAC,CAAC,OAAO,EAAE,gBAAgB,EAAE,IAAI,EAAE,IAAI,EAAE,SAAS,EAAE,cAAc,EAAE,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC;gBAC5H,CAAC;YACH,CAAC;YAED,6DAA6D;YAC7D,IAAI,IAAI,GAAQ,MAAM,kBAAkB,CAAC,OAAO,CAAC,CAAC;YAClD,IAAI,CAAC,IAAI,EAAE,CAAC;gBACV,MAAM,EAAE,MAAM,EAAE,GAAG,MAAM,aAAa,CAAC,CAAC,KAAK,EAAE,gBAAgB,EAAE,IAAI,EAAE,IAAI,EAAE,SAAS,EAAE,IAAI,EAAE,MAAM,CAAC,CAAC,CAAC;gBACvG,IAAI,GAAG,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC;YAC5B,CAAC;YACD,IAAI,IAAI,IAAI,IAAI,CAAC,IAAI,EAAE,QAAQ,KAAK,IAAI,CAAC,WAAW,EAAE,CAAC;gBACrD,OAAO,qBAAqB,CAC1B,gBAAgB,CAAC,kBAAkB,EACnC,qDAAqD,IAAI,CAAC,IAAI,EAAE,QAAQ,cAAc,IAAI,CAAC,WAAW,0CAA0C,CACjJ,CAAC;YACJ,CAAC;YACD,IAAI,WAAW,IAAI,IAAI,EAAE,QAAQ,EAAE,GAAG,KAAK,WAAW,EAAE,CAAC;gBACvD,OAAO,qBAAqB,CAC1B,gBAAgB,CAAC,kBAAkB,EACnC,oFAAoF,EACpF,EAAE,SAAS,EAAE,uBAAuB,EAAE,KAAK,EAAE,IAAI,EAAE,SAAS,EAAE,CAC/D,CAAC;YACJ,CAAC;QACH,CAAC;QAED,OAAO;YACL,OAAO,EAAE;gBACP;oBACE,IAAI,EAAE,MAAM;oBACZ,IAAI,EAAE,IAAI,CAAC,SAAS,CAClB;wBACE,OAAO,EAAE,IAAI;wBACb,MAAM;wBACN,KAAK,EAAE,IAAI;wBACX,SAAS;wBACT,GAAG,CAAC,KAAK,EAAE,QAAQ,EAAE,GAAG,CAAC,CAAC,CAAC,EAAE,QAAQ,EAAE,KAAK,CAAC,QAAQ,CAAC,GAAG,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;wBACjE,gBAAgB,EAAE,IAAI,CAAC,gBAAgB;wBACvC,QAAQ,EAAE,IAAI,CAAC,WAAW;wBAC1B,YAAY,EAAE,IAAI,CAAC,YAAY;wBAC/B,WAAW,EAAE,IAAI,CAAC,QAAQ;wBAC1B,SAAS,EAAE,IAAI,CAAC,SAAS;wBACzB,IAAI,EAAE,4FAA4F;qBACnG,EACD,IAAI,EACJ,CAAC,CACF;iBACF;aACF;SACF,CAAC;IACJ,CAAC;IAAC,OAAO,GAAQ,EAAE,CAAC;QAClB,CAAC;YAAC,MAAM,GAAG,GAAG,6BAA6B,CAAC,GAAG,CAAC,CAAC;YAAC,IAAI,GAAG;gBAAE,OAAO,GAAG,CAAC;QAAC,CAAC;QACxE,MAAM,CAAC,KAAK,CAAC,mCAAmC,IAAI,MAAM,GAAG,CAAC,OAAO,EAAE,CAAC,CAAC;QACzE,OAAO,qBAAqB,CAC1B,gBAAgB,CAAC,kBAAkB,EACnC,mCAAmC,IAAI,MAAM,GAAG,CAAC,OAAO,EAAE,CAC3D,CAAC;IACJ,CAAC;AACH,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,0BAA0B,CAC9C,IAAa,EACb,OAAqB;IAErB,MAAM,MAAM,GAAG,+BAA+B,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC;IAC/D,IAAI,CAAC,MAAM,CAAC,OAAO,EAAE,CAAC;QACpB,MAAM,MAAM,GAAG,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC,OAAO,EAAE,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QAC9F,OAAO,qBAAqB,CAAC,gBAAgB,CAAC,gBAAgB,EAAE,MAAM,CAAC,CAAC;IAC1E,CAAC;IAED,MAAM,EAAE,IAAI,EAAE,SAAS,EAAE,WAAW,EAAE,GAAG,MAAM,CAAC,IAAI,CAAC;IACrD,IAAI,SAAS,KAAK,QAAQ;QAAE,OAAO,qBAAqB,CAAC,gBAAgB,CAAC,gBAAgB,EAAE,wCAAwC,CAAC,CAAC;IACtI,MAAM,SAAS,GAAG,MAAM,YAAY,CAAC,wBAAwB,EAAE,MAAM,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC;IACrF,IAAI,SAAS;QAAE,OAAO,SAAS,CAAC;IAChC,IAAI,CAAC;QACH,MAAM,UAAU,GAAG,MAAM,sBAAsB,CAAC,IAAI,EAAE,WAAW,CAAC,CAAC;QACnE,OAAO,EAAE,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,EAAE,OAAO,EAAE,IAAI,EAAE,GAAG,UAAU,EAAE,EAAE,IAAI,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,iBAAiB,EAAE,UAAU,EAAE,CAAC;IACzI,CAAC;IAAC,OAAO,GAAQ,EAAE,CAAC;QAClB,CAAC;YAAC,MAAM,GAAG,GAAG,6BAA6B,CAAC,GAAG,CAAC,CAAC;YAAC,IAAI,GAAG;gBAAE,OAAO,GAAG,CAAC;QAAC,CAAC;QACxE,IAAI,GAAG,YAAY,mBAAmB,EAAE,CAAC;YACvC,4EAA4E;YAC5E,OAAO,qBAAqB,CAAC,gBAAgB,CAAC,kBAAkB,EAAE,2BAA2B,GAAG,CAAC,OAAO,GAAG,CAAC,CAAC;QAC/G,CAAC;QACD,OAAO,qBAAqB,CAAC,gBAAgB,CAAC,kBAAkB,EAAE,wCAAwC,GAAG,CAAC,OAAO,4BAA4B,CAAC,CAAC;IACrJ,CAAC;AAEH,CAAC;AAED;;;;GAIG;AACH,MAAM,CAAC,KAAK,UAAU,uBAAuB,CAC3C,IAAY,EACZ,IAA6B,EAC7B,SAAS,GAAG,QAAQ;IAEpB,IAAI,CAAC,MAAM,EAAE,MAAM,EAAE,QAAQ,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,IAAI,IAAI,CAAC,EAAE,CAAC;QACxD,MAAM,QAAQ,GAAG,MAAM,uBAAuB,CAAC,EAAE,IAAI,EAAE,SAAS,EAAE,CAAC,CAAC;QACpE,MAAM,KAAK,GAAG,QAAQ,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC;QAClC,MAAM,IAAI,GAAG,KAAK,EAAE,IAAI,KAAK,MAAM,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,SAAS,CAAC;QAC/E,IAAI,QAAQ,CAAC,OAAO,IAAI,CAAC,IAAI,IAAI,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,GAAG,EAAE,KAAK,CAAC,EAAE,EAAE,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC,GAAG,CAAC,KAAK,KAAK,CAAC,EAAE,CAAC;YACzG,MAAM,IAAI,KAAK,CAAC,iEAAiE,CAAC,CAAC;QACrF,CAAC;QACD,OAAO,CAAC,uDAAuD;IACjE,CAAC;IACD,MAAM,OAAO,GAAG,+CAA+C,SAAS,oBAAoB,IAAI,EAAE,CAAC;IACnG,MAAM,UAAU,GAAG,EAAE,IAAI,EAAE,CAAC;IAC5B,MAAM,OAAO,GAAQ,MAAM,kBAAkB,CAAC,OAAO,EAAE,EAAE,MAAM,EAAE,OAAO,EAAE,IAAI,EAAE,UAAU,EAAE,CAAC,CAAC;IAC9F,IAAI,CAAC,OAAO,EAAE,CAAC;QACb,MAAM,aAAa,CAAC,CAAC,OAAO,EAAE,gBAAgB,EAAE,IAAI,EAAE,IAAI,EAAE,SAAS,EAAE,cAAc,EAAE,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC;IAC5H,CAAC;AACH,CAAC"}
|
|
@@ -75,6 +75,7 @@ export declare const ClaimedImportQcowInputObjectSchema: z.ZodObject<{
|
|
|
75
75
|
diskGb?: number | undefined;
|
|
76
76
|
network?: string | undefined;
|
|
77
77
|
ttlHours?: number | undefined;
|
|
78
|
+
vcpus?: number | undefined;
|
|
78
79
|
claimName?: string | undefined;
|
|
79
80
|
confirmAssetId?: string | undefined;
|
|
80
81
|
workspaceRoot?: string | undefined;
|
|
@@ -82,7 +83,6 @@ export declare const ClaimedImportQcowInputObjectSchema: z.ZodObject<{
|
|
|
82
83
|
claimTtlHours?: number | undefined;
|
|
83
84
|
confirmVmPrefix?: string | undefined;
|
|
84
85
|
confirmVmid?: number | undefined;
|
|
85
|
-
vcpus?: number | undefined;
|
|
86
86
|
vlanTag?: number | undefined;
|
|
87
87
|
vmPrefix?: string | undefined;
|
|
88
88
|
confirmImageSha256?: string | undefined;
|
|
@@ -103,6 +103,7 @@ export declare const ClaimedImportQcowInputObjectSchema: z.ZodObject<{
|
|
|
103
103
|
purpose?: string | undefined;
|
|
104
104
|
network?: string | undefined;
|
|
105
105
|
ttlHours?: number | undefined;
|
|
106
|
+
vcpus?: number | undefined;
|
|
106
107
|
claimName?: string | undefined;
|
|
107
108
|
apply?: boolean | undefined;
|
|
108
109
|
confirmAssetId?: string | undefined;
|
|
@@ -111,7 +112,6 @@ export declare const ClaimedImportQcowInputObjectSchema: z.ZodObject<{
|
|
|
111
112
|
claimTtlHours?: number | undefined;
|
|
112
113
|
confirmVmPrefix?: string | undefined;
|
|
113
114
|
confirmVmid?: number | undefined;
|
|
114
|
-
vcpus?: number | undefined;
|
|
115
115
|
vlanTag?: number | undefined;
|
|
116
116
|
vmPrefix?: string | undefined;
|
|
117
117
|
confirmImageSha256?: string | undefined;
|
|
@@ -212,18 +212,18 @@ export declare const CubeClaimInputSchema: z.ZodObject<{
|
|
|
212
212
|
applianceUrl: z.ZodOptional<z.ZodString>;
|
|
213
213
|
}, "strip", z.ZodTypeAny, {
|
|
214
214
|
claimId?: string | undefined;
|
|
215
|
+
owner?: string | undefined;
|
|
215
216
|
assetId?: string | undefined;
|
|
216
217
|
emulatorUrl?: string | undefined;
|
|
217
218
|
applianceUrl?: string | undefined;
|
|
218
219
|
linearKey?: string | undefined;
|
|
219
|
-
owner?: string | undefined;
|
|
220
220
|
}, {
|
|
221
221
|
claimId?: string | undefined;
|
|
222
|
+
owner?: string | undefined;
|
|
222
223
|
assetId?: string | undefined;
|
|
223
224
|
emulatorUrl?: string | undefined;
|
|
224
225
|
applianceUrl?: string | undefined;
|
|
225
226
|
linearKey?: string | undefined;
|
|
226
|
-
owner?: string | undefined;
|
|
227
227
|
}>;
|
|
228
228
|
export declare function handleCubeClaim(rawArgs: unknown, context: ToolContext): Promise<CallToolResult>;
|
|
229
229
|
//# sourceMappingURL=cube-canonical.d.ts.map
|