{
  "FleetLaneBlocked": "Berth assigned to {0}",
  "FleetNoFreeDock": "Awaiting a free working berth",
  "FleetDockWindowWait": "Awaiting stable base and fresh berth pose",
  "FleetRestoreProgress": "Restoring: {0}% / scheduling paused",
  "FleetDiagnostics": "{0} | {1} online / {2} registered / {3} stale\n{4} berths | {5} waiting | assignments {6}\n{7} pending / {8} total tasks\n",
  "FleetRunning": "RUNNING",
  "FleetPaused": "PAUSED",
  "FleetLaneFree": "free",
  "FleetDeparting": "departing",
  "FleetDocking": "docking",
  "FleetControllerMissing": "Fleet.Controller missing; cannot confirm berths",
  "FleetCargoMissing": "Fleet.CargoGroup has no local inventories",
  "FleetBerthsMissing": "No local berths in Fleet.DockGroup",
  "FleetDuplicateMiner": "Duplicate miner ID rejected: {0}",
  "FleetRegistrationLimit": "Fleet registration limit reached",
  "FleetLaneReleaseDeferred": "Berth release deferred: {0} still inside port",
  "FleetSurveyControllerRequired": "survey requires Fleet.Controller",
  "FleetUnloadBlocked": "{0}: unload blocked; base full/conveyor offline",
  "FleetLeaseClearEvidenceRequired": "Berth release needs fresh docked or clear evidence",
  "FleetUnknownMiner": "Unknown miner ID",
  "FleetCommands": "Fleet commands: mark, survey, start, pause, resume, clear-tasks (clear-all), clear-offline (remove-offline), return-all, return ID, release ID, rescan, diagnose",
  "FleetOfflineCleared": "Removed {0} offline miners; bores and berths remain reserved.",
  "FleetProtectedIdentity": "{0}: space reserved; ID restricted to original PB",
  "FleetWaitingSlotsExhausted": "Waiting slots full; registration blocked",
  "FleetUnknownOccupancyLimit": "16 jobs/64 holds full; verify old ships clear",
  "FleetTasksCleared": "Tasks/areas cleared; {0} must ACK cancellation and dock",
  "FleetAwaitCancellation": "{0} await cancel/dock ACK; others may work. Offline space protected.",
  "FleetCancellationComplete": "All cancel/dock ACKs received; tasks stay cleared",
  "FleetCancellationStorageInvalid": "Invalid cancellation watermark/ACK ledger",
  "FleetStoredSizeInvalid": "Invalid stored fleet size",
  "FleetClearanceStorageInvalid": "Invalid mine clearance storage",
  "FleetMarkerReceiptsInvalid": "Invalid marker receipt count",
  "FleetMarkDimensions": "mark dimensions must be finite and within (0,1000] m",
  "FleetGpsPointsDiffer": "GPS entrance and direction point must differ",
  "FleetManualJobLimit": "Manual area exceeds Survey.MaxJobs; split the area",
  "FleetManualCreated": "{0}: {1} manual holes",
  "FleetSurveyRadius": "survey radius must be 20..20000 m",
  "FleetSurveyGridLimit": "Over Survey.MaxJobs; increase Survey.Spacing",
  "FleetSpaceSurveyLimit": "Space survey exceeds Survey.MaxJobs",
  "FleetSurveyCreated": "{0}: {1} finite survey observations",
  "FleetCheckpointJobIndexMismatch": "Checkpoint job index mismatch",
  "FleetPlannerSerialInvalid": "Planner serial invalid",
  "FleetPlannerCountsInvalid": "Planner storage counts invalid",
  "FleetStoredJobInvalid": "Duplicate stored job ID or invalid hole index",
  "FleetStoredRegionInvalid": "Invalid stored region",
  "FleetCheckpointOwnerCountInvalid": "Invalid owner count",
  "FleetCheckpointOwnerInvalid": "Invalid checkpoint ownership",
  "FleetNumericArgumentInvalid": "Invalid finite numeric argument: {0}",
  "FleetMarkUsage": "Usage: mark width height depth [GPS:entry:X:Y:Z: GPS:inward:X:Y:Z:]",
  "FleetTwoGpsRequired": "Need entrance GPS and inward GPS",
  "FleetMarkerCameraMissing": "No local functional Marker.Camera",
  "FleetMarkerCameraCharging": "Camera charging: {0:0} m ready; retry mark",
  "FleetMarkerSurfaceRequired": "mark must hit an asteroid or planet surface",
  "FleetMarkerGuidance": "Aim camera; mark width height depth [entrance GPS inward GPS]",
  "FleetMarkerDiagnostics": "MARKER -> {0}\n{1}",
  "FleetMarkerSubmitted": "Manual volume submitted: {0} x {1} x {2} m\n{3}",
  "FleetMarkerSurveySubmitted": "Finite survey submitted at base position",
  "FleetMarkerCommands": "Marker commands: mark width height depth [GPS... GPS...], survey [radius], rescan, diagnose",
  "FleetWatchdogTripped": "WATCHDOG TRIPPED; inspect ship, then arm and resume",
  "FleetWatchdogBusinessRestarted": "Business PB restarted; re-arm required",
  "FleetWatchdogHeartbeatMissing": "No fresh local heartbeat; cannot arm",
  "FleetWatchdogArmedMessage": "Watchdog armed",
  "FleetWatchdogManualTrip": "Watchdog manually tripped",
  "FleetWatchdogCommands": "Commands: arm, trip, diagnose",
  "FleetWatchdogDiagnostics": "Watchdog {0} / heartbeat {1:F1}s",
  "FleetWatchdogArmed": "ARMED",
  "FleetWatchdogFault": "TRIPPED",
  "FleetWatchdogDisarmed": "DISARMED",
  "FleetManualQueued": "Range {0}: generating {1} holes",
  "FleetSurveyQueued": "Search {0}: generating observations",
  "FleetPlanningProgress": "Generating: up to {0} positions left",
  "FleetStorageRecordInvalid": "Invalid fleet save; retained and paused",
  "FleetStorageIdentityInvalid": "Fleet storage role or ID does not match",
  "FleetStorageRestored": "Restored; await fresh telemetry and berth confirmation"
}
