__vite_ssr_exportName__("RESOURCE_MONITOR_PROTOCOL_VERSION", () => { try { return RESOURCE_MONITOR_PROTOCOL_VERSION } catch {} });
__vite_ssr_exportName__("HostResourcesSnapshot", () => { try { return HostResourcesSnapshot } catch {} });
__vite_ssr_exportName__("ResourceTelemetryIoSemantics", () => { try { return ResourceTelemetryIoSemantics } catch {} });
__vite_ssr_exportName__("ResourceTelemetryProcessCategory", () => { try { return ResourceTelemetryProcessCategory } catch {} });
__vite_ssr_exportName__("ResourceTelemetrySourceStatus", () => { try { return ResourceTelemetrySourceStatus } catch {} });
__vite_ssr_exportName__("ResourceTelemetryProcessIdentity", () => { try { return ResourceTelemetryProcessIdentity } catch {} });
__vite_ssr_exportName__("ResourceMonitorExternalProcess", () => { try { return ResourceMonitorExternalProcess } catch {} });
__vite_ssr_exportName__("ResourceMonitorCapabilities", () => { try { return ResourceMonitorCapabilities } catch {} });
__vite_ssr_exportName__("ResourceMonitorProcessSample", () => { try { return ResourceMonitorProcessSample } catch {} });
__vite_ssr_exportName__("ResourceMonitorConfigureCommand", () => { try { return ResourceMonitorConfigureCommand } catch {} });
__vite_ssr_exportName__("ResourceMonitorSetExternalProcessesCommand", () => { try { return ResourceMonitorSetExternalProcessesCommand } catch {} });
__vite_ssr_exportName__("ResourceMonitorSampleNowCommand", () => { try { return ResourceMonitorSampleNowCommand } catch {} });
__vite_ssr_exportName__("ResourceMonitorProcessTableCommand", () => { try { return ResourceMonitorProcessTableCommand } catch {} });
__vite_ssr_exportName__("ResourceMonitorSetSampleIntervalCommand", () => { try { return ResourceMonitorSetSampleIntervalCommand } catch {} });
__vite_ssr_exportName__("ResourceMonitorSetStreamingCommand", () => { try { return ResourceMonitorSetStreamingCommand } catch {} });
__vite_ssr_exportName__("ResourceMonitorReadHistoryCommand", () => { try { return ResourceMonitorReadHistoryCommand } catch {} });
__vite_ssr_exportName__("ResourceMonitorShutdownCommand", () => { try { return ResourceMonitorShutdownCommand } catch {} });
__vite_ssr_exportName__("ResourceMonitorCommand", () => { try { return ResourceMonitorCommand } catch {} });
__vite_ssr_exportName__("ResourceMonitorHelloEvent", () => { try { return ResourceMonitorHelloEvent } catch {} });
__vite_ssr_exportName__("ResourceMonitorSnapshotEvent", () => { try { return ResourceMonitorSnapshotEvent } catch {} });
__vite_ssr_exportName__("ResourceMonitorProcessTableEntry", () => { try { return ResourceMonitorProcessTableEntry } catch {} });
__vite_ssr_exportName__("ResourceMonitorProcessTableEvent", () => { try { return ResourceMonitorProcessTableEvent } catch {} });
__vite_ssr_exportName__("ResourceMonitorHistoryChunkEvent", () => { try { return ResourceMonitorHistoryChunkEvent } catch {} });
__vite_ssr_exportName__("ResourceMonitorErrorEvent", () => { try { return ResourceMonitorErrorEvent } catch {} });
__vite_ssr_exportName__("ResourceMonitorEvent", () => { try { return ResourceMonitorEvent } catch {} });
__vite_ssr_exportName__("DesktopElectronProcessType", () => { try { return DesktopElectronProcessType } catch {} });
__vite_ssr_exportName__("DesktopElectronProcessMetric", () => { try { return DesktopElectronProcessMetric } catch {} });
__vite_ssr_exportName__("DesktopHostTelemetrySnapshot", () => { try { return DesktopHostTelemetrySnapshot } catch {} });
__vite_ssr_exportName__("DesktopHostTelemetryHello", () => { try { return DesktopHostTelemetryHello } catch {} });
__vite_ssr_exportName__("DesktopUpdateRemoteOutcome", () => { try { return DesktopUpdateRemoteOutcome } catch {} });
__vite_ssr_exportName__("DesktopUpdateStatusReport", () => { try { return DesktopUpdateStatusReport } catch {} });
__vite_ssr_exportName__("DesktopHostTelemetryMessage", () => { try { return DesktopHostTelemetryMessage } catch {} });
__vite_ssr_exportName__("DesktopTelemetrySetDiagnosticsDemand", () => { try { return DesktopTelemetrySetDiagnosticsDemand } catch {} });
__vite_ssr_exportName__("DesktopTelemetrySetHostPowerIntervals", () => { try { return DesktopTelemetrySetHostPowerIntervals } catch {} });
__vite_ssr_exportName__("DesktopTelemetryRequestDesktopUpdate", () => { try { return DesktopTelemetryRequestDesktopUpdate } catch {} });
__vite_ssr_exportName__("DesktopTelemetryCommitDesktopUpdate", () => { try { return DesktopTelemetryCommitDesktopUpdate } catch {} });
__vite_ssr_exportName__("DesktopTelemetryCancelDesktopUpdate", () => { try { return DesktopTelemetryCancelDesktopUpdate } catch {} });
__vite_ssr_exportName__("DesktopTelemetryControlMessage", () => { try { return DesktopTelemetryControlMessage } catch {} });
__vite_ssr_exportName__("ResourceTelemetryProcess", () => { try { return ResourceTelemetryProcess } catch {} });
__vite_ssr_exportName__("ResourceTelemetryAggregate", () => { try { return ResourceTelemetryAggregate } catch {} });
__vite_ssr_exportName__("ResourceTelemetryGroups", () => { try { return ResourceTelemetryGroups } catch {} });
__vite_ssr_exportName__("ResourceTelemetrySourceHealth", () => { try { return ResourceTelemetrySourceHealth } catch {} });
__vite_ssr_exportName__("ResourceTelemetryHealth", () => { try { return ResourceTelemetryHealth } catch {} });
__vite_ssr_exportName__("ResourceAttributionEntry", () => { try { return ResourceAttributionEntry } catch {} });
__vite_ssr_exportName__("ResourceAttributionSnapshot", () => { try { return ResourceAttributionSnapshot } catch {} });
__vite_ssr_exportName__("ResourceTelemetrySnapshot", () => { try { return ResourceTelemetrySnapshot } catch {} });
__vite_ssr_exportName__("ResourceTelemetryHistoryInput", () => { try { return ResourceTelemetryHistoryInput } catch {} });
__vite_ssr_exportName__("ResourceTelemetryHistoryBucket", () => { try { return ResourceTelemetryHistoryBucket } catch {} });
__vite_ssr_exportName__("ResourceTelemetryProcessSummary", () => { try { return ResourceTelemetryProcessSummary } catch {} });
__vite_ssr_exportName__("ResourceTelemetryHistory", () => { try { return ResourceTelemetryHistory } catch {} });
__vite_ssr_exportName__("ResourceTelemetryRetryResult", () => { try { return ResourceTelemetryRetryResult } catch {} });
const __vite_ssr_import_0__ = await __vite_ssr_import__("/@fs/home/ubuntu/wt/pr-24263/node_modules/.pnpm/effect@4.0.5/node_modules/effect/dist/Schema.js");
const __vite_ssr_import_1__ = await __vite_ssr_import__("/@fs/home/ubuntu/wt/pr-24263/packages/contracts/src/baseSchemas.ts", {"importedNames":["NonNegativeInt","PositiveInt","TrimmedNonEmptyString"]});
const __vite_ssr_import_2__ = await __vite_ssr_import__("/@fs/home/ubuntu/wt/pr-24263/packages/contracts/src/background.ts", {"importedNames":["HostPowerSnapshot"]});
const __vite_ssr_import_3__ = await __vite_ssr_import__("/@fs/home/ubuntu/wt/pr-24263/packages/contracts/src/ipc.ts", {"importedNames":["DesktopUpdateStateSchema"]});




const RESOURCE_MONITOR_PROTOCOL_VERSION = 3;
const HostResourcesSnapshot = __vite_ssr_import_0__.Struct({
	sampledAt: __vite_ssr_import_1__.NonNegativeInt,
	cpuUtilization: __vite_ssr_import_0__.NullOr(__vite_ssr_import_0__.Number.check(__vite_ssr_import_0__.isBetween({
		minimum: 0,
		maximum: 1
	}))),
	cpuCount: __vite_ssr_import_1__.NonNegativeInt,
	availableMemoryBytes: __vite_ssr_import_1__.NonNegativeInt,
	totalMemoryBytes: __vite_ssr_import_1__.NonNegativeInt
});
const ResourceTelemetryIoSemantics = __vite_ssr_import_0__.Literals([
	"storage",
	"logical",
	"all-io",
	"unavailable"
]);
const ResourceTelemetryProcessCategory = __vite_ssr_import_0__.Literals([
	"server",
	"server-child",
	"provider-root",
	"terminal-root",
	"electron-main",
	"electron-renderer",
	"electron-gpu",
	"electron-utility",
	"resource-monitor",
	"unknown-t3"
]);
const ResourceTelemetrySourceStatus = __vite_ssr_import_0__.Literals([
	"starting",
	"healthy",
	"degraded",
	"unavailable",
	"stopped"
]);
const ResourceTelemetryProcessIdentity = __vite_ssr_import_0__.Struct({
	pid: __vite_ssr_import_1__.PositiveInt,
	startTimeMs: __vite_ssr_import_1__.NonNegativeInt
});
const ResourceMonitorExternalProcess = __vite_ssr_import_0__.Struct({
	pid: __vite_ssr_import_1__.PositiveInt,
	startTimeMs: __vite_ssr_import_0__.optionalKey((0,__vite_ssr_import_1__.NonNegativeInt))
});
const ResourceMonitorCapabilities = __vite_ssr_import_0__.Struct({
	cumulativeCpuTime: __vite_ssr_import_0__.Boolean,
	currentCpuPercent: __vite_ssr_import_0__.Boolean,
	residentMemory: __vite_ssr_import_0__.Boolean,
	virtualMemory: __vite_ssr_import_0__.Boolean,
	ioBytes: __vite_ssr_import_0__.Boolean,
	processStartTime: __vite_ssr_import_0__.Boolean,
	processTree: __vite_ssr_import_0__.Boolean
});
const ResourceMonitorProcessSample = __vite_ssr_import_0__.Struct({
	pid: __vite_ssr_import_1__.PositiveInt,
	ppid: __vite_ssr_import_1__.NonNegativeInt,
	startTimeMs: __vite_ssr_import_1__.NonNegativeInt,
	runTimeMs: __vite_ssr_import_1__.NonNegativeInt,
	name: __vite_ssr_import_0__.String,
	command: __vite_ssr_import_0__.String,
	status: __vite_ssr_import_0__.String,
	cpuPercent: __vite_ssr_import_0__.Number,
	cpuTimeMs: __vite_ssr_import_1__.NonNegativeInt,
	residentBytes: __vite_ssr_import_1__.NonNegativeInt,
	virtualBytes: __vite_ssr_import_1__.NonNegativeInt,
	ioReadBytes: __vite_ssr_import_1__.NonNegativeInt,
	ioWriteBytes: __vite_ssr_import_1__.NonNegativeInt,
	ioSemantics: __vite_ssr_import_0__.Literals(["storage", "all-io"])
});
const ResourceMonitorConfigureCommand = __vite_ssr_import_0__.Struct({
	version: __vite_ssr_import_0__.Literal(RESOURCE_MONITOR_PROTOCOL_VERSION),
	type: __vite_ssr_import_0__.Literal("configure"),
	rootPid: __vite_ssr_import_1__.PositiveInt,
	sampleIntervalMs: __vite_ssr_import_1__.NonNegativeInt,
	externalProcesses: __vite_ssr_import_0__.Array(ResourceMonitorExternalProcess)
});
const ResourceMonitorSetExternalProcessesCommand = __vite_ssr_import_0__.Struct({
	version: __vite_ssr_import_0__.Literal(RESOURCE_MONITOR_PROTOCOL_VERSION),
	type: __vite_ssr_import_0__.Literal("setExternalProcesses"),
	processes: __vite_ssr_import_0__.Array(ResourceMonitorExternalProcess)
});
const ResourceMonitorSampleNowCommand = __vite_ssr_import_0__.Struct({
	version: __vite_ssr_import_0__.Literal(RESOURCE_MONITOR_PROTOCOL_VERSION),
	type: __vite_ssr_import_0__.Literal("sampleNow"),
	requestId: __vite_ssr_import_1__.TrimmedNonEmptyString
});
const ResourceMonitorProcessTableCommand = __vite_ssr_import_0__.Struct({
	version: __vite_ssr_import_0__.Literal(RESOURCE_MONITOR_PROTOCOL_VERSION),
	type: __vite_ssr_import_0__.Literal("processTable"),
	requestId: __vite_ssr_import_1__.TrimmedNonEmptyString
});
const ResourceMonitorSetSampleIntervalCommand = __vite_ssr_import_0__.Struct({
	version: __vite_ssr_import_0__.Literal(RESOURCE_MONITOR_PROTOCOL_VERSION),
	type: __vite_ssr_import_0__.Literal("setSampleInterval"),
	sampleIntervalMs: __vite_ssr_import_1__.NonNegativeInt
});
const ResourceMonitorSetStreamingCommand = __vite_ssr_import_0__.Struct({
	version: __vite_ssr_import_0__.Literal(RESOURCE_MONITOR_PROTOCOL_VERSION),
	type: __vite_ssr_import_0__.Literal("setStreaming"),
	enabled: __vite_ssr_import_0__.Boolean
});
const ResourceMonitorReadHistoryCommand = __vite_ssr_import_0__.Struct({
	version: __vite_ssr_import_0__.Literal(RESOURCE_MONITOR_PROTOCOL_VERSION),
	type: __vite_ssr_import_0__.Literal("readHistory"),
	requestId: __vite_ssr_import_1__.TrimmedNonEmptyString,
	windowMs: __vite_ssr_import_1__.NonNegativeInt
});
const ResourceMonitorShutdownCommand = __vite_ssr_import_0__.Struct({
	version: __vite_ssr_import_0__.Literal(RESOURCE_MONITOR_PROTOCOL_VERSION),
	type: __vite_ssr_import_0__.Literal("shutdown")
});
const ResourceMonitorCommand = __vite_ssr_import_0__.Union([
	ResourceMonitorConfigureCommand,
	ResourceMonitorSetExternalProcessesCommand,
	ResourceMonitorSetSampleIntervalCommand,
	ResourceMonitorSetStreamingCommand,
	ResourceMonitorSampleNowCommand,
	ResourceMonitorProcessTableCommand,
	ResourceMonitorReadHistoryCommand,
	ResourceMonitorShutdownCommand
]);
const ResourceMonitorHelloEvent = __vite_ssr_import_0__.Struct({
	version: __vite_ssr_import_0__.Literal(RESOURCE_MONITOR_PROTOCOL_VERSION),
	type: __vite_ssr_import_0__.Literal("hello"),
	sidecarVersion: __vite_ssr_import_1__.TrimmedNonEmptyString,
	sidecarPid: __vite_ssr_import_1__.PositiveInt,
	platform: __vite_ssr_import_1__.TrimmedNonEmptyString,
	arch: __vite_ssr_import_1__.TrimmedNonEmptyString,
	capabilities: ResourceMonitorCapabilities
});
const ResourceMonitorSnapshotEvent = __vite_ssr_import_0__.Struct({
	version: __vite_ssr_import_0__.Literal(RESOURCE_MONITOR_PROTOCOL_VERSION),
	type: __vite_ssr_import_0__.Literal("snapshot"),
	sequence: __vite_ssr_import_1__.NonNegativeInt,
	sampledAtUnixMs: __vite_ssr_import_1__.NonNegativeInt,
	collectionDurationMicros: __vite_ssr_import_1__.NonNegativeInt,
	scannedProcessCount: __vite_ssr_import_1__.NonNegativeInt,
	retainedProcessCount: __vite_ssr_import_1__.NonNegativeInt,
	inaccessibleProcessCount: __vite_ssr_import_1__.NonNegativeInt,
	requestId: __vite_ssr_import_0__.optionalKey((0,__vite_ssr_import_1__.TrimmedNonEmptyString)),
	externalProcesses: __vite_ssr_import_0__.optionalKey(__vite_ssr_import_0__.Array(ResourceMonitorExternalProcess)),
	processes: __vite_ssr_import_0__.Array(ResourceMonitorProcessSample)
});
const ResourceMonitorProcessTableEntry = __vite_ssr_import_0__.Struct({
	pid: __vite_ssr_import_1__.PositiveInt,
	ppid: __vite_ssr_import_1__.NonNegativeInt,
	name: __vite_ssr_import_0__.String
});
const ResourceMonitorProcessTableEvent = __vite_ssr_import_0__.Struct({
	version: __vite_ssr_import_0__.Literal(RESOURCE_MONITOR_PROTOCOL_VERSION),
	type: __vite_ssr_import_0__.Literal("processTable"),
	requestId: __vite_ssr_import_1__.TrimmedNonEmptyString,
	processes: __vite_ssr_import_0__.Array(ResourceMonitorProcessTableEntry)
});
const ResourceMonitorHistoryChunkEvent = __vite_ssr_import_0__.Struct({
	version: __vite_ssr_import_0__.Literal(RESOURCE_MONITOR_PROTOCOL_VERSION),
	type: __vite_ssr_import_0__.Literal("historyChunk"),
	requestId: __vite_ssr_import_1__.TrimmedNonEmptyString,
	done: __vite_ssr_import_0__.Boolean,
	snapshots: __vite_ssr_import_0__.Array(ResourceMonitorSnapshotEvent)
});
const ResourceMonitorErrorEvent = __vite_ssr_import_0__.Struct({
	version: __vite_ssr_import_0__.Literal(RESOURCE_MONITOR_PROTOCOL_VERSION),
	type: __vite_ssr_import_0__.Literal("error"),
	code: __vite_ssr_import_1__.TrimmedNonEmptyString,
	message: __vite_ssr_import_1__.TrimmedNonEmptyString,
	recoverable: __vite_ssr_import_0__.Boolean
});
const ResourceMonitorEvent = __vite_ssr_import_0__.Union([
	ResourceMonitorHelloEvent,
	ResourceMonitorSnapshotEvent,
	ResourceMonitorProcessTableEvent,
	ResourceMonitorHistoryChunkEvent,
	ResourceMonitorErrorEvent
]);
const DesktopElectronProcessType = __vite_ssr_import_0__.Literals([
	"Browser",
	"Tab",
	"Utility",
	"Zygote",
	"Sandbox helper",
	"GPU",
	"Pepper Plugin",
	"Pepper Plugin Broker",
	"Unknown"
]);
const DesktopElectronProcessMetric = __vite_ssr_import_0__.Struct({
	pid: __vite_ssr_import_1__.PositiveInt,
	creationTimeMs: __vite_ssr_import_1__.NonNegativeInt,
	type: DesktopElectronProcessType,
	name: __vite_ssr_import_0__.optionalKey(__vite_ssr_import_0__.String),
	serviceName: __vite_ssr_import_0__.optionalKey(__vite_ssr_import_0__.String),
	cpuPercent: __vite_ssr_import_0__.Number,
	cumulativeCpuSeconds: __vite_ssr_import_0__.optionalKey(__vite_ssr_import_0__.Number),
	idleWakeupsPerSecond: __vite_ssr_import_0__.Number,
	workingSetBytes: __vite_ssr_import_1__.NonNegativeInt,
	peakWorkingSetBytes: __vite_ssr_import_1__.NonNegativeInt
});
const DesktopHostPowerSnapshot = __vite_ssr_import_0__.Struct({
	...__vite_ssr_import_2__.HostPowerSnapshot.fields,
	updatedAt: __vite_ssr_import_0__.DateTimeUtcFromString
});
const DesktopHostTelemetrySnapshot = __vite_ssr_import_0__.Struct({
	version: __vite_ssr_import_0__.Literal(1),
	type: __vite_ssr_import_0__.Literal("desktopTelemetry"),
	sequence: __vite_ssr_import_1__.NonNegativeInt,
	sampledAtUnixMs: __vite_ssr_import_1__.NonNegativeInt,
	electronPid: __vite_ssr_import_1__.PositiveInt,
	power: DesktopHostPowerSnapshot,
	speedLimitPercent: __vite_ssr_import_0__.OptionFromNullOr(__vite_ssr_import_0__.Number),
	electronProcesses: __vite_ssr_import_0__.Array(DesktopElectronProcessMetric)
});
const DesktopHostTelemetryHello = __vite_ssr_import_0__.Struct({
	version: __vite_ssr_import_0__.Literal(1),
	type: __vite_ssr_import_0__.Literal("desktopTelemetryHello"),
	electronPid: __vite_ssr_import_1__.PositiveInt
});
const DesktopUpdateRemoteOutcome = __vite_ssr_import_0__.Literals([
	"ready-to-install",
	"up-to-date",
	"failed"
]);
const DesktopUpdateStatusReport = __vite_ssr_import_0__.Struct({
	version: __vite_ssr_import_0__.Literal(1),
	type: __vite_ssr_import_0__.Literal("desktopUpdateStatus"),
	requestId: __vite_ssr_import_0__.optionalKey((0,__vite_ssr_import_1__.TrimmedNonEmptyString)),
	outcome: __vite_ssr_import_0__.optionalKey(DesktopUpdateRemoteOutcome),
	reason: __vite_ssr_import_0__.optionalKey((0,__vite_ssr_import_1__.TrimmedNonEmptyString)),
	state: __vite_ssr_import_3__.DesktopUpdateStateSchema
});
const DesktopHostTelemetryMessage = __vite_ssr_import_0__.Union([
	DesktopHostTelemetryHello,
	DesktopHostTelemetrySnapshot,
	DesktopUpdateStatusReport
]);
const DesktopTelemetrySetDiagnosticsDemand = __vite_ssr_import_0__.Struct({
	version: __vite_ssr_import_0__.Literal(1),
	type: __vite_ssr_import_0__.Literal("setDiagnosticsDemand"),
	enabled: __vite_ssr_import_0__.Boolean
});
const DesktopTelemetrySetHostPowerIntervals = __vite_ssr_import_0__.Struct({
	version: __vite_ssr_import_0__.Literal(1),
	type: __vite_ssr_import_0__.Literal("setHostPowerIntervals"),
	activeIntervalMs: __vite_ssr_import_1__.PositiveInt,
	idleIntervalMs: __vite_ssr_import_1__.PositiveInt
});
/** Runs check/download/quit-and-install without local confirmation; the remote RPC click supplies consent. */
const DesktopTelemetryRequestDesktopUpdate = __vite_ssr_import_0__.Struct({
	version: __vite_ssr_import_0__.Literal(1),
	type: __vite_ssr_import_0__.Literal("requestDesktopUpdate"),
	requestId: __vite_ssr_import_1__.TrimmedNonEmptyString
});
const DesktopTelemetryCommitDesktopUpdate = __vite_ssr_import_0__.Struct({
	version: __vite_ssr_import_0__.Literal(1),
	type: __vite_ssr_import_0__.Literal("commitDesktopUpdate"),
	requestId: __vite_ssr_import_1__.TrimmedNonEmptyString
});
const DesktopTelemetryCancelDesktopUpdate = __vite_ssr_import_0__.Struct({
	version: __vite_ssr_import_0__.Literal(1),
	type: __vite_ssr_import_0__.Literal("cancelDesktopUpdate"),
	requestId: __vite_ssr_import_1__.TrimmedNonEmptyString
});
const DesktopTelemetryControlMessage = __vite_ssr_import_0__.Union([
	DesktopTelemetrySetDiagnosticsDemand,
	DesktopTelemetrySetHostPowerIntervals,
	DesktopTelemetryRequestDesktopUpdate,
	DesktopTelemetryCommitDesktopUpdate,
	DesktopTelemetryCancelDesktopUpdate
]);
const ResourceTelemetryProcess = __vite_ssr_import_0__.Struct({
	identity: ResourceTelemetryProcessIdentity,
	ppid: __vite_ssr_import_1__.NonNegativeInt,
	childPids: __vite_ssr_import_0__.Array((0,__vite_ssr_import_1__.PositiveInt)),
	depth: __vite_ssr_import_1__.NonNegativeInt,
	name: __vite_ssr_import_0__.String,
	command: __vite_ssr_import_0__.String,
	status: __vite_ssr_import_0__.String,
	category: ResourceTelemetryProcessCategory,
	electronType: __vite_ssr_import_0__.optionalKey(DesktopElectronProcessType),
	electronServiceName: __vite_ssr_import_0__.optionalKey(__vite_ssr_import_0__.String),
	cpuPercent: __vite_ssr_import_0__.Number,
	cpuTimeMs: __vite_ssr_import_1__.NonNegativeInt,
	residentBytes: __vite_ssr_import_1__.NonNegativeInt,
	peakResidentBytes: __vite_ssr_import_1__.NonNegativeInt,
	virtualBytes: __vite_ssr_import_1__.NonNegativeInt,
	ioReadBytes: __vite_ssr_import_1__.NonNegativeInt,
	ioWriteBytes: __vite_ssr_import_1__.NonNegativeInt,
	ioReadBytesPerSecond: __vite_ssr_import_0__.Number,
	ioWriteBytesPerSecond: __vite_ssr_import_0__.Number,
	ioSemantics: ResourceTelemetryIoSemantics,
	idleWakeupsPerSecond: __vite_ssr_import_0__.optionalKey(__vite_ssr_import_0__.Number),
	runTimeMs: __vite_ssr_import_1__.NonNegativeInt,
	firstSeenAt: __vite_ssr_import_0__.DateTimeUtc,
	lastSeenAt: __vite_ssr_import_0__.DateTimeUtc
});
const ResourceTelemetryAggregate = __vite_ssr_import_0__.Struct({
	processCount: __vite_ssr_import_1__.NonNegativeInt,
	currentCpuPercent: __vite_ssr_import_0__.Number,
	cpuTimeMs: __vite_ssr_import_1__.NonNegativeInt,
	currentRssBytes: __vite_ssr_import_1__.NonNegativeInt,
	peakRssBytes: __vite_ssr_import_1__.NonNegativeInt,
	ioReadBytes: __vite_ssr_import_1__.NonNegativeInt,
	ioWriteBytes: __vite_ssr_import_1__.NonNegativeInt,
	ioReadBytesPerSecond: __vite_ssr_import_0__.Number,
	ioWriteBytesPerSecond: __vite_ssr_import_0__.Number,
	processStarts: __vite_ssr_import_1__.NonNegativeInt,
	processExits: __vite_ssr_import_1__.NonNegativeInt
});
const ResourceTelemetryGroups = __vite_ssr_import_0__.Struct({
	backend: ResourceTelemetryAggregate,
	electron: ResourceTelemetryAggregate,
	monitor: ResourceTelemetryAggregate,
	allT3: ResourceTelemetryAggregate
});
const ResourceTelemetrySourceHealth = __vite_ssr_import_0__.Struct({
	status: ResourceTelemetrySourceStatus,
	lastSampleAt: __vite_ssr_import_0__.Option(__vite_ssr_import_0__.DateTimeUtc),
	lastError: __vite_ssr_import_0__.Option((0,__vite_ssr_import_1__.TrimmedNonEmptyString))
});
const ResourceTelemetryHealth = __vite_ssr_import_0__.Struct({
	native: ResourceTelemetrySourceHealth,
	desktop: ResourceTelemetrySourceHealth,
	sidecarVersion: __vite_ssr_import_0__.Option((0,__vite_ssr_import_1__.TrimmedNonEmptyString)),
	sidecarPid: __vite_ssr_import_0__.Option((0,__vite_ssr_import_1__.PositiveInt)),
	restartCount: __vite_ssr_import_1__.NonNegativeInt,
	collectionDurationMicros: __vite_ssr_import_1__.NonNegativeInt,
	scannedProcessCount: __vite_ssr_import_1__.NonNegativeInt,
	retainedProcessCount: __vite_ssr_import_1__.NonNegativeInt,
	inaccessibleProcessCount: __vite_ssr_import_1__.NonNegativeInt
});
const ResourceAttributionEntry = __vite_ssr_import_0__.Struct({
	component: __vite_ssr_import_1__.TrimmedNonEmptyString,
	operation: __vite_ssr_import_1__.TrimmedNonEmptyString,
	logicalReadBytes: __vite_ssr_import_1__.NonNegativeInt,
	logicalWriteBytes: __vite_ssr_import_1__.NonNegativeInt,
	count: __vite_ssr_import_1__.NonNegativeInt,
	durationMs: __vite_ssr_import_1__.NonNegativeInt
});
const ResourceAttributionSnapshot = __vite_ssr_import_0__.Struct({
	readAt: __vite_ssr_import_0__.DateTimeUtc,
	entries: __vite_ssr_import_0__.Array(ResourceAttributionEntry)
});
const ResourceTelemetrySnapshot = __vite_ssr_import_0__.Struct({
	readAt: __vite_ssr_import_0__.DateTimeUtc,
	sampleIntervalMs: __vite_ssr_import_1__.NonNegativeInt,
	processes: __vite_ssr_import_0__.Array(ResourceTelemetryProcess),
	groups: ResourceTelemetryGroups,
	power: __vite_ssr_import_2__.HostPowerSnapshot,
	speedLimitPercent: __vite_ssr_import_0__.Option(__vite_ssr_import_0__.Number),
	attribution: ResourceAttributionSnapshot,
	health: ResourceTelemetryHealth
});
const ResourceTelemetryHistoryInput = __vite_ssr_import_0__.Struct({
	windowMs: __vite_ssr_import_1__.NonNegativeInt,
	bucketMs: __vite_ssr_import_1__.NonNegativeInt
});
const ResourceTelemetryHistoryBucket = __vite_ssr_import_0__.Struct({
	startedAt: __vite_ssr_import_0__.DateTimeUtc,
	endedAt: __vite_ssr_import_0__.DateTimeUtc,
	avgCpuPercent: __vite_ssr_import_0__.Number,
	maxCpuPercent: __vite_ssr_import_0__.Number,
	maxRssBytes: __vite_ssr_import_1__.NonNegativeInt,
	ioReadBytes: __vite_ssr_import_1__.NonNegativeInt,
	ioWriteBytes: __vite_ssr_import_1__.NonNegativeInt,
	maxProcessCount: __vite_ssr_import_1__.NonNegativeInt
});
const ResourceTelemetryProcessSummary = __vite_ssr_import_0__.Struct({
	identity: ResourceTelemetryProcessIdentity,
	ppid: __vite_ssr_import_1__.NonNegativeInt,
	depth: __vite_ssr_import_1__.NonNegativeInt,
	name: __vite_ssr_import_0__.String,
	command: __vite_ssr_import_0__.String,
	category: ResourceTelemetryProcessCategory,
	firstSeenAt: __vite_ssr_import_0__.DateTimeUtc,
	lastSeenAt: __vite_ssr_import_0__.DateTimeUtc,
	currentCpuPercent: __vite_ssr_import_0__.Number,
	avgCpuPercent: __vite_ssr_import_0__.Number,
	maxCpuPercent: __vite_ssr_import_0__.Number,
	cpuTimeMs: __vite_ssr_import_1__.NonNegativeInt,
	currentRssBytes: __vite_ssr_import_1__.NonNegativeInt,
	peakRssBytes: __vite_ssr_import_1__.NonNegativeInt,
	ioReadBytes: __vite_ssr_import_1__.NonNegativeInt,
	ioWriteBytes: __vite_ssr_import_1__.NonNegativeInt,
	ioSemantics: ResourceTelemetryIoSemantics,
	sampleCount: __vite_ssr_import_1__.NonNegativeInt
});
const ResourceTelemetryHistory = __vite_ssr_import_0__.Struct({
	readAt: __vite_ssr_import_0__.DateTimeUtc,
	windowMs: __vite_ssr_import_1__.NonNegativeInt,
	bucketMs: __vite_ssr_import_1__.NonNegativeInt,
	sampleIntervalMs: __vite_ssr_import_1__.NonNegativeInt,
	retainedSampleCount: __vite_ssr_import_1__.NonNegativeInt,
	buckets: __vite_ssr_import_0__.Array(ResourceTelemetryHistoryBucket),
	topProcesses: __vite_ssr_import_0__.Array(ResourceTelemetryProcessSummary),
	health: ResourceTelemetryHealth
});
const ResourceTelemetryRetryResult = __vite_ssr_import_0__.Struct({
	accepted: __vite_ssr_import_0__.Boolean,
	snapshot: ResourceTelemetrySnapshot
});
//# sourceMappingSource=vite-generated
//# sourceMappingURL=data:application/json;base64,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YUFBYSxzQkFBTztDQUNwQixZQUFZLHNCQUFPO0NBQ25CLG1CQUFtQixzQkFBTztDQUMxQixlQUFlLHNCQUFPO0NBQ3RCLGVBQWUsc0JBQU87Q0FDdEIsV0FBVztDQUNYLGlCQUFpQjtDQUNqQixjQUFjO0NBQ2QsYUFBYTtDQUNiLGNBQWM7Q0FDZCxhQUFhO0NBQ2IsYUFBYTtBQUNmLENBQUM7QUFHTSxNQUFNLDJCQUEyQixzQkFBTyxPQUFPO0NBQ3BELFFBQVEsc0JBQU87Q0FDZixVQUFVO0NBQ1YsVUFBVTtDQUNWLGtCQUFrQjtDQUNsQixxQkFBcUI7Q0FDckIsU0FBUyxzQkFBTyxNQUFNLDhCQUE4QjtDQUNwRCxjQUFjLHNCQUFPLE1BQU0sK0JBQStCO0NBQzFELFFBQVE7QUFDVixDQUFDO0FBR00sTUFBTSwrQkFBK0Isc0JBQU8sT0FBTztDQUN4RCxVQUFVLHNCQUFPO0NBQ2pCLFVBQVU7QUFDWixDQUFDIiwibmFtZXMiOltdLCJpZ25vcmVMaXN0IjpbXSwic291cmNlcyI6WyJyZXNvdXJjZVRlbGVtZXRyeS50cyJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgKiBhcyBTY2hlbWEgZnJvbSBcImVmZmVjdC9TY2hlbWFcIjtcblxuaW1wb3J0IHsgTm9uTmVnYXRpdmVJbnQsIFBvc2l0aXZlSW50LCBUcmltbWVkTm9uRW1wdHlTdHJpbmcgfSBmcm9tIFwiLi9iYXNlU2NoZW1hcy50c1wiO1xuaW1wb3J0IHsgSG9zdFBvd2VyU25hcHNob3QgfSBmcm9tIFwiLi9iYWNrZ3JvdW5kLnRzXCI7XG5pbXBvcnQgeyBEZXNrdG9wVXBkYXRlU3RhdGVTY2hlbWEgfSBmcm9tIFwiLi9pcGMudHNcIjtcblxuZXhwb3J0IGNvbnN0IFJFU09VUkNFX01PTklUT1JfUFJPVE9DT0xfVkVSU0lPTiA9IDMgYXMgY29uc3Q7XG5cbmV4cG9ydCBjb25zdCBIb3N0UmVzb3VyY2VzU25hcHNob3QgPSBTY2hlbWEuU3RydWN0KHtcbiAgc2FtcGxlZEF0OiBOb25OZWdhdGl2ZUludCxcbiAgY3B1VXRpbGl6YXRpb246IFNjaGVtYS5OdWxsT3IoU2NoZW1hLk51bWJlci5jaGVjayhTY2hlbWEuaXNCZXR3ZWVuKHsgbWluaW11bTogMCwgbWF4aW11bTogMSB9KSkpLFxuICBjcHVDb3VudDogTm9uTmVnYXRpdmVJbnQsXG4gIGF2YWlsYWJsZU1lbW9yeUJ5dGVzOiBOb25OZWdhdGl2ZUludCxcbiAgdG90YWxNZW1vcnlCeXRlczogTm9uTmVnYXRpdmVJbnQsXG59KTtcbmV4cG9ydCB0eXBlIEhvc3RSZXNvdXJjZXNTbmFwc2hvdCA9IHR5cGVvZiBIb3N0UmVzb3VyY2VzU25hcHNob3QuVHlwZTtcblxuZXhwb3J0IGNvbnN0IFJlc291cmNlVGVsZW1ldHJ5SW9TZW1hbnRpY3MgPSBTY2hlbWEuTGl0ZXJhbHMoW1xuICBcInN0b3JhZ2VcIixcbiAgXCJsb2dpY2FsXCIsXG4gIFwiYWxsLWlvXCIsXG4gIFwidW5hdmFpbGFibGVcIixcbl0pO1xuZXhwb3J0IHR5cGUgUmVzb3VyY2VUZWxlbWV0cnlJb1NlbWFudGljcyA9IHR5cGVvZiBSZXNvdXJjZVRlbGVtZXRyeUlvU2VtYW50aWNzLlR5cGU7XG5cbmV4cG9ydCBjb25zdCBSZXNvdXJjZVRlbGVtZXRyeVByb2Nlc3NDYXRlZ29yeSA9IFNjaGVtYS5MaXRlcmFscyhbXG4gIFwic2VydmVyXCIsXG4gIFwic2VydmVyLWNoaWxkXCIsXG4gIFwicHJvdmlkZXItcm9vdFwiLFxuICBcInRlcm1pbmFsLXJvb3RcIixcbiAgXCJlbGVjdHJvbi1tYWluXCIsXG4gIFwiZWxlY3Ryb24tcmVuZGVyZXJcIixcbiAgXCJlbGVjdHJvbi1ncHVcIixcbiAgXCJlbGVjdHJvbi11dGlsaXR5XCIsXG4gIFwicmVzb3VyY2UtbW9uaXRvclwiLFxuICBcInVua25vd24tdDNcIixcbl0pO1xuZXhwb3J0IHR5cGUgUmVzb3VyY2VUZWxlbWV0cnlQcm9jZXNzQ2F0ZWdvcnkgPSB0eXBlb2YgUmVzb3VyY2VUZWxlbWV0cnlQcm9jZXNzQ2F0ZWdvcnkuVHlwZTtcblxuZXhwb3J0IGNvbnN0IFJlc291cmNlVGVsZW1ldHJ5U291cmNlU3RhdHVzID0gU2NoZW1hLkxpdGVyYWxzKFtcbiAgXCJzdGFydGluZ1wiLFxuICBcImhlYWx0aHlcIixcbiAgXCJkZWdyYWRlZFwiLFxuICBcInVuYXZhaWxhYmxlXCIsXG4gIFwic3RvcHBlZFwiLFxuXSk7XG5leHBvcnQgdHlwZSBSZXNvdXJjZVRlbGVtZXRyeVNvdXJjZVN0YXR1cyA9IHR5cGVvZiBSZXNvdXJjZVRlbGVtZXRyeVNvdXJjZVN0YXR1cy5UeXBlO1xuXG5leHBvcnQgY29uc3QgUmVzb3VyY2VUZWxlbWV0cnlQcm9jZXNzSWRlbnRpdHkgPSBTY2hlbWEuU3RydWN0KHtcbiAgcGlkOiBQb3NpdGl2ZUludCxcbiAgc3RhcnRUaW1lTXM6IE5vbk5lZ2F0aXZlSW50LFxufSk7XG5leHBvcnQgdHlwZSBSZXNvdXJjZVRlbGVtZXRyeVByb2Nlc3NJZGVudGl0eSA9IHR5cGVvZiBSZXNvdXJjZVRlbGVtZXRyeVByb2Nlc3NJZGVudGl0eS5UeXBlO1xuXG5leHBvcnQgY29uc3QgUmVzb3VyY2VNb25pdG9yRXh0ZXJuYWxQcm9jZXNzID0gU2NoZW1hLlN0cnVjdCh7XG4gIHBpZDogUG9zaXRpdmVJbnQsXG4gIHN0YXJ0VGltZU1zOiBTY2hlbWEub3B0aW9uYWxLZXkoTm9uTmVnYXRpdmVJbnQpLFxufSk7XG5leHBvcnQgdHlwZSBSZXNvdXJjZU1vbml0b3JFeHRlcm5hbFByb2Nlc3MgPSB0eXBlb2YgUmVzb3VyY2VNb25pdG9yRXh0ZXJuYWxQcm9jZXNzLlR5cGU7XG5cbmV4cG9ydCBjb25zdCBSZXNvdXJjZU1vbml0b3JDYXBhYmlsaXRpZXMgPSBTY2hlbWEuU3RydWN0KHtcbiAgY3VtdWxhdGl2ZUNwdVRpbWU6IFNjaGVtYS5Cb29sZWFuLFxuICBjdXJyZW50Q3B1UGVyY2VudDogU2NoZW1hLkJvb2xlYW4sXG4gIHJlc2lkZW50TWVtb3J5OiBTY2hlbWEuQm9vbGVhbixcbiAgdmlydHVhbE1lbW9yeTogU2NoZW1hLkJvb2xlYW4sXG4gIGlvQnl0ZXM6IFNjaGVtYS5Cb29sZWFuLFxuICBwcm9jZXNzU3RhcnRUaW1lOiBTY2hlbWEuQm9vbGVhbixcbiAgcHJvY2Vzc1RyZWU6IFNjaGVtYS5Cb29sZWFuLFxufSk7XG5leHBvcnQgdHlwZSBSZXNvdXJjZU1vbml0b3JDYXBhYmlsaXRpZXMgPSB0eXBlb2YgUmVzb3VyY2VNb25pdG9yQ2FwYWJpbGl0aWVzLlR5cGU7XG5cbmV4cG9ydCBjb25zdCBSZXNvdXJjZU1vbml0b3JQcm9jZXNzU2FtcGxlID0gU2NoZW1hLlN0cnVjdCh7XG4gIHBpZDogUG9zaXRpdmVJbnQsXG4gIHBwaWQ6IE5vbk5lZ2F0aXZlSW50LFxuICBzdGFydFRpbWVNczogTm9uTmVnYXRpdmVJbnQsXG4gIHJ1blRpbWVNczogTm9uTmVnYXRpdmVJbnQsXG4gIG5hbWU6IFNjaGVtYS5TdHJpbmcsXG4gIGNvbW1hbmQ6IFNjaGVtYS5TdHJpbmcsXG4gIHN0YXR1czogU2NoZW1hLlN0cmluZyxcbiAgY3B1UGVyY2VudDogU2NoZW1hLk51bWJlcixcbiAgY3B1VGltZU1zOiBOb25OZWdhdGl2ZUludCxcbiAgcmVzaWRlbnRCeXRlczogTm9uTmVnYXRpdmVJbnQsXG4gIHZpcnR1YWxCeXRlczogTm9uTmVnYXRpdmVJbnQsXG4gIGlvUmVhZEJ5dGVzOiBOb25OZWdhdGl2ZUludCxcbiAgaW9Xcml0ZUJ5dGVzOiBOb25OZWdhdGl2ZUludCxcbiAgaW9TZW1hbnRpY3M6IFNjaGVtYS5MaXRlcmFscyhbXCJzdG9yYWdlXCIsIFwiYWxsLWlvXCJdKSxcbn0pO1xuZXhwb3J0IHR5cGUgUmVzb3VyY2VNb25pdG9yUHJvY2Vzc1NhbXBsZSA9IHR5cGVvZiBSZXNvdXJjZU1vbml0b3JQcm9jZXNzU2FtcGxlLlR5cGU7XG5cbmV4cG9ydCBjb25zdCBSZXNvdXJjZU1vbml0b3JDb25maWd1cmVDb21tYW5kID0gU2NoZW1hLlN0cnVjdCh7XG4gIHZlcnNpb246IFNjaGVtYS5MaXRlcmFsKFJFU09VUkNFX01PTklUT1JfUFJPVE9DT0xfVkVSU0lPTiksXG4gIHR5cGU6IFNjaGVtYS5MaXRlcmFsKFwiY29uZmlndXJlXCIpLFxuICByb290UGlkOiBQb3NpdGl2ZUludCxcbiAgc2FtcGxlSW50ZXJ2YWxNczogTm9uTmVnYXRpdmVJbnQsXG4gIGV4dGVybmFsUHJvY2Vzc2VzOiBTY2hlbWEuQXJyYXkoUmVzb3VyY2VNb25pdG9yRXh0ZXJuYWxQcm9jZXNzKSxcbn0pO1xuZXhwb3J0IHR5cGUgUmVzb3VyY2VNb25pdG9yQ29uZmlndXJlQ29tbWFuZCA9IHR5cGVvZiBSZXNvdXJjZU1vbml0b3JDb25maWd1cmVDb21tYW5kLlR5cGU7XG5cbmV4cG9ydCBjb25zdCBSZXNvdXJjZU1vbml0b3JTZXRFeHRlcm5hbFByb2Nlc3Nlc0NvbW1hbmQgPSBTY2hlbWEuU3RydWN0KHtcbiAgdmVyc2lvbjogU2NoZW1hLkxpdGVyYWwoUkVTT1VSQ0VfTU9OSVRPUl9QUk9UT0NPTF9WRVJTSU9OKSxcbiAgdHlwZTogU2NoZW1hLkxpdGVyYWwoXCJzZXRFeHRlcm5hbFByb2Nlc3Nlc1wiKSxcbiAgcHJvY2Vzc2VzOiBTY2hlbWEuQXJyYXkoUmVzb3VyY2VNb25pdG9yRXh0ZXJuYWxQcm9jZXNzKSxcbn0pO1xuZXhwb3J0IHR5cGUgUmVzb3VyY2VNb25pdG9yU2V0RXh0ZXJuYWxQcm9jZXNzZXNDb21tYW5kID1cbiAgdHlwZW9mIFJlc291cmNlTW9uaXRvclNldEV4dGVybmFsUHJvY2Vzc2VzQ29tbWFuZC5UeXBlO1xuXG5leHBvcnQgY29uc3QgUmVzb3VyY2VNb25pdG9yU2FtcGxlTm93Q29tbWFuZCA9IFNjaGVtYS5TdHJ1Y3Qoe1xuICB2ZXJzaW9uOiBTY2hlbWEuTGl0ZXJhbChSRVNPVVJDRV9NT05JVE9SX1BST1RPQ09MX1ZFUlNJT04pLFxuICB0eXBlOiBTY2hlbWEuTGl0ZXJhbChcInNhbXBsZU5vd1wiKSxcbiAgcmVxdWVzdElkOiBUcmltbWVkTm9uRW1wdHlTdHJpbmcsXG59KTtcbmV4cG9ydCB0eXBlIFJlc291cmNlTW9uaXRvclNhbXBsZU5vd0NvbW1hbmQgPSB0eXBlb2YgUmVzb3VyY2VNb25pdG9yU2FtcGxlTm93Q29tbWFuZC5UeXBlO1xuXG5leHBvcnQgY29uc3QgUmVzb3VyY2VNb25pdG9yUHJvY2Vzc1RhYmxlQ29tbWFuZCA9IFNjaGVtYS5TdHJ1Y3Qoe1xuICB2ZXJzaW9uOiBTY2hlbWEuTGl0ZXJhbChSRVNPVVJDRV9NT05JVE9SX1BST1RPQ09MX1ZFUlNJT04pLFxuICB0eXBlOiBTY2hlbWEuTGl0ZXJhbChcInByb2Nlc3NUYWJsZVwiKSxcbiAgcmVxdWVzdElkOiBUcmltbWVkTm9uRW1wdHlTdHJpbmcsXG59KTtcbmV4cG9ydCB0eXBlIFJlc291cmNlTW9uaXRvclByb2Nlc3NUYWJsZUNvbW1hbmQgPSB0eXBlb2YgUmVzb3VyY2VNb25pdG9yUHJvY2Vzc1RhYmxlQ29tbWFuZC5UeXBlO1xuXG5leHBvcnQgY29uc3QgUmVzb3VyY2VNb25pdG9yU2V0U2FtcGxlSW50ZXJ2YWxDb21tYW5kID0gU2NoZW1hLlN0cnVjdCh7XG4gIHZlcnNpb246IFNjaGVtYS5MaXRlcmFsKFJFU09VUkNFX01PTklUT1JfUFJPVE9DT0xfVkVSU0lPTiksXG4gIHR5cGU6IFNjaGVtYS5MaXRlcmFsKFwic2V0U2FtcGxlSW50ZXJ2YWxcIiksXG4gIHNhbXBsZUludGVydmFsTXM6IE5vbk5lZ2F0aXZlSW50LFxufSk7XG5leHBvcnQgdHlwZSBSZXNvdXJjZU1vbml0b3JTZXRTYW1wbGVJbnRlcnZhbENvbW1hbmQgPVxuICB0eXBlb2YgUmVzb3VyY2VNb25pdG9yU2V0U2FtcGxlSW50ZXJ2YWxDb21tYW5kLlR5cGU7XG5cbmV4cG9ydCBjb25zdCBSZXNvdXJjZU1vbml0b3JTZXRTdHJlYW1pbmdDb21tYW5kID0gU2NoZW1hLlN0cnVjdCh7XG4gIHZlcnNpb246IFNjaGVtYS5MaXRlcmFsKFJFU09VUkNFX01PTklUT1JfUFJPVE9DT0xfVkVSU0lPTiksXG4gIHR5cGU6IFNjaGVtYS5MaXRlcmFsKFwic2V0U3RyZWFtaW5nXCIpLFxuICBlbmFibGVkOiBTY2hlbWEuQm9vbGVhbixcbn0pO1xuZXhwb3J0IHR5cGUgUmVzb3VyY2VNb25pdG9yU2V0U3RyZWFtaW5nQ29tbWFuZCA9IHR5cGVvZiBSZXNvdXJjZU1vbml0b3JTZXRTdHJlYW1pbmdDb21tYW5kLlR5cGU7XG5cbmV4cG9ydCBjb25zdCBSZXNvdXJjZU1vbml0b3JSZWFkSGlzdG9yeUNvbW1hbmQgPSBTY2hlbWEuU3RydWN0KHtcbiAgdmVyc2lvbjogU2NoZW1hLkxpdGVyYWwoUkVTT1VSQ0VfTU9OSVRPUl9QUk9UT0NPTF9WRVJTSU9OKSxcbiAgdHlwZTogU2NoZW1hLkxpdGVyYWwoXCJyZWFkSGlzdG9yeVwiKSxcbiAgcmVxdWVzdElkOiBUcmltbWVkTm9uRW1wdHlTdHJpbmcsXG4gIHdpbmRvd01zOiBOb25OZWdhdGl2ZUludCxcbn0pO1xuZXhwb3J0IHR5cGUgUmVzb3VyY2VNb25pdG9yUmVhZEhpc3RvcnlDb21tYW5kID0gdHlwZW9mIFJlc291cmNlTW9uaXRvclJlYWRIaXN0b3J5Q29tbWFuZC5UeXBlO1xuXG5leHBvcnQgY29uc3QgUmVzb3VyY2VNb25pdG9yU2h1dGRvd25Db21tYW5kID0gU2NoZW1hLlN0cnVjdCh7XG4gIHZlcnNpb246IFNjaGVtYS5MaXRlcmFsKFJFU09VUkNFX01PTklUT1JfUFJPVE9DT0xfVkVSU0lPTiksXG4gIHR5cGU6IFNjaGVtYS5MaXRlcmFsKFwic2h1dGRvd25cIiksXG59KTtcbmV4cG9ydCB0eXBlIFJlc291cmNlTW9uaXRvclNodXRkb3duQ29tbWFuZCA9IHR5cGVvZiBSZXNvdXJjZU1vbml0b3JTaHV0ZG93bkNvbW1hbmQuVHlwZTtcblxuZXhwb3J0IGNvbnN0IFJlc291cmNlTW9uaXRvckNvbW1hbmQgPSBTY2hlbWEuVW5pb24oW1xuICBSZXNvdXJjZU1vbml0b3JDb25maWd1cmVDb21tYW5kLFxuICBSZXNvdXJjZU1vbml0b3JTZXRFeHRlcm5hbFByb2Nlc3Nlc0NvbW1hbmQsXG4gIFJlc291cmNlTW9uaXRvclNldFNhbXBsZUludGVydmFsQ29tbWFuZCxcbiAgUmVzb3VyY2VNb25pdG9yU2V0U3RyZWFtaW5nQ29tbWFuZCxcbiAgUmVzb3VyY2VNb25pdG9yU2FtcGxlTm93Q29tbWFuZCxcbiAgUmVzb3VyY2VNb25pdG9yUHJvY2Vzc1RhYmxlQ29tbWFuZCxcbiAgUmVzb3VyY2VNb25pdG9yUmVhZEhpc3RvcnlDb21tYW5kLFxuICBSZXNvdXJjZU1vbml0b3JTaHV0ZG93bkNvbW1hbmQsXG5dKTtcbmV4cG9ydCB0eXBlIFJlc291cmNlTW9uaXRvckNvbW1hbmQgPSB0eXBlb2YgUmVzb3VyY2VNb25pdG9yQ29tbWFuZC5UeXBlO1xuXG5leHBvcnQgY29uc3QgUmVzb3VyY2VNb25pdG9ySGVsbG9FdmVudCA9IFNjaGVtYS5TdHJ1Y3Qoe1xuICB2ZXJzaW9uOiBTY2hlbWEuTGl0ZXJhbChSRVNPVVJDRV9NT05JVE9SX1BST1RPQ09MX1ZFUlNJT04pLFxuICB0eXBlOiBTY2hlbWEuTGl0ZXJhbChcImhlbGxvXCIpLFxuICBzaWRlY2FyVmVyc2lvbjogVHJpbW1lZE5vbkVtcHR5U3RyaW5nLFxuICBzaWRlY2FyUGlkOiBQb3NpdGl2ZUludCxcbiAgcGxhdGZvcm06IFRyaW1tZWROb25FbXB0eVN0cmluZyxcbiAgYXJjaDogVHJpbW1lZE5vbkVtcHR5U3RyaW5nLFxuICBjYXBhYmlsaXRpZXM6IFJlc291cmNlTW9uaXRvckNhcGFiaWxpdGllcyxcbn0pO1xuZXhwb3J0IHR5cGUgUmVzb3VyY2VNb25pdG9ySGVsbG9FdmVudCA9IHR5cGVvZiBSZXNvdXJjZU1vbml0b3JIZWxsb0V2ZW50LlR5cGU7XG5cbmV4cG9ydCBjb25zdCBSZXNvdXJjZU1vbml0b3JTbmFwc2hvdEV2ZW50ID0gU2NoZW1hLlN0cnVjdCh7XG4gIHZlcnNpb246IFNjaGVtYS5MaXRlcmFsKFJFU09VUkNFX01PTklUT1JfUFJPVE9DT0xfVkVSU0lPTiksXG4gIHR5cGU6IFNjaGVtYS5MaXRlcmFsKFwic25hcHNob3RcIiksXG4gIHNlcXVlbmNlOiBOb25OZWdhdGl2ZUludCxcbiAgc2FtcGxlZEF0VW5peE1zOiBOb25OZWdhdGl2ZUludCxcbiAgY29sbGVjdGlvbkR1cmF0aW9uTWljcm9zOiBOb25OZWdhdGl2ZUludCxcbiAgc2Nhbm5lZFByb2Nlc3NDb3VudDogTm9uTmVnYXRpdmVJbnQsXG4gIHJldGFpbmVkUHJvY2Vzc0NvdW50OiBOb25OZWdhdGl2ZUludCxcbiAgaW5hY2Nlc3NpYmxlUHJvY2Vzc0NvdW50OiBOb25OZWdhdGl2ZUludCxcbiAgcmVxdWVzdElkOiBTY2hlbWEub3B0aW9uYWxLZXkoVHJpbW1lZE5vbkVtcHR5U3RyaW5nKSxcbiAgZXh0ZXJuYWxQcm9jZXNzZXM6IFNjaGVtYS5vcHRpb25hbEtleShTY2hlbWEuQXJyYXkoUmVzb3VyY2VNb25pdG9yRXh0ZXJuYWxQcm9jZXNzKSksXG4gIHByb2Nlc3NlczogU2NoZW1hLkFycmF5KFJlc291cmNlTW9uaXRvclByb2Nlc3NTYW1wbGUpLFxufSk7XG5leHBvcnQgdHlwZSBSZXNvdXJjZU1vbml0b3JTbmFwc2hvdEV2ZW50ID0gdHlwZW9mIFJlc291cmNlTW9uaXRvclNuYXBzaG90RXZlbnQuVHlwZTtcblxuZXhwb3J0IGNvbnN0IFJlc291cmNlTW9uaXRvclByb2Nlc3NUYWJsZUVudHJ5ID0gU2NoZW1hLlN0cnVjdCh7XG4gIHBpZDogUG9zaXRpdmVJbnQsXG4gIHBwaWQ6IE5vbk5lZ2F0aXZlSW50LFxuICBuYW1lOiBTY2hlbWEuU3RyaW5nLFxufSk7XG5leHBvcnQgdHlwZSBSZXNvdXJjZU1vbml0b3JQcm9jZXNzVGFibGVFbnRyeSA9IHR5cGVvZiBSZXNvdXJjZU1vbml0b3JQcm9jZXNzVGFibGVFbnRyeS5UeXBlO1xuXG5leHBvcnQgY29uc3QgUmVzb3VyY2VNb25pdG9yUHJvY2Vzc1RhYmxlRXZlbnQgPSBTY2hlbWEuU3RydWN0KHtcbiAgdmVyc2lvbjogU2NoZW1hLkxpdGVyYWwoUkVTT1VSQ0VfTU9OSVRPUl9QUk9UT0NPTF9WRVJTSU9OKSxcbiAgdHlwZTogU2NoZW1hLkxpdGVyYWwoXCJwcm9jZXNzVGFibGVcIiksXG4gIHJlcXVlc3RJZDogVHJpbW1lZE5vbkVtcHR5U3RyaW5nLFxuICBwcm9jZXNzZXM6IFNjaGVtYS5BcnJheShSZXNvdXJjZU1vbml0b3JQcm9jZXNzVGFibGVFbnRyeSksXG59KTtcbmV4cG9ydCB0eXBlIFJlc291cmNlTW9uaXRvclByb2Nlc3NUYWJsZUV2ZW50ID0gdHlwZW9mIFJlc291cmNlTW9uaXRvclByb2Nlc3NUYWJsZUV2ZW50LlR5cGU7XG5cbmV4cG9ydCBjb25zdCBSZXNvdXJjZU1vbml0b3JIaXN0b3J5Q2h1bmtFdmVudCA9IFNjaGVtYS5TdHJ1Y3Qoe1xuICB2ZXJzaW9uOiBTY2hlbWEuTGl0ZXJhbChSRVNPVVJDRV9NT05JVE9SX1BST1RPQ09MX1ZFUlNJT04pLFxuICB0eXBlOiBTY2hlbWEuTGl0ZXJhbChcImhpc3RvcnlDaHVua1wiKSxcbiAgcmVxdWVzdElkOiBUcmltbWVkTm9uRW1wdHlTdHJpbmcsXG4gIGRvbmU6IFNjaGVtYS5Cb29sZWFuLFxuICBzbmFwc2hvdHM6IFNjaGVtYS5BcnJheShSZXNvdXJjZU1vbml0b3JTbmFwc2hvdEV2ZW50KSxcbn0pO1xuZXhwb3J0IHR5cGUgUmVzb3VyY2VNb25pdG9ySGlzdG9yeUNodW5rRXZlbnQgPSB0eXBlb2YgUmVzb3VyY2VNb25pdG9ySGlzdG9yeUNodW5rRXZlbnQuVHlwZTtcblxuZXhwb3J0IGNvbnN0IFJlc291cmNlTW9uaXRvckVycm9yRXZlbnQgPSBTY2hlbWEuU3RydWN0KHtcbiAgdmVyc2lvbjogU2NoZW1hLkxpdGVyYWwoUkVTT1VSQ0VfTU9OSVRPUl9QUk9UT0NPTF9WRVJTSU9OKSxcbiAgdHlwZTogU2NoZW1hLkxpdGVyYWwoXCJlcnJvclwiKSxcbiAgY29kZTogVHJpbW1lZE5vbkVtcHR5U3RyaW5nLFxuICBtZXNzYWdlOiBUcmltbWVkTm9uRW1wdHlTdHJpbmcsXG4gIHJlY292ZXJhYmxlOiBTY2hlbWEuQm9vbGVhbixcbn0pO1xuZXhwb3J0IHR5cGUgUmVzb3VyY2VNb25pdG9yRXJyb3JFdmVudCA9IHR5cGVvZiBSZXNvdXJjZU1vbml0b3JFcnJvckV2ZW50LlR5cGU7XG5cbmV4cG9ydCBjb25zdCBSZXNvdXJjZU1vbml0b3JFdmVudCA9IFNjaGVtYS5VbmlvbihbXG4gIFJlc291cmNlTW9uaXRvckhlbGxvRXZlbnQsXG4gIFJlc291cmNlTW9uaXRvclNuYXBzaG90RXZlbnQsXG4gIFJlc291cmNlTW9uaXRvclByb2Nlc3NUYWJsZUV2ZW50LFxuICBSZXNvdXJjZU1vbml0b3JIaXN0b3J5Q2h1bmtFdmVudCxcbiAgUmVzb3VyY2VNb25pdG9yRXJyb3JFdmVudCxcbl0pO1xuZXhwb3J0IHR5cGUgUmVzb3VyY2VNb25pdG9yRXZlbnQgPSB0eXBlb2YgUmVzb3VyY2VNb25pdG9yRXZlbnQuVHlwZTtcblxuZXhwb3J0IGNvbnN0IERlc2t0b3BFbGVjdHJvblByb2Nlc3NUeXBlID0gU2NoZW1hLkxpdGVyYWxzKFtcbiAgXCJCcm93c2VyXCIsXG4gIFwiVGFiXCIsXG4gIFwiVXRpbGl0eVwiLFxuICBcIlp5Z290ZVwiLFxuICBcIlNhbmRib3ggaGVscGVyXCIsXG4gIFwiR1BVXCIsXG4gIFwiUGVwcGVyIFBsdWdpblwiLFxuICBcIlBlcHBlciBQbHVnaW4gQnJva2VyXCIsXG4gIFwiVW5rbm93blwiLFxuXSk7XG5leHBvcnQgdHlwZSBEZXNrdG9wRWxlY3Ryb25Qcm9jZXNzVHlwZSA9IHR5cGVvZiBEZXNrdG9wRWxlY3Ryb25Qcm9jZXNzVHlwZS5UeXBlO1xuXG5leHBvcnQgY29uc3QgRGVza3RvcEVsZWN0cm9uUHJvY2Vzc01ldHJpYyA9IFNjaGVtYS5TdHJ1Y3Qoe1xuICBwaWQ6IFBvc2l0aXZlSW50LFxuICBjcmVhdGlvblRpbWVNczogTm9uTmVnYXRpdmVJbnQsXG4gIHR5cGU6IERlc2t0b3BFbGVjdHJvblByb2Nlc3NUeXBlLFxuICBuYW1lOiBTY2hlbWEub3B0aW9uYWxLZXkoU2NoZW1hLlN0cmluZyksXG4gIHNlcnZpY2VOYW1lOiBTY2hlbWEub3B0aW9uYWxLZXkoU2NoZW1hLlN0cmluZyksXG4gIGNwdVBlcmNlbnQ6IFNjaGVtYS5OdW1iZXIsXG4gIGN1bXVsYXRpdmVDcHVTZWNvbmRzOiBTY2hlbWEub3B0aW9uYWxLZXkoU2NoZW1hLk51bWJlciksXG4gIGlkbGVXYWtldXBzUGVyU2Vjb25kOiBTY2hlbWEuTnVtYmVyLFxuICB3b3JraW5nU2V0Qnl0ZXM6IE5vbk5lZ2F0aXZlSW50LFxuICBwZWFrV29ya2luZ1NldEJ5dGVzOiBOb25OZWdhdGl2ZUludCxcbn0pO1xuZXhwb3J0IHR5cGUgRGVza3RvcEVsZWN0cm9uUHJvY2Vzc01ldHJpYyA9IHR5cGVvZiBEZXNrdG9wRWxlY3Ryb25Qcm9jZXNzTWV0cmljLlR5cGU7XG5cbmNvbnN0IERlc2t0b3BIb3N0UG93ZXJTbmFwc2hvdCA9IFNjaGVtYS5TdHJ1Y3Qoe1xuICAuLi5Ib3N0UG93ZXJTbmFwc2hvdC5maWVsZHMsXG4gIHVwZGF0ZWRBdDogU2NoZW1hLkRhdGVUaW1lVXRjRnJvbVN0cmluZyxcbn0pO1xuXG5leHBvcnQgY29uc3QgRGVza3RvcEhvc3RUZWxlbWV0cnlTbmFwc2hvdCA9IFNjaGVtYS5TdHJ1Y3Qoe1xuICB2ZXJzaW9uOiBTY2hlbWEuTGl0ZXJhbCgxKSxcbiAgdHlwZTogU2NoZW1hLkxpdGVyYWwoXCJkZXNrdG9wVGVsZW1ldHJ5XCIpLFxuICBzZXF1ZW5jZTogTm9uTmVnYXRpdmVJbnQsXG4gIHNhbXBsZWRBdFVuaXhNczogTm9uTmVnYXRpdmVJbnQsXG4gIGVsZWN0cm9uUGlkOiBQb3NpdGl2ZUludCxcbiAgcG93ZXI6IERlc2t0b3BIb3N0UG93ZXJTbmFwc2hvdCxcbiAgc3BlZWRMaW1pdFBlcmNlbnQ6IFNjaGVtYS5PcHRpb25Gcm9tTnVsbE9yKFNjaGVtYS5OdW1iZXIpLFxuICBlbGVjdHJvblByb2Nlc3NlczogU2NoZW1hLkFycmF5KERlc2t0b3BFbGVjdHJvblByb2Nlc3NNZXRyaWMpLFxufSk7XG5leHBvcnQgdHlwZSBEZXNrdG9wSG9zdFRlbGVtZXRyeVNuYXBzaG90ID0gdHlwZW9mIERlc2t0b3BIb3N0VGVsZW1ldHJ5U25hcHNob3QuVHlwZTtcblxuZXhwb3J0IGNvbnN0IERlc2t0b3BIb3N0VGVsZW1ldHJ5SGVsbG8gPSBTY2hlbWEuU3RydWN0KHtcbiAgdmVyc2lvbjogU2NoZW1hLkxpdGVyYWwoMSksXG4gIHR5cGU6IFNjaGVtYS5MaXRlcmFsKFwiZGVza3RvcFRlbGVtZXRyeUhlbGxvXCIpLFxuICBlbGVjdHJvblBpZDogUG9zaXRpdmVJbnQsXG59KTtcbmV4cG9ydCB0eXBlIERlc2t0b3BIb3N0VGVsZW1ldHJ5SGVsbG8gPSB0eXBlb2YgRGVza3RvcEhvc3RUZWxlbWV0cnlIZWxsby5UeXBlO1xuXG5leHBvcnQgY29uc3QgRGVza3RvcFVwZGF0ZVJlbW90ZU91dGNvbWUgPSBTY2hlbWEuTGl0ZXJhbHMoW1xuICBcInJlYWR5LXRvLWluc3RhbGxcIixcbiAgXCJ1cC10by1kYXRlXCIsXG4gIFwiZmFpbGVkXCIsXG5dKTtcbmV4cG9ydCB0eXBlIERlc2t0b3BVcGRhdGVSZW1vdGVPdXRjb21lID0gdHlwZW9mIERlc2t0b3BVcGRhdGVSZW1vdGVPdXRjb21lLlR5cGU7XG5cbmV4cG9ydCBjb25zdCBEZXNrdG9wVXBkYXRlU3RhdHVzUmVwb3J0ID0gU2NoZW1hLlN0cnVjdCh7XG4gIHZlcnNpb246IFNjaGVtYS5MaXRlcmFsKDEpLFxuICB0eXBlOiBTY2hlbWEuTGl0ZXJhbChcImRlc2t0b3BVcGRhdGVTdGF0dXNcIiksXG4gIHJlcXVlc3RJZDogU2NoZW1hLm9wdGlvbmFsS2V5KFRyaW1tZWROb25FbXB0eVN0cmluZyksXG4gIG91dGNvbWU6IFNjaGVtYS5vcHRpb25hbEtleShEZXNrdG9wVXBkYXRlUmVtb3RlT3V0Y29tZSksXG4gIHJlYXNvbjogU2NoZW1hLm9wdGlvbmFsS2V5KFRyaW1tZWROb25FbXB0eVN0cmluZyksXG4gIHN0YXRlOiBEZXNrdG9wVXBkYXRlU3RhdGVTY2hlbWEsXG59KTtcbmV4cG9ydCB0eXBlIERlc2t0b3BVcGRhdGVTdGF0dXNSZXBvcnQgPSB0eXBlb2YgRGVza3RvcFVwZGF0ZVN0YXR1c1JlcG9ydC5UeXBlO1xuXG5leHBvcnQgY29uc3QgRGVza3RvcEhvc3RUZWxlbWV0cnlNZXNzYWdlID0gU2NoZW1hLlVuaW9uKFtcbiAgRGVza3RvcEhvc3RUZWxlbWV0cnlIZWxsbyxcbiAgRGVza3RvcEhvc3RUZWxlbWV0cnlTbmFwc2hvdCxcbiAgRGVza3RvcFVwZGF0ZVN0YXR1c1JlcG9ydCxcbl0pO1xuZXhwb3J0IHR5cGUgRGVza3RvcEhvc3RUZWxlbWV0cnlNZXNzYWdlID0gdHlwZW9mIERlc2t0b3BIb3N0VGVsZW1ldHJ5TWVzc2FnZS5UeXBlO1xuXG5leHBvcnQgY29uc3QgRGVza3RvcFRlbGVtZXRyeVNldERpYWdub3N0aWNzRGVtYW5kID0gU2NoZW1hLlN0cnVjdCh7XG4gIHZlcnNpb246IFNjaGVtYS5MaXRlcmFsKDEpLFxuICB0eXBlOiBTY2hlbWEuTGl0ZXJhbChcInNldERpYWdub3N0aWNzRGVtYW5kXCIpLFxuICBlbmFibGVkOiBTY2hlbWEuQm9vbGVhbixcbn0pO1xuZXhwb3J0IHR5cGUgRGVza3RvcFRlbGVtZXRyeVNldERpYWdub3N0aWNzRGVtYW5kID0gdHlwZW9mIERlc2t0b3BUZWxlbWV0cnlTZXREaWFnbm9zdGljc0RlbWFuZC5UeXBlO1xuXG5leHBvcnQgY29uc3QgRGVza3RvcFRlbGVtZXRyeVNldEhvc3RQb3dlckludGVydmFscyA9IFNjaGVtYS5TdHJ1Y3Qoe1xuICB2ZXJzaW9uOiBTY2hlbWEuTGl0ZXJhbCgxKSxcbiAgdHlwZTogU2NoZW1hLkxpdGVyYWwoXCJzZXRIb3N0UG93ZXJJbnRlcnZhbHNcIiksXG4gIGFjdGl2ZUludGVydmFsTXM6IFBvc2l0aXZlSW50LFxuICBpZGxlSW50ZXJ2YWxNczogUG9zaXRpdmVJbnQsXG59KTtcbmV4cG9ydCB0eXBlIERlc2t0b3BUZWxlbWV0cnlTZXRIb3N0UG93ZXJJbnRlcnZhbHMgPVxuICB0eXBlb2YgRGVza3RvcFRlbGVtZXRyeVNldEhvc3RQb3dlckludGVydmFscy5UeXBlO1xuXG4vKiogUnVucyBjaGVjay9kb3dubG9hZC9xdWl0LWFuZC1pbnN0YWxsIHdpdGhvdXQgbG9jYWwgY29uZmlybWF0aW9uOyB0aGUgcmVtb3RlIFJQQyBjbGljayBzdXBwbGllcyBjb25zZW50LiAqL1xuZXhwb3J0IGNvbnN0IERlc2t0b3BUZWxlbWV0cnlSZXF1ZXN0RGVza3RvcFVwZGF0ZSA9IFNjaGVtYS5TdHJ1Y3Qoe1xuICB2ZXJzaW9uOiBTY2hlbWEuTGl0ZXJhbCgxKSxcbiAgdHlwZTogU2NoZW1hLkxpdGVyYWwoXCJyZXF1ZXN0RGVza3RvcFVwZGF0ZVwiKSxcbiAgcmVxdWVzdElkOiBUcmltbWVkTm9uRW1wdHlTdHJpbmcsXG59KTtcbmV4cG9ydCB0eXBlIERlc2t0b3BUZWxlbWV0cnlSZXF1ZXN0RGVza3RvcFVwZGF0ZSA9IHR5cGVvZiBEZXNrdG9wVGVsZW1ldHJ5UmVxdWVzdERlc2t0b3BVcGRhdGUuVHlwZTtcblxuZXhwb3J0IGNvbnN0IERlc2t0b3BUZWxlbWV0cnlDb21taXREZXNrdG9wVXBkYXRlID0gU2NoZW1hLlN0cnVjdCh7XG4gIHZlcnNpb246IFNjaGVtYS5MaXRlcmFsKDEpLFxuICB0eXBlOiBTY2hlbWEuTGl0ZXJhbChcImNvbW1pdERlc2t0b3BVcGRhdGVcIiksXG4gIHJlcXVlc3RJZDogVHJpbW1lZE5vbkVtcHR5U3RyaW5nLFxufSk7XG5leHBvcnQgdHlwZSBEZXNrdG9wVGVsZW1ldHJ5Q29tbWl0RGVza3RvcFVwZGF0ZSA9IHR5cGVvZiBEZXNrdG9wVGVsZW1ldHJ5Q29tbWl0RGVza3RvcFVwZGF0ZS5UeXBlO1xuXG5leHBvcnQgY29uc3QgRGVza3RvcFRlbGVtZXRyeUNhbmNlbERlc2t0b3BVcGRhdGUgPSBTY2hlbWEuU3RydWN0KHtcbiAgdmVyc2lvbjogU2NoZW1hLkxpdGVyYWwoMSksXG4gIHR5cGU6IFNjaGVtYS5MaXRlcmFsKFwiY2FuY2VsRGVza3RvcFVwZGF0ZVwiKSxcbiAgcmVxdWVzdElkOiBUcmltbWVkTm9uRW1wdHlTdHJpbmcsXG59KTtcbmV4cG9ydCB0eXBlIERlc2t0b3BUZWxlbWV0cnlDYW5jZWxEZXNrdG9wVXBkYXRlID0gdHlwZW9mIERlc2t0b3BUZWxlbWV0cnlDYW5jZWxEZXNrdG9wVXBkYXRlLlR5cGU7XG5cbmV4cG9ydCBjb25zdCBEZXNrdG9wVGVsZW1ldHJ5Q29udHJvbE1lc3NhZ2UgPSBTY2hlbWEuVW5pb24oW1xuICBEZXNrdG9wVGVsZW1ldHJ5U2V0RGlhZ25vc3RpY3NEZW1hbmQsXG4gIERlc2t0b3BUZWxlbWV0cnlTZXRIb3N0UG93ZXJJbnRlcnZhbHMsXG4gIERlc2t0b3BUZWxlbWV0cnlSZXF1ZXN0RGVza3RvcFVwZGF0ZSxcbiAgRGVza3RvcFRlbGVtZXRyeUNvbW1pdERlc2t0b3BVcGRhdGUsXG4gIERlc2t0b3BUZWxlbWV0cnlDYW5jZWxEZXNrdG9wVXBkYXRlLFxuXSk7XG5leHBvcnQgdHlwZSBEZXNrdG9wVGVsZW1ldHJ5Q29udHJvbE1lc3NhZ2UgPSB0eXBlb2YgRGVza3RvcFRlbGVtZXRyeUNvbnRyb2xNZXNzYWdlLlR5cGU7XG5cbmV4cG9ydCBjb25zdCBSZXNvdXJjZVRlbGVtZXRyeVByb2Nlc3MgPSBTY2hlbWEuU3RydWN0KHtcbiAgaWRlbnRpdHk6IFJlc291cmNlVGVsZW1ldHJ5UHJvY2Vzc0lkZW50aXR5LFxuICBwcGlkOiBOb25OZWdhdGl2ZUludCxcbiAgY2hpbGRQaWRzOiBTY2hlbWEuQXJyYXkoUG9zaXRpdmVJbnQpLFxuICBkZXB0aDogTm9uTmVnYXRpdmVJbnQsXG4gIG5hbWU6IFNjaGVtYS5TdHJpbmcsXG4gIGNvbW1hbmQ6IFNjaGVtYS5TdHJpbmcsXG4gIHN0YXR1czogU2NoZW1hLlN0cmluZyxcbiAgY2F0ZWdvcnk6IFJlc291cmNlVGVsZW1ldHJ5UHJvY2Vzc0NhdGVnb3J5LFxuICBlbGVjdHJvblR5cGU6IFNjaGVtYS5vcHRpb25hbEtleShEZXNrdG9wRWxlY3Ryb25Qcm9jZXNzVHlwZSksXG4gIGVsZWN0cm9uU2VydmljZU5hbWU6IFNjaGVtYS5vcHRpb25hbEtleShTY2hlbWEuU3RyaW5nKSxcbiAgY3B1UGVyY2VudDogU2NoZW1hLk51bWJlcixcbiAgY3B1VGltZU1zOiBOb25OZWdhdGl2ZUludCxcbiAgcmVzaWRlbnRCeXRlczogTm9uTmVnYXRpdmVJbnQsXG4gIHBlYWtSZXNpZGVudEJ5dGVzOiBOb25OZWdhdGl2ZUludCxcbiAgdmlydHVhbEJ5dGVzOiBOb25OZWdhdGl2ZUludCxcbiAgaW9SZWFkQnl0ZXM6IE5vbk5lZ2F0aXZlSW50LFxuICBpb1dyaXRlQnl0ZXM6IE5vbk5lZ2F0aXZlSW50LFxuICBpb1JlYWRCeXRlc1BlclNlY29uZDogU2NoZW1hLk51bWJlcixcbiAgaW9Xcml0ZUJ5dGVzUGVyU2Vjb25kOiBTY2hlbWEuTnVtYmVyLFxuICBpb1NlbWFudGljczogUmVzb3VyY2VUZWxlbWV0cnlJb1NlbWFudGljcyxcbiAgaWRsZVdha2V1cHNQZXJTZWNvbmQ6IFNjaGVtYS5vcHRpb25hbEtleShTY2hlbWEuTnVtYmVyKSxcbiAgcnVuVGltZU1zOiBOb25OZWdhdGl2ZUludCxcbiAgZmlyc3RTZWVuQXQ6IFNjaGVtYS5EYXRlVGltZVV0YyxcbiAgbGFzdFNlZW5BdDogU2NoZW1hLkRhdGVUaW1lVXRjLFxufSk7XG5leHBvcnQgdHlwZSBSZXNvdXJjZVRlbGVtZXRyeVByb2Nlc3MgPSB0eXBlb2YgUmVzb3VyY2VUZWxlbWV0cnlQcm9jZXNzLlR5cGU7XG5cbmV4cG9ydCBjb25zdCBSZXNvdXJjZVRlbGVtZXRyeUFnZ3JlZ2F0ZSA9IFNjaGVtYS5TdHJ1Y3Qoe1xuICBwcm9jZXNzQ291bnQ6IE5vbk5lZ2F0aXZlSW50LFxuICBjdXJyZW50Q3B1UGVyY2VudDogU2NoZW1hLk51bWJlcixcbiAgY3B1VGltZU1zOiBOb25OZWdhdGl2ZUludCxcbiAgY3VycmVudFJzc0J5dGVzOiBOb25OZWdhdGl2ZUludCxcbiAgcGVha1Jzc0J5dGVzOiBOb25OZWdhdGl2ZUludCxcbiAgaW9SZWFkQnl0ZXM6IE5vbk5lZ2F0aXZlSW50LFxuICBpb1dyaXRlQnl0ZXM6IE5vbk5lZ2F0aXZlSW50LFxuICBpb1JlYWRCeXRlc1BlclNlY29uZDogU2NoZW1hLk51bWJlcixcbiAgaW9Xcml0ZUJ5dGVzUGVyU2Vjb25kOiBTY2hlbWEuTnVtYmVyLFxuICBwcm9jZXNzU3RhcnRzOiBOb25OZWdhdGl2ZUludCxcbiAgcHJvY2Vzc0V4aXRzOiBOb25OZWdhdGl2ZUludCxcbn0pO1xuZXhwb3J0IHR5cGUgUmVzb3VyY2VUZWxlbWV0cnlBZ2dyZWdhdGUgPSB0eXBlb2YgUmVzb3VyY2VUZWxlbWV0cnlBZ2dyZWdhdGUuVHlwZTtcblxuZXhwb3J0IGNvbnN0IFJlc291cmNlVGVsZW1ldHJ5R3JvdXBzID0gU2NoZW1hLlN0cnVjdCh7XG4gIGJhY2tlbmQ6IFJlc291cmNlVGVsZW1ldHJ5QWdncmVnYXRlLFxuICBlbGVjdHJvbjogUmVzb3VyY2VUZWxlbWV0cnlBZ2dyZWdhdGUsXG4gIG1vbml0b3I6IFJlc291cmNlVGVsZW1ldHJ5QWdncmVnYXRlLFxuICBhbGxUMzogUmVzb3VyY2VUZWxlbWV0cnlBZ2dyZWdhdGUsXG59KTtcbmV4cG9ydCB0eXBlIFJlc291cmNlVGVsZW1ldHJ5R3JvdXBzID0gdHlwZW9mIFJlc291cmNlVGVsZW1ldHJ5R3JvdXBzLlR5cGU7XG5cbmV4cG9ydCBjb25zdCBSZXNvdXJjZVRlbGVtZXRyeVNvdXJjZUhlYWx0aCA9IFNjaGVtYS5TdHJ1Y3Qoe1xuICBzdGF0dXM6IFJlc291cmNlVGVsZW1ldHJ5U291cmNlU3RhdHVzLFxuICBsYXN0U2FtcGxlQXQ6IFNjaGVtYS5PcHRpb24oU2NoZW1hLkRhdGVUaW1lVXRjKSxcbiAgbGFzdEVycm9yOiBTY2hlbWEuT3B0aW9uKFRyaW1tZWROb25FbXB0eVN0cmluZyksXG59KTtcbmV4cG9ydCB0eXBlIFJlc291cmNlVGVsZW1ldHJ5U291cmNlSGVhbHRoID0gdHlwZW9mIFJlc291cmNlVGVsZW1ldHJ5U291cmNlSGVhbHRoLlR5cGU7XG5cbmV4cG9ydCBjb25zdCBSZXNvdXJjZVRlbGVtZXRyeUhlYWx0aCA9IFNjaGVtYS5TdHJ1Y3Qoe1xuICBuYXRpdmU6IFJlc291cmNlVGVsZW1ldHJ5U291cmNlSGVhbHRoLFxuICBkZXNrdG9wOiBSZXNvdXJjZVRlbGVtZXRyeVNvdXJjZUhlYWx0aCxcbiAgc2lkZWNhclZlcnNpb246IFNjaGVtYS5PcHRpb24oVHJpbW1lZE5vbkVtcHR5U3RyaW5nKSxcbiAgc2lkZWNhclBpZDogU2NoZW1hLk9wdGlvbihQb3NpdGl2ZUludCksXG4gIHJlc3RhcnRDb3VudDogTm9uTmVnYXRpdmVJbnQsXG4gIGNvbGxlY3Rpb25EdXJhdGlvbk1pY3JvczogTm9uTmVnYXRpdmVJbnQsXG4gIHNjYW5uZWRQcm9jZXNzQ291bnQ6IE5vbk5lZ2F0aXZlSW50LFxuICByZXRhaW5lZFByb2Nlc3NDb3VudDogTm9uTmVnYXRpdmVJbnQsXG4gIGluYWNjZXNzaWJsZVByb2Nlc3NDb3VudDogTm9uTmVnYXRpdmVJbnQsXG59KTtcbmV4cG9ydCB0eXBlIFJlc291cmNlVGVsZW1ldHJ5SGVhbHRoID0gdHlwZW9mIFJlc291cmNlVGVsZW1ldHJ5SGVhbHRoLlR5cGU7XG5cbmV4cG9ydCBjb25zdCBSZXNvdXJjZUF0dHJpYnV0aW9uRW50cnkgPSBTY2hlbWEuU3RydWN0KHtcbiAgY29tcG9uZW50OiBUcmltbWVkTm9uRW1wdHlTdHJpbmcsXG4gIG9wZXJhdGlvbjogVHJpbW1lZE5vbkVtcHR5U3RyaW5nLFxuICBsb2dpY2FsUmVhZEJ5dGVzOiBOb25OZWdhdGl2ZUludCxcbiAgbG9naWNhbFdyaXRlQnl0ZXM6IE5vbk5lZ2F0aXZlSW50LFxuICBjb3VudDogTm9uTmVnYXRpdmVJbnQsXG4gIGR1cmF0aW9uTXM6IE5vbk5lZ2F0aXZlSW50LFxufSk7XG5leHBvcnQgdHlwZSBSZXNvdXJjZUF0dHJpYnV0aW9uRW50cnkgPSB0eXBlb2YgUmVzb3VyY2VBdHRyaWJ1dGlvbkVudHJ5LlR5cGU7XG5cbmV4cG9ydCBjb25zdCBSZXNvdXJjZUF0dHJpYnV0aW9uU25hcHNob3QgPSBTY2hlbWEuU3RydWN0KHtcbiAgcmVhZEF0OiBTY2hlbWEuRGF0ZVRpbWVVdGMsXG4gIGVudHJpZXM6IFNjaGVtYS5BcnJheShSZXNvdXJjZUF0dHJpYnV0aW9uRW50cnkpLFxufSk7XG5leHBvcnQgdHlwZSBSZXNvdXJjZUF0dHJpYnV0aW9uU25hcHNob3QgPSB0eXBlb2YgUmVzb3VyY2VBdHRyaWJ1dGlvblNuYXBzaG90LlR5cGU7XG5cbmV4cG9ydCBjb25zdCBSZXNvdXJjZVRlbGVtZXRyeVNuYXBzaG90ID0gU2NoZW1hLlN0cnVjdCh7XG4gIHJlYWRBdDogU2NoZW1hLkRhdGVUaW1lVXRjLFxuICBzYW1wbGVJbnRlcnZhbE1zOiBOb25OZWdhdGl2ZUludCxcbiAgcHJvY2Vzc2VzOiBTY2hlbWEuQXJyYXkoUmVzb3VyY2VUZWxlbWV0cnlQcm9jZXNzKSxcbiAgZ3JvdXBzOiBSZXNvdXJjZVRlbGVtZXRyeUdyb3VwcyxcbiAgcG93ZXI6IEhvc3RQb3dlclNuYXBzaG90LFxuICBzcGVlZExpbWl0UGVyY2VudDogU2NoZW1hLk9wdGlvbihTY2hlbWEuTnVtYmVyKSxcbiAgYXR0cmlidXRpb246IFJlc291cmNlQXR0cmlidXRpb25TbmFwc2hvdCxcbiAgaGVhbHRoOiBSZXNvdXJjZVRlbGVtZXRyeUhlYWx0aCxcbn0pO1xuZXhwb3J0IHR5cGUgUmVzb3VyY2VUZWxlbWV0cnlTbmFwc2hvdCA9IHR5cGVvZiBSZXNvdXJjZVRlbGVtZXRyeVNuYXBzaG90LlR5cGU7XG5cbmV4cG9ydCBjb25zdCBSZXNvdXJjZVRlbGVtZXRyeUhpc3RvcnlJbnB1dCA9IFNjaGVtYS5TdHJ1Y3Qoe1xuICB3aW5kb3dNczogTm9uTmVnYXRpdmVJbnQsXG4gIGJ1Y2tldE1zOiBOb25OZWdhdGl2ZUludCxcbn0pO1xuZXhwb3J0IHR5cGUgUmVzb3VyY2VUZWxlbWV0cnlIaXN0b3J5SW5wdXQgPSB0eXBlb2YgUmVzb3VyY2VUZWxlbWV0cnlIaXN0b3J5SW5wdXQuVHlwZTtcblxuZXhwb3J0IGNvbnN0IFJlc291cmNlVGVsZW1ldHJ5SGlzdG9yeUJ1Y2tldCA9IFNjaGVtYS5TdHJ1Y3Qoe1xuICBzdGFydGVkQXQ6IFNjaGVtYS5EYXRlVGltZVV0YyxcbiAgZW5kZWRBdDogU2NoZW1hLkRhdGVUaW1lVXRjLFxuICBhdmdDcHVQZXJjZW50OiBTY2hlbWEuTnVtYmVyLFxuICBtYXhDcHVQZXJjZW50OiBTY2hlbWEuTnVtYmVyLFxuICBtYXhSc3NCeXRlczogTm9uTmVnYXRpdmVJbnQsXG4gIGlvUmVhZEJ5dGVzOiBOb25OZWdhdGl2ZUludCxcbiAgaW9Xcml0ZUJ5dGVzOiBOb25OZWdhdGl2ZUludCxcbiAgbWF4UHJvY2Vzc0NvdW50OiBOb25OZWdhdGl2ZUludCxcbn0pO1xuZXhwb3J0IHR5cGUgUmVzb3VyY2VUZWxlbWV0cnlIaXN0b3J5QnVja2V0ID0gdHlwZW9mIFJlc291cmNlVGVsZW1ldHJ5SGlzdG9yeUJ1Y2tldC5UeXBlO1xuXG5leHBvcnQgY29uc3QgUmVzb3VyY2VUZWxlbWV0cnlQcm9jZXNzU3VtbWFyeSA9IFNjaGVtYS5TdHJ1Y3Qoe1xuICBpZGVudGl0eTogUmVzb3VyY2VUZWxlbWV0cnlQcm9jZXNzSWRlbnRpdHksXG4gIHBwaWQ6IE5vbk5lZ2F0aXZlSW50LFxuICBkZXB0aDogTm9uTmVnYXRpdmVJbnQsXG4gIG5hbWU6IFNjaGVtYS5TdHJpbmcsXG4gIGNvbW1hbmQ6IFNjaGVtYS5TdHJpbmcsXG4gIGNhdGVnb3J5OiBSZXNvdXJjZVRlbGVtZXRyeVByb2Nlc3NDYXRlZ29yeSxcbiAgZmlyc3RTZWVuQXQ6IFNjaGVtYS5EYXRlVGltZVV0YyxcbiAgbGFzdFNlZW5BdDogU2NoZW1hLkRhdGVUaW1lVXRjLFxuICBjdXJyZW50Q3B1UGVyY2VudDogU2NoZW1hLk51bWJlcixcbiAgYXZnQ3B1UGVyY2VudDogU2NoZW1hLk51bWJlcixcbiAgbWF4Q3B1UGVyY2VudDogU2NoZW1hLk51bWJlcixcbiAgY3B1VGltZU1zOiBOb25OZWdhdGl2ZUludCxcbiAgY3VycmVudFJzc0J5dGVzOiBOb25OZWdhdGl2ZUludCxcbiAgcGVha1Jzc0J5dGVzOiBOb25OZWdhdGl2ZUludCxcbiAgaW9SZWFkQnl0ZXM6IE5vbk5lZ2F0aXZlSW50LFxuICBpb1dyaXRlQnl0ZXM6IE5vbk5lZ2F0aXZlSW50LFxuICBpb1NlbWFudGljczogUmVzb3VyY2VUZWxlbWV0cnlJb1NlbWFudGljcyxcbiAgc2FtcGxlQ291bnQ6IE5vbk5lZ2F0aXZlSW50LFxufSk7XG5leHBvcnQgdHlwZSBSZXNvdXJjZVRlbGVtZXRyeVByb2Nlc3NTdW1tYXJ5ID0gdHlwZW9mIFJlc291cmNlVGVsZW1ldHJ5UHJvY2Vzc1N1bW1hcnkuVHlwZTtcblxuZXhwb3J0IGNvbnN0IFJlc291cmNlVGVsZW1ldHJ5SGlzdG9yeSA9IFNjaGVtYS5TdHJ1Y3Qoe1xuICByZWFkQXQ6IFNjaGVtYS5EYXRlVGltZVV0YyxcbiAgd2luZG93TXM6IE5vbk5lZ2F0aXZlSW50LFxuICBidWNrZXRNczogTm9uTmVnYXRpdmVJbnQsXG4gIHNhbXBsZUludGVydmFsTXM6IE5vbk5lZ2F0aXZlSW50LFxuICByZXRhaW5lZFNhbXBsZUNvdW50OiBOb25OZWdhdGl2ZUludCxcbiAgYnVja2V0czogU2NoZW1hLkFycmF5KFJlc291cmNlVGVsZW1ldHJ5SGlzdG9yeUJ1Y2tldCksXG4gIHRvcFByb2Nlc3NlczogU2NoZW1hLkFycmF5KFJlc291cmNlVGVsZW1ldHJ5UHJvY2Vzc1N1bW1hcnkpLFxuICBoZWFsdGg6IFJlc291cmNlVGVsZW1ldHJ5SGVhbHRoLFxufSk7XG5leHBvcnQgdHlwZSBSZXNvdXJjZVRlbGVtZXRyeUhpc3RvcnkgPSB0eXBlb2YgUmVzb3VyY2VUZWxlbWV0cnlIaXN0b3J5LlR5cGU7XG5cbmV4cG9ydCBjb25zdCBSZXNvdXJjZVRlbGVtZXRyeVJldHJ5UmVzdWx0ID0gU2NoZW1hLlN0cnVjdCh7XG4gIGFjY2VwdGVkOiBTY2hlbWEuQm9vbGVhbixcbiAgc25hcHNob3Q6IFJlc291cmNlVGVsZW1ldHJ5U25hcHNob3QsXG59KTtcbmV4cG9ydCB0eXBlIFJlc291cmNlVGVsZW1ldHJ5UmV0cnlSZXN1bHQgPSB0eXBlb2YgUmVzb3VyY2VUZWxlbWV0cnlSZXRyeVJlc3VsdC5UeXBlO1xuIl0sImZpbGUiOiIvQGZzL2hvbWUvdWJ1bnR1L3d0L3ByLTI0MjYzL3BhY2thZ2VzL2NvbnRyYWN0cy9zcmMvcmVzb3VyY2VUZWxlbWV0cnkudHMifQ==

//# vitestCache=W3siZmlsZSI6IjEiLCJpZCI6IjEiLCJ1cmwiOiIyIiwiaW1wb3J0cyI6IjMiLCJtYXBwaW5ncyI6ZmFsc2UsImRlcHMiOiI0IiwiZHluYW1pY0RlcHMiOiI1Iiwic3RhdGljTW9ja3MiOm51bGx9LCIvaG9tZS91YnVudHUvd3QvcHItMjQyNjMvcGFja2FnZXMvY29udHJhY3RzL3NyYy9yZXNvdXJjZVRlbGVtZXRyeS50cyIsIi9AZnMvaG9tZS91YnVudHUvd3QvcHItMjQyNjMvcGFja2FnZXMvY29udHJhY3RzL3NyYy9yZXNvdXJjZVRlbGVtZXRyeS50cyIseyJ1cmxzIjoiNiIsImlkcyI6IjcifSxbIjgiLCI5IiwiMTAiLCIxMSJdLFtdLFsiOCIsIjkiLCIxMCIsIjExIl0se30sIi9AZnMvaG9tZS91YnVudHUvd3QvcHItMjQyNjMvbm9kZV9tb2R1bGVzLy5wbnBtL2VmZmVjdEA0LjAuNS9ub2RlX21vZHVsZXMvZWZmZWN0L2Rpc3QvU2NoZW1hLmpzIiwiL0Bmcy9ob21lL3VidW50dS93dC9wci0yNDI2My9wYWNrYWdlcy9jb250cmFjdHMvc3JjL2Jhc2VTY2hlbWFzLnRzIiwiL0Bmcy9ob21lL3VidW50dS93dC9wci0yNDI2My9wYWNrYWdlcy9jb250cmFjdHMvc3JjL2JhY2tncm91bmQudHMiLCIvQGZzL2hvbWUvdWJ1bnR1L3d0L3ByLTI0MjYzL3BhY2thZ2VzL2NvbnRyYWN0cy9zcmMvaXBjLnRzIl0=