package de.tsschulz.tt_tagebuch.shared.i18n

data class SupportedLanguage(val code: String, val label: String)

object MobileStrings {
    const val DEFAULT_LANGUAGE = "de"

    val supportedLanguages: List<SupportedLanguage> = listOf(
        SupportedLanguage("de-CH", "Deutsch (Schweiz)"),
        SupportedLanguage("de-extended", "Deutsch (erweitert)"),
        SupportedLanguage("de", "Deutsch"),
        SupportedLanguage("en-AU", "English (AU)"),
        SupportedLanguage("en-GB", "English (UK)"),
        SupportedLanguage("en-US", "English (US)"),
        SupportedLanguage("es", "Español"),
        SupportedLanguage("fil", "Filipino"),
        SupportedLanguage("fr", "Français"),
        SupportedLanguage("it", "Italiano"),
        SupportedLanguage("ja", "日本語"),
        SupportedLanguage("pl", "Polski"),
        SupportedLanguage("th", "ไทย"),
        SupportedLanguage("tl", "Tagalog"),
        SupportedLanguage("zh", "中文"),
    )

    private val de_CH: Map<String, String> by lazy { mapOf(
        "accident.accident" to "Unfall",
        "accident.accidentDescription" to "Beschreibung des Unfalls...",
        "accident.close" to "Schliessen",
        "accident.member" to "Mitglied",
        "accident.pleaseSelect" to "Bitte wählen",
        "accident.reportAccident" to "Unfall melden",
        "accident.reportedAccidents" to "Gemeldete Unfälle",
        "accident.submit" to "Eintragen",
        "activityStats.activityStatistics" to "Statistik der Übungen",
        "activityStats.last3Participations" to "Letzte 3 Teilnahmen",
        "activityStats.noParticipations" to "Keine Teilnahmen vorhanden",
        "activityStats.noStatistics" to "Keine Statistiken vorhanden",
        "activityStats.title" to "Übungs-Statistiken",
        "app.name" to "Trainingstagebuch",
        "app.title" to "Trainingstagebuch",
        "auth.accountActivated" to "Account aktiviert! Du kannst dich jetzt anmelden.",
        "auth.activate" to "Aktivieren",
        "auth.activateAccount" to "Account aktivieren",
        "auth.activationFailed" to "Aktivierig fehlgschlage. Bitte de Link überprüefe.",
        "auth.confirmPassword" to "Passwort bestätige",
        "auth.email" to "E-Mail",
        "auth.forgotPassword" to "Passwort vergesse?",
        "auth.forgotPasswordDescription" to "Gib dini E-Mail-Adrässe ii. Du bechunsch en Link, zum dis Passwort zruggsetze.",
        "auth.hasAccount" to "Bereits ein Konto?",
        "auth.login" to "Aamelde",
        "auth.loginFailed" to "Login fehlgschlage. Bitte Zuegangsdaten prüefe.",
        "auth.loginSuccess" to "Erfolgriich aagmeldet",
        "auth.logout" to "Abmelde",
        "auth.logoutSuccess" to "Erfolgriich abgmeldet",
        "auth.newPassword" to "Nöis Passwort",
        "auth.noAccount" to "No kei Konto?",
        "auth.password" to "Passwort",
        "auth.passwordResetSuccess" to "Dis Passwort isch erfolgriich gänderet worde. Du chasch dich jetzt aaloge.",
        "auth.passwordsDoNotMatch" to "D'Passwörter stimed nöd überein.",
        "auth.passwordTooShort" to "S'Passwort muess mindestens 6 Zeiche lang sii.",
        "auth.register" to "Registriere",
        "auth.registerFailed" to "Registrierung fehlgeschlagen. Bitte versuchen Sie es erneut.",
        "auth.registerSuccess" to "Registrierung erfolgreich! Bitte prüfen Sie Ihre E-Mails, um den Account zu aktivieren.",
        "auth.rememberMe" to "Aagmeldet bliibe",
        "auth.resetEmailSent" to "Falls es Konto mit dere E-Mail git, isch en Link zum Zruggsetze gschickt worde. Bitte prüef dis Postfach (au de Spam-Ordner).",
        "auth.resetFailed" to "Passwort het nöd chönne gänderet werde. De Link isch villicht abglaufe.",
        "auth.resetPassword" to "Nöis Passwort vergee",
        "auth.resetRequestFailed" to "Aafrag fehlgschlage. Bitte probiers nomal.",
        "auth.saveNewPassword" to "Passwort speichere",
        "auth.saving" to "Wird gspeicheret...",
        "auth.sending" to "Wird gschickt...",
        "auth.sendResetLink" to "Link schicke",
        "auth.sessionExpired" to "Dini Sitzig isch abglaufe. Du wirsch abgmeldet.",
        "auth.toLogin" to "Zum Login",
        "baseDialog.close" to "Schliessen",
        "baseDialog.minimize" to "Minimieren",
        "baseDialog.resize" to "Grösse ändern",
        "billing.autoSuggestMapping" to "Auto-Vorschläge",
        "billing.deleteBilling" to "Löschen",
        "billing.deleteConfirm" to "Diese erzeugte Abrechnung wirklich löschen?",
        "billing.deleteError" to "Abrechnung konnte nicht gelöscht werden.",
        "billing.deleteSuccess" to "Abrechnung wurde gelöscht.",
        "billing.deleteTemplate" to "Vorlage löschen",
        "billing.deleteTemplateConfirm" to "Diese Vorlage wirklich löschen?",
        "billing.deleteTemplateError" to "Vorlage konnte nicht gelöscht werden.",
        "billing.deleteTemplateSuccess" to "Vorlage wurde gelöscht.",
        "billing.documentDate" to "Datum",
        "billing.downloadError" to "PDF konnte nicht heruntergeladen werden.",
        "billing.downloadPdf" to "PDF herunterladen",
        "billing.generateAndDownloadPdf" to "PDF erzeugen + herunterladen",
        "billing.generateError" to "PDF konnte nicht erzeugt werden.",
        "billing.generateOwnBilling" to "Eigene Abrechnung erzeugen",
        "billing.generatePdf" to "PDF erzeugen",
        "billing.generateSuccess" to "PDF wurde erzeugt.",
        "billing.generatingPdf" to "Erzeuge PDF...",
        "billing.hourlyRate" to "Stunden-Gehalt",
        "billing.hoursAutoHint" to "Anzahl Stunden wird automatisch aus den Trainingstagen berechnet: {hours} h ({count} Einheiten).",
        "billing.hoursTotal" to "Anzahl Stunden",
        "billing.iban" to "IBAN",
        "billing.ibanBoxesReset" to "IBAN-Boxen wurden zurückgesetzt.",
        "billing.ibanLearnCancel" to "IBAN-Lernen abbrechen",
        "billing.ibanLearnDone" to "IBAN-Boxen wurden aus dem gewählten Bereich zugewiesen.",
        "billing.ibanLearnStart" to "IBAN einlernen",
        "billing.ibanLearnStep1" to "IBAN-Lernen: bitte auf die erste zu nutzende IBAN-Box klicken.",
        "billing.ibanLearnStep2" to "IBAN-Lernen: bitte auf die letzte zu nutzende IBAN-Box klicken.",
        "billing.ibanWithoutCountry" to "ohne Länderkennung",
        "billing.locationText" to "Ort",
        "billing.mappingEditorHint" to "Feld auswählen, dann in die PDF klicken. Die Position wird direkt übernommen.",
        "billing.mappingEditorTitle" to "Felder im PDF per Klick zuweisen",
        "billing.mappingField" to "Feld",
        "billing.mappingHint" to "Koordinaten je Feld einmalig anpassen und speichern. Diese Positionen werden bei „PDF erzeugen“ verwendet.",
        "billing.mappingPreviewError" to "PDF-Vorschau für Mapping konnte nicht geladen werden.",
        "billing.mappingSaved" to "Mapping wurde gespeichert.",
        "billing.mappingSaveError" to "Mapping konnte nicht gespeichert werden.",
        "billing.mappingSuggested" to "Auto-Vorschläge wurden eingetragen. Bitte prüfen und feinjustieren.",
        "billing.mappingSuggestError" to "Auto-Vorschläge konnten nicht ermittelt werden.",
        "billing.mappingTitle" to "Positions-Mapping",
        "billing.monthFrom" to "Monat von",
        "billing.monthTo" to "Monat bis",
        "billing.noRuns" to "Noch keine Abrechnungen vorhanden.",
        "billing.noSessionsInRange" to "Keine Trainingseinheiten im gewählten Zeitraum gefunden.",
        "billing.noTemplates" to "Noch keine Vorlagen vorhanden.",
        "billing.omitField" to "nicht angeben",
        "billing.openMappingEditor" to "Mapping per Klick",
        "billing.resetIbanBoxes" to "IBAN-Boxen reset",
        "billing.runSection" to "Abrechnungslauf",
        "billing.runsTitle" to "Bisherige Abrechnungen",
        "billing.sameAccountCheckbox" to "Gleiches Konto wie letzte Abrechnung",
        "billing.saveMapping" to "Mapping speichern",
        "billing.selfRecipientName" to "Eigener Name",
        "billing.sessionHours" to "Stunden",
        "billing.sessionLabel" to "Bezeichner",
        "billing.sessionTime" to "Zeit",
        "billing.step1" to "Schritt 1: Vorlage hinterlegen",
        "billing.step2" to "Schritt 2: Abrechnungslauf anlegen",
        "billing.step3" to "Schritt 3: PDF erzeugen und herunterladen",
        "billing.subtitle" to "Erstelle deine eigene monatliche Übungsstunden-Abrechnung.",
        "billing.template" to "Vorlage",
        "billing.templateDescription" to "Beschreibung",
        "billing.templateName" to "Vorlagenname",
        "billing.templatePdf" to "PDF-Vorlage",
        "billing.templateSection" to "Vorlage hochladen",
        "billing.title" to "Abrechnung",
        "billing.uploadTemplate" to "Vorlage speichern",
        "calendar.agendaEmpty" to "Keine Termine in diesem Monat.",
        "calendar.agendaTitle" to "Termine im Monat",
        "calendar.cancelCancellation.confirm" to "Ausfall stornieren",
        "calendar.cancelCancellation.message" to "Trainingsausfall „{title}“ am {date} wirklich stornieren?",
        "calendar.cancelCancellation.title" to "Trainingsausfall stornieren",
        "calendar.cancellation.date" to "Datum",
        "calendar.cancellation.description" to "Blendet regelmässige Trainingszeiten aus.",
        "calendar.cancellation.fallbackTitle" to "Training fällt aus",
        "calendar.cancellation.reasonPlaceholder" to "Grund (optional)",
        "calendar.cancellation.saving" to "Speichern...",
        "calendar.cancellation.submit" to "Eintragen",
        "calendar.cancellation.subtitle" to "Trainingsausfall",
        "calendar.cancellation.title" to "Training fällt aus",
        "calendar.cancellation.trainingGroups" to "Trainingsgruppen",
        "calendar.cancellation.untilOptional" to "Bis optional",
        "calendar.customEvent.categoryPlaceholder" to "Kategorie (optional)",
        "calendar.customEvent.description" to "Kreistage, Sitzungen, interne Meetings, ...",
        "calendar.customEvent.saving" to "Speichern...",
        "calendar.customEvent.submit" to "Anlegen",
        "calendar.customEvent.subtitleFallback" to "Eigener Termin",
        "calendar.customEvent.title" to "Eigene Termine",
        "calendar.customEvent.titlePlaceholder" to "Titel",
        "calendar.description" to "Trainingstage, Vereinsturniere und Punktspiele in einer Monatsansicht.",
        "calendar.eventTitles.match" to "Punktspiel",
        "calendar.eventTitles.officialTournament" to "Turnierteilnahme",
        "calendar.eventTitles.tournament" to "Turnier",
        "calendar.eventTitles.training" to "Training",
        "calendar.eyebrow" to "Vereinskalender",
        "calendar.holidayTypes.holiday" to "Feiertag",
        "calendar.holidayTypes.schoolHoliday" to "Schulferien",
        "calendar.legend.customEvent" to "Termin",
        "calendar.legend.holiday" to "Feiertag",
        "calendar.legend.match" to "Punktspiel",
        "calendar.legend.officialTournament" to "Teilnahme",
        "calendar.legend.schoolHoliday" to "Ferien",
        "calendar.legend.tournament" to "Turnier",
        "calendar.legend.training" to "Training",
        "calendar.legend.trainingCancellation" to "Ausfall",
        "calendar.loadError" to "Kalenderdaten konnten nicht geladen werden.",
        "calendar.loading" to "Kalenderdaten werden geladen...",
        "calendar.match.guest" to "Gast",
        "calendar.match.home" to "Heim",
        "calendar.noClub" to "Bitte zuerst einen Verein auswählen.",
        "calendar.options.subtitle" to "Ausfälle & eigene Termine",
        "calendar.options.title" to "Optionen",
        "calendar.participants" to "{count} Teilnehmer",
        "calendar.quickCancellation.confirm" to "Ausfall eintragen",
        "calendar.quickCancellation.message" to "„{title}“ als Trainingsausfall markieren?",
        "calendar.quickCancellation.noGroups" to "Es sind keine Trainingsgruppen mit Trainingszeiten vorhanden.",
        "calendar.quickCancellation.title" to "Trainingsausfall",
        "calendar.quickCancellation.trainingGroups" to "Betroffene Trainingsgruppen",
        "calendar.quickCancellation.useWholeRange" to "Für den gesamten Zeitraum ({start} bis {end}) eintragen",
        "calendar.recurringTrainingTime" to "Regelmässige Trainingszeit",
        "calendar.sources.customEvents" to "Eigene Termine",
        "calendar.sources.holidays" to "Ferien/Feiertage",
        "calendar.sources.matches" to "Punktspiele",
        "calendar.sources.officialTournaments" to "Turnierteilnahmen",
        "calendar.sources.tournaments" to "Turniere",
        "calendar.sources.trainingCancellations" to "Trainingsausfälle",
        "calendar.sources.trainingDays" to "Trainingstage",
        "calendar.sources.trainingTimes" to "Trainingszeiten",
        "calendar.sourceWarning" to "{source} konnte nicht geladen werden",
        "calendar.starts" to "{count} Starts",
        "calendar.title" to "Kalender",
        "calendar.today" to "Heute",
        "calendar.tournament.club" to "Vereinsturnier",
        "calendar.tournament.open" to "Offenes Turnier",
        "calendar.weekdays.friday" to "Fr",
        "calendar.weekdays.monday" to "Mo",
        "calendar.weekdays.saturday" to "Sa",
        "calendar.weekdays.sunday" to "So",
        "calendar.weekdays.thursday" to "Do",
        "calendar.weekdays.tuesday" to "Di",
        "calendar.weekdays.wednesday" to "Mi",
        "club.accessDenied" to "Zugriff uf de Verein verweigeret.",
        "club.accessRequested" to "Zugriff isch aagfragt worde.",
        "club.accessRequestFailed" to "Zugriffsafrag het nöd chönne gstellt werde.",
        "club.accessRequestPending" to "Der Zugriff auf diesen Verein ist beantragt. Bitte haben Sie etwas Geduld.",
        "club.create" to "Verein erstelle",
        "club.createTitle" to "Verein aalege",
        "club.diary" to "Trainingstagebuch",
        "club.errorLoadingRequests" to "Fehler bim Lade vo de offene Afroge",
        "club.load" to "Lade",
        "club.members" to "Mitglieder",
        "club.mobileSelectHint" to "Bitte wähl zerscht en Verein us, zum d App uf em Smartphone z nutze.",
        "club.name" to "Vereinsname",
        "club.new" to "Neue Verein",
        "club.noAccess" to "Für diesen Verein isch no kei Zugriff freigschaltet.",
        "club.openAccessRequests" to "Offeni Zugriffsafrage",
        "club.openRequests" to "Offeni Zugriffsafrage",
        "club.requestAccess" to "Zugriff beantrage",
        "club.select" to "Verein uswähle",
        "club.selectPlaceholder" to "Verein wähle...",
        "club.title" to "Verein",
        "club.trainingDiary" to "Trainingstagebuch",
        "clubSettings.associationMemberNumber" to "Verbands-Mitgliedsnummer",
        "clubSettings.associationMemberNumberPlaceholder" to "z. B. 12-3456",
        "clubSettings.autoFetchRankings" to "Ranglisten automatisch abrufen",
        "clubSettings.greetingHint" to "Dieser Text erscheint im Reiter \"Begrüssung\" des Spielberichtsbogens.",
        "clubSettings.greetingPlaceholder" to "Begrüssungstext für Heimspiele...",
        "clubSettings.greetingText" to "Begrüssungstext",
        "clubSettings.guestPlayers" to "Spieler und Doppel Gastmannschaft",
        "clubSettings.guestTeam" to "Name Gastmannschaft",
        "clubSettings.homePlayers" to "Spieler und Doppel Heimmannschaft",
        "clubSettings.homeTeam" to "Name Heimmannschaft",
        "clubSettings.loadFailed" to "Einstellungen konnten nicht geladen werden",
        "clubSettings.memberDataQuality" to "Datenqualität Mitglieder",
        "clubSettings.memberDataQualityHint" to "Diese Felder zählen auf der Mitgliederseite als nötig. Alle Felder bleiben weiterhin eingebbar.",
        "clubSettings.myTischtennisFedNickname" to "Verbandskürzel",
        "clubSettings.myTischtennisFedNicknamePlaceholder" to "z. B. HeTTV",
        "clubSettings.myTischtennisRankings" to "myTischtennis TTR/QTTR-Ranglisten",
        "clubSettings.myTischtennisRankingsHint" to "Automatischer Abruf der Vereins-Rangliste für TTR- und QTTR-Updates der Mitglieder.",
        "clubSettings.noClubSelected" to "Bitte wählen Sie zuerst einen Verein aus.",
        "clubSettings.placeholders" to "Platzhalter",
        "clubSettings.rankingsUsesAssociationNumber" to "Die Vereinsnummer für den Ranglisten-Abruf entspricht der Verbands-Mitgliedsnummer oben.",
        "clubSettings.requireCity" to "Ort nötig",
        "clubSettings.requireEmail" to "E-Mail-Adresse nötig",
        "clubSettings.requirePhone" to "Telefonnummer nötig",
        "clubSettings.requirePostalCode" to "PLZ nötig",
        "clubSettings.requireStreet" to "Strasse nötig",
        "clubSettings.save" to "Speichern",
        "clubSettings.saved" to "Gespeichert",
        "clubSettings.saveFailed" to "Speichern fehlgeschlagen",
        "clubSettings.settings" to "Einstellungen",
        "clubSettings.title" to "Vereins-Einstellungen",
        "clubSettings.trainingGroups" to "Trainingsgruppen",
        "clubSettings.trainingTimes" to "Trainingszeiten",
        "common.actions" to "Aktione",
        "common.active" to "Aktiv",
        "common.add" to "Hinzufüge",
        "common.all" to "Alle",
        "common.apply" to "Aawände",
        "common.back" to "Zrugg",
        "common.cancel" to "Abbreche",
        "common.choose" to "Wähle",
        "common.clear" to "Lösche",
        "common.close" to "Schliessen",
        "common.confirm" to "Bestätige",
        "common.create" to "Erstelle",
        "common.date" to "Datum",
        "common.days" to "Täg",
        "common.delete" to "Lösche",
        "common.description" to "Beschrieb",
        "common.details" to "Details",
        "common.disabled" to "Deaktiviert",
        "common.download" to "Herunterlade",
        "common.edit" to "Bearbeite",
        "common.enabled" to "Aktiviert",
        "common.filter" to "Filter",
        "common.hours" to "Stunde",
        "common.in" to "in",
        "common.inactive" to "Inaktiv",
        "common.loading" to "Lade...",
        "common.min" to "Min",
        "common.minutes" to "Minute",
        "common.months" to "Monat",
        "common.move" to "Verschiebe",
        "common.name" to "Name",
        "common.new" to "Neu",
        "common.next" to "Wiiter",
        "common.no" to "Nei",
        "common.ok" to "OK",
        "common.optional" to "Optional",
        "common.period" to "Zeitraum",
        "common.previous" to "Zrugg",
        "common.refresh" to "Neu lade",
        "common.remove" to "Entferne",
        "common.required" to "Erforderlich",
        "common.reset" to "Zruggsetze",
        "common.save" to "Speichere",
        "common.saved" to "Gespeichert",
        "common.saving" to "Speichere...",
        "common.search" to "Suche",
        "common.select" to "Uswähle",
        "common.status" to "Status",
        "common.submit" to "Abschicke",
        "common.time" to "Zyt",
        "common.today" to "Hüt",
        "common.type" to "Typ",
        "common.update" to "Aktualisiere",
        "common.view" to "Aazeige",
        "common.weeks" to "Wuche",
        "common.years" to "Jahr",
        "common.yes" to "Ja",
        "courtDrawing.cancel" to "Abbrechen",
        "courtDrawing.durationMinutes" to "Dauer (Minuten)",
        "courtDrawing.durationText" to "Dauer (Text)",
        "courtDrawing.durationTextPlaceholder" to "z.B. 2x5",
        "courtDrawing.group" to "Gruppe",
        "courtDrawing.ok" to "OK",
        "courtDrawing.selectGroup" to "Gruppe auswählen...",
        "courtDrawing.title" to "Tischtennis-Übung konfigurieren",
        "courtDrawingRender.animationRunning" to "Animation läuft...",
        "courtDrawingRender.startAnimation" to "Animation starten",
        "courtDrawingTool.addStroke" to "Schlag hinzufügen",
        "courtDrawingTool.backhand" to "Rückhand",
        "courtDrawingTool.codeLabel" to "Kürzel",
        "courtDrawingTool.completeFirstStroke" to "1. Schlag vervollständigen",
        "courtDrawingTool.completeFirstStrokeHint" to "Wähle Startposition, Schlagseite, Rotation und Ziel. Danach erscheint die grafische Darstellung.",
        "courtDrawingTool.configureExercise" to "Übung konfigurieren",
        "courtDrawingTool.counterSpin" to "Gegenläufer",
        "courtDrawingTool.forehand" to "Vorhand",
        "courtDrawingTool.noAdditionalStrokes" to "Noch keine Folgeschläge angelegt.",
        "courtDrawingTool.preview" to "Vorschau",
        "courtDrawingTool.previewHint" to "Die Grafik erscheint, sobald der erste Schlag vollständig gesetzt ist.",
        "courtDrawingTool.service" to "Aufschlag:",
        "courtDrawingTool.serviceTitle" to "Aufschlag",
        "courtDrawingTool.sidespin" to "Seitschnitt",
        "courtDrawingTool.sideUnderspin" to "Seitunterschnitt",
        "courtDrawingTool.spin" to "Schnitt:",
        "courtDrawingTool.startLeft" to "links",
        "courtDrawingTool.startMiddle" to "mitte",
        "courtDrawingTool.startRight" to "rechts",
        "courtDrawingTool.stepAdditionalStrokes" to "4. Folgeschläge",
        "courtDrawingTool.stepAdditionalStrokesHint" to "Optional weitere Bälle als Liste aufbauen.",
        "courtDrawingTool.stepFirstStroke" to "2. 1. Schlag",
        "courtDrawingTool.stepFirstStrokeHint" to "Schlagseite und Rotation für den ersten Ball festlegen.",
        "courtDrawingTool.stepStartPosition" to "1. Startposition",
        "courtDrawingTool.stepStartPositionHint" to "Aus welcher Aufschlagposition startet die Übung?",
        "courtDrawingTool.stepTarget" to "3. Ziel",
        "courtDrawingTool.stepTargetHint" to "Zielzone für den ersten Schlag auswählen.",
        "courtDrawingTool.strokeSide" to "Seite",
        "courtDrawingTool.strokeTypeBlock" to "Block",
        "courtDrawingTool.strokeTypeChopDefense" to "Schnittabwehr",
        "courtDrawingTool.strokeTypeCounter" to "Konter",
        "courtDrawingTool.strokeTypeFlip" to "Flip",
        "courtDrawingTool.strokeTypeLabel" to "Schlagart",
        "courtDrawingTool.strokeTypeLobDefense" to "Ballonabwehr",
        "courtDrawingTool.strokeTypePush" to "Schupf",
        "courtDrawingTool.strokeTypeSmash" to "Schuss",
        "courtDrawingTool.strokeTypeTopspin" to "Topspin",
        "courtDrawingTool.targetBackhandHalfLong" to "Rückhand halblang",
        "courtDrawingTool.targetBackhandLong" to "Rückhand lang",
        "courtDrawingTool.targetBackhandShort" to "Rückhand kurz",
        "courtDrawingTool.targetForehandHalfLong" to "Vorhand halblang",
        "courtDrawingTool.targetForehandLong" to "Vorhand lang",
        "courtDrawingTool.targetForehandShort" to "Vorhand kurz",
        "courtDrawingTool.targetMiddleHalfLong" to "Mitte halblang",
        "courtDrawingTool.targetMiddleLong" to "Mitte lang",
        "courtDrawingTool.targetMiddleShort" to "Mitte kurz",
        "courtDrawingTool.targetPosition" to "Zielposition:",
        "courtDrawingTool.targetPositionLabel" to "Zielposition",
        "courtDrawingTool.title" to "Tischtennis-Übungszeichnung",
        "courtDrawingTool.titleLabel" to "Titel",
        "courtDrawingTool.topspin" to "Überschnitt",
        "courtDrawingTool.toTarget" to "nach",
        "courtDrawingTool.underspin" to "Unterschnitt",
        "createClub.clubExists" to "Der Verein existiert bereits.",
        "createClub.clubName" to "Name des Vereins:",
        "createClub.create" to "Verein anlegen",
        "createClub.nameRequired" to "Bitte gib dem Verein einen aussagekräftigen Namen.",
        "createClub.title" to "Verein anlegen",
        "createClub.unknownError" to "Ein unbekannter Fehler ist aufgetreten. Bitte versuchen Sie es erneut.",
        "csvImport.cancel" to "Abbrechen",
        "csvImport.import" to "Importieren",
        "csvImport.title" to "Spielplan importieren",
        "csvImport.uploadCsvFile" to "CSV-Datei hochladen",
        "dialogExamples.composableConfirmDetails" to "Dies ist ein Beispiel für das useConfirm Composable.",
        "dialogExamples.composableConfirmMessage" to "Möchten Sie fortfahren?",
        "dialogExamples.composableConfirmTitle" to "useConfirm Beispiel",
        "dialogExamples.composableDialogText" to "Dieser Dialog verwendet das useDialog Composable.",
        "dialogExamples.composableDialogText2" to "Das macht die Verwaltung einfacher!",
        "dialogExamples.composableDialogTitle" to "Dialog mit useDialog Composable",
        "dialogExamples.composableUsage" to "Composable-Verwendung",
        "dialogExamples.confirmDeleteMessage" to "Möchten Sie diesen Eintrag wirklich löschen?",
        "dialogExamples.confirmDeleteTitle" to "Löschen bestätigen",
        "dialogExamples.confirmDialogs" to "Bestätigungs-Dialoge",
        "dialogExamples.confirmWarningDetails" to "Diese Aktion kann nicht rückgängig gemacht werden.",
        "dialogExamples.confirmWarningMessage" to "Sind Sie sicher, dass Sie fortfahren möchten?",
        "dialogExamples.error" to "Fehler",
        "dialogExamples.errorDetails" to "Bitte versuchen Sie es später erneut.",
        "dialogExamples.errorMessage" to "Ein Fehler ist aufgetreten.",
        "dialogExamples.fullscreenModal" to "Fullscreen Modal",
        "dialogExamples.fullscreenModalText" to "Dies ist ein Fullscreen-Dialog.",
        "dialogExamples.fullscreenModalText2" to "Er nimmt fast den gesamten Bildschirm ein (90vw x 90vh).",
        "dialogExamples.fullscreenModalTitle" to "Fullscreen Modal Dialog",
        "dialogExamples.info" to "Info",
        "dialogExamples.infoDialogs" to "Informations-Dialoge",
        "dialogExamples.infoMessage" to "Dies ist eine Informationsmeldung.",
        "dialogExamples.information" to "Information",
        "dialogExamples.largeModal" to "Grosser Modal",
        "dialogExamples.largeModalText" to "Dies ist ein grosser modaler Dialog.",
        "dialogExamples.largeModalText2" to "Er bietet mehr Platz für Inhalte.",
        "dialogExamples.largeModalTitle" to "Grosser Modal Dialog",
        "dialogExamples.minimizedDialogs" to "Minimierte Dialoge:",
        "dialogExamples.modalDialogs" to "Modale Dialoge",
        "dialogExamples.multipleDialogs" to "Mehrere Dialoge",
        "dialogExamples.nonModalDialog" to "Nicht-modaler Dialog",
        "dialogExamples.nonModalDialogs" to "Nicht-modale Dialoge",
        "dialogExamples.nonModalText" to "Dies ist ein nicht-modaler Dialog.",
        "dialogExamples.nonModalText2" to "Sie können ihn verschieben und mehrere gleichzeitig öffnen!",
        "dialogExamples.nonModalTitle" to "Nicht-modaler Dialog",
        "dialogExamples.scrollArea" to "Scroll-Bereich für viel Inhalt...",
        "dialogExamples.secondNonModalText" to "Noch ein nicht-modaler Dialog!",
        "dialogExamples.secondNonModalTitle" to "Zweiter nicht-modaler Dialog",
        "dialogExamples.simpleModal" to "Einfacher Modal",
        "dialogExamples.simpleModalText" to "Dies ist ein einfacher modaler Dialog mit mittlerer Grösse.",
        "dialogExamples.simpleModalText2" to "Klicken Sie ausserhalb oder auf das X, um zu schliessen.",
        "dialogExamples.simpleModalTitle" to "Einfacher Modal Dialog",
        "dialogExamples.success" to "Erfolg",
        "dialogExamples.successDetails" to "Alle Änderungen wurden gespeichert.",
        "dialogExamples.successMessage" to "Der Vorgang wurde erfolgreich abgeschlossen!",
        "dialogExamples.title" to "Dialog-Beispiele",
        "dialogExamples.useConfirmExample" to "useConfirm Beispiel",
        "dialogExamples.useDialogExample" to "useDialog Beispiel",
        "dialogExamples.warning" to "Warnung",
        "dialogExamples.warningDetails" to "Einige Felder sind möglicherweise nicht vollständig ausgefüllt.",
        "dialogExamples.warningMessage" to "Bitte beachten Sie folgende Hinweise.",
        "dialogManager.close" to "Schliessen",
        "dialogManager.minimize" to "Minimieren",
        "dialogManager.noMinimizedDialogs" to "Keine minimierten Dialoge",
        "dialogs.confirm.cancel" to "Abbrechen",
        "dialogs.confirm.ok" to "OK",
        "dialogs.confirm.title" to "Bestätigung",
        "dialogs.info.ok" to "OK",
        "dialogs.info.title" to "Information",
        "diary.activeTrainingDay" to "Aktiver Trainingstag",
        "diary.activities" to "Aktivitäten",
        "diary.activity" to "Aktivität",
        "diary.activityDrawing" to "Aktivitätszeichnung",
        "diary.activityImage" to "Aktivitätsbild",
        "diary.activityNotFound" to "Aktivität nicht gefunden. Bitte wählen Sie eine aus der Liste aus.",
        "diary.activityOrTimeblock" to "Aktivität / Zeitblock",
        "diary.activityPlaceholder" to "Aktivität",
        "diary.activityRequired" to "Bitte geben Sie eine Aktivität ein.",
        "diary.addActivity" to "Aktivität hinzufügen",
        "diary.addGroup" to "Gruppe hinzufügen",
        "diary.addGroupActivity" to "Gruppen-Aktivität hinzufügen",
        "diary.addGroupButton" to "+ Gruppe",
        "diary.addTimeblock" to "Zeitblock",
        "diary.all" to "Alle",
        "diary.applySuggestion" to "Vorschlag übernehmen",
        "diary.assignParticipants" to "Teilnehmer zuordnen",
        "diary.assignParticipantsForGroupActivity" to "Teilnehmer für Gruppen-Aktivität zuordnen",
        "diary.assignShort" to "Zuordnen",
        "diary.bookAccident" to "Unfall buchen",
        "diary.confirmDelete" to "Löschen bestätigen",
        "diary.confirmDeleteDate" to "Möchten Sie dieses Datum wirklich löschen?",
        "diary.confirmDeleteDateDetails" to "Alle zugehörigen Daten werden ebenfalls gelöscht.",
        "diary.confirmDeleteGroup" to "Möchten Sie die Gruppe \"{name}\" wirklich löschen?",
        "diary.createDate" to "Datum anlegen",
        "diary.createDrawing" to "Übungszeichnung erstellen",
        "diary.createGroups" to "Gruppen erstellen",
        "diary.createNew" to "Neu anlegen",
        "diary.createNewDate" to "Neues Datum anlegen",
        "diary.date" to "Datum",
        "diary.dateCannotBeDeleted" to "Datum kann nicht gelöscht werden",
        "diary.dateCannotBeDeletedDetails" to "Es sind noch Inhalte vorhanden (Trainingplan, Teilnehmer, Aktivitäten, Unfälle oder Notizen).",
        "diary.dateNoLongerCurrent" to "Ausgewähltes Datum war nicht mehr aktuell. Bitte erneut versuchen.",
        "diary.delete" to "Löschen",
        "diary.deleteDate" to "Datum löschen",
        "diary.deleteGroup" to "Gruppe löschen",
        "diary.duration" to "Dauer",
        "diary.durationExampleLong" to "z.B. 2x7 oder 3*5",
        "diary.durationExampleShort" to "z.B. 2x7",
        "diary.durationMinutes" to "Dauer (Min)",
        "diary.editActivity" to "Aktivität bearbeiten",
        "diary.editGroupActivity" to "Gruppen-Aktivität bearbeiten",
        "diary.editTrainingTimes" to "Trainingszeiten bearbeiten",
        "diary.errorCreatingActivity" to "Fehler beim Erstellen der Aktivität",
        "diary.errorCreatingGroups" to "Fehler beim Erstellen der Gruppen",
        "diary.errorDeletingGroup" to "Fehler beim Löschen der Gruppe",
        "diary.errorLoadingPredefinedActivities" to "Fehler beim Laden der vordefinierten Aktivitäten",
        "diary.errorMarkingForm" to "Fehler beim Markieren des Mitgliedsformulars",
        "diary.errorOccurred" to "Ein Fehler ist aufgetreten. Bitte versuchen Sie es erneut.",
        "diary.existingGroups" to "Vorhandene Gruppen",
        "diary.filterAbsent" to "Abwesend",
        "diary.filterAll" to "Alle",
        "diary.filterExcused" to "Entschuldigt",
        "diary.filterPresent" to "Anwesend",
        "diary.filterTest" to "Probe",
        "diary.formHandedOver" to "Mitgliedsformular ausgehändigt",
        "diary.formMarkedAsHandedOver" to "Mitgliedsformular als ausgehändigt markiert",
        "diary.freeActivities" to "Freie Aktivitäten",
        "diary.gallery" to "Mitglieder-Galerie",
        "diary.galleryCreating" to "Galerie wird erstellt…",
        "diary.group" to "Gruppe...",
        "diary.groupDeletedSuccessfully" to "Gruppe wurde erfolgreich gelöscht!",
        "diary.groupManagement" to "Gruppenverwaltung",
        "diary.groupsCreated" to "{count} Gruppen wurden erfolgreich erstellt!",
        "diary.groupsLabel" to "Gruppen",
        "diary.groupsSection" to "Gruppen",
        "diary.leader" to "Leiter",
        "diary.min" to "Min",
        "diary.minutes" to "Minuten",
        "diary.mustCreateAtLeastTwoGroups" to "Beim ersten Erstellen müssen mindestens 2 Gruppen erstellt werden!",
        "diary.nextAppointment" to "Nächster Termin",
        "diary.noActiveTrainingDay" to "Kein Trainingstag ausgewählt.",
        "diary.noEntries" to "Keine Einträge",
        "diary.noFreeActivitiesYet" to "Noch keine freien Aktivitäten erfasst.",
        "diary.noParticipants" to "Keine Teilnehmer für diesen Trainingstag vorhanden.",
        "diary.numberOfGroups" to "Anzahl Gruppen",
        "diary.oneGroupAdded" to "1 Gruppe wurde erfolgreich hinzugefügt!",
        "diary.openPlanItems" to "{count} offen",
        "diary.openPlanItemsLabel" to "Plan-Status",
        "diary.overallActivity" to "Gesamt-Aktivität",
        "diary.participants" to "Teilnehmer",
        "diary.participantStatusCancelled" to "Abgesagt",
        "diary.participantStatusExcused" to "Entschuldigt",
        "diary.participantStatusNone" to "Kein Status",
        "diary.planActivitiesCount" to "Plan-Aktivitäten",
        "diary.planAddHint" to "Neue Plan-Elemente fügst du über die Aktionen oben hinzu.",
        "diary.planEmptyState" to "Im Trainingsplan ist noch nichts eingetragen.",
        "diary.quickAdd" to "+ Schnell hinzufügen",
        "diary.quickCreate" to "Schnellanlegen",
        "diary.quickCreateFailed" to "Der Trainingstag konnte nicht angelegt werden.",
        "diary.quickCreateNoSlot" to "Kein freier Trainingstermin gefunden (gemäss Gruppenzeiten, ein Jahr voraus).",
        "diary.searchParticipants" to "Teilnehmer suchen",
        "diary.selectGroup" to "Gruppe auswählen...",
        "diary.selectGroupAndActivity" to "Bitte wählen Sie eine Gruppe und geben Sie eine Aktivität ein.",
        "diary.selectParticipantAndNote" to "Bitte wählen Sie einen Teilnehmer aus und geben Sie einen Notiztext ein.",
        "diary.selectTags" to "Tags auswählen",
        "diary.selectTrainingGroup" to "Trainingsgruppe auswählen",
        "diary.selectTrainingGroupPlaceholder" to "Bitte wählen...",
        "diary.showImage" to "Bild/Zeichnung anzeigen",
        "diary.skipSuggestion" to "Ohne Vorschlag fortfahren",
        "diary.standardActivities" to "Standard-Aktivitäten",
        "diary.standardActivityAddError" to "Standard-Aktivität konnte nicht hinzugefügt werden.",
        "diary.standardDurationShort" to "Min",
        "diary.startTime" to "Startzeit",
        "diary.statusEmpty" to "Dieser Trainingstag ist noch leer.",
        "diary.statusInProgress" to "Dieser Trainingstag ist teilweise vorbereitet.",
        "diary.statusOpenShort" to "Offen",
        "diary.statusReady" to "Zeiten und Trainingsplan sind gepflegt.",
        "diary.statusReadyShort" to "Bereit",
        "diary.suggestion" to "Vorschlag",
        "diary.timeblock" to "Zeitblock",
        "diary.timeblocksCount" to "Zeitblöcke",
        "diary.title" to "Trainingstagebuch",
        "diary.today" to "Heute",
        "diary.trainingDayAsPDF" to "Trainingstag als PDF herunterladen",
        "diary.trainingDayAsPDFShort" to "Trainingstag als PDF",
        "diary.trainingDayChecklist" to "Abschlusscheck",
        "diary.trainingDaySection" to "Trainingstag",
        "diary.trainingDaySummaryPdfShort" to "Teilnehmerübersicht als PDF",
        "diary.trainingEnd" to "Trainingsende",
        "diary.trainingPlan" to "Trainingsplan",
        "diary.trainingPlanAsPDF" to "Trainingsplan als PDF",
        "diary.trainingPlanPdfShort" to "Ablaufplan als PDF",
        "diary.trainingStart" to "Trainingsbeginn",
        "diary.trainingTimesUpdated" to "Trainingszeiten erfolgreich aktualisiert.",
        "diary.trainingWindow" to "Trainingsfenster",
        "diary.trainingWindowUnset" to "Noch nicht gesetzt",
        "diary.unassignedPlanItems" to "{count} offen",
        "diary.updateTimes" to "Zeiten aktualisieren",
        "errors.ERROR_ACTIVITY_IMAGE_DELETE_FAILED" to "Fehler beim Löschen des Bildes",
        "errors.ERROR_BAD_REQUEST" to "Ungültige Anfrage.",
        "errors.ERROR_CLUB_ALREADY_EXISTS" to "Der Verein existiert bereits.",
        "errors.ERROR_CLUB_NAME_REQUIRED" to "Bitte gib dem Verein einen aussagekräftigen Namen.",
        "errors.ERROR_CLUB_NAME_TOO_SHORT" to "Bitte gib dem Verein einen aussagekräftigen Namen.",
        "errors.ERROR_CLUB_NOT_FOUND" to "Verein nicht gefunden.",
        "errors.ERROR_DIARY_ACTIVITY_PARTICIPANTS_UPDATE_FAILED" to "Fehler beim Aktualisieren der Aktivitäts-Teilnehmer",
        "errors.ERROR_DIARY_ASSIGN_ALL_PARTICIPANTS_FAILED" to "Fehler beim Zuordnen aller Teilnehmer",
        "errors.ERROR_DIARY_ASSIGN_GROUP_FAILED" to "Fehler beim Zuordnen der Gruppe",
        "errors.ERROR_DIARY_DATE_NOT_FOUND" to "Datum nicht gefunden.",
        "errors.ERROR_DIARY_DATE_UPDATED" to "Datum war nicht (mehr) vorhanden. Die Datums-Auswahl wurde aktualisiert. Bitte erneut versuchen.",
        "errors.ERROR_DIARY_GROUP_ASSIGNMENT_UPDATE_FAILED" to "Fehler beim Aktualisieren der Gruppenzuordnung",
        "errors.ERROR_DIARY_IMAGE_LOAD_FAILED" to "Bild konnte nicht geladen werden.",
        "errors.ERROR_DIARY_MEMBER_CREATE_FAILED" to "Fehler beim Erstellen des Mitglieds",
        "errors.ERROR_DIARY_NO_EXERCISE_DATA" to "Keine Übungsdaten erhalten",
        "errors.ERROR_DIARY_NO_PARTICIPANTS" to "Keine Teilnehmer für diesen Trainingstag vorhanden.",
        "errors.ERROR_DIARY_PARTICIPANT_ASSIGN_FAILED" to "Teilnehmer konnte nicht zugeordnet werden.",
        "errors.ERROR_DIARY_PARTICIPANT_GROUP_ASSIGNMENT_UPDATE_FAILED" to "Fehler beim Aktualisieren der Teilnehmer-Gruppenzuordnung",
        "errors.ERROR_DIARY_PDF_GENERATION_FAILED" to "Fehler beim Generieren des PDFs.",
        "errors.ERROR_DIARY_STATS_LOAD_FAILED" to "Fehler beim Laden der Statistiken.",
        "errors.ERROR_FORBIDDEN" to "Zugriff verweigert.",
        "errors.ERROR_GROUP_ALREADY_EXISTS" to "Eine Gruppe mit diesem Namen existiert bereits.",
        "errors.ERROR_GROUP_CANNOT_RENAME_PRESET" to "Vorgaben-Gruppen können nicht umbenannt werden.",
        "errors.ERROR_GROUP_INVALID_PRESET_TYPE" to "Ungültiger Preset-Typ.",
        "errors.ERROR_GROUP_NAME_REQUIRED" to "Bitte geben Sie einen Gruppennamen ein.",
        "errors.ERROR_GROUP_NOT_FOUND" to "Gruppe nicht gefunden.",
        "errors.ERROR_INTERNAL_SERVER_ERROR" to "Ein interner Serverfehler ist aufgetreten.",
        "errors.ERROR_INVALID_PASSWORD" to "Ungültiges Passwort.",
        "errors.ERROR_LOG_NOT_FOUND" to "Log-Eintrag nicht gefunden.",
        "errors.ERROR_LOGIN_FAILED" to "Login fehlgeschlagen.",
        "errors.ERROR_MEMBER_ALREADY_EXISTS" to "Mitglied existiert bereits.",
        "errors.ERROR_MEMBER_FIRSTNAME_REQUIRED" to "Vorname ist erforderlich.",
        "errors.ERROR_MEMBER_LASTNAME_REQUIRED" to "Nachname ist erforderlich.",
        "errors.ERROR_MEMBER_NOT_FOUND" to "Mitglied nicht gefunden.",
        "errors.ERROR_MEMBER_TRANSFER_BULK_FAILED" to "Fehler bei der Bulk-Übertragung: {message}",
        "errors.ERROR_MYTISCHTENNIS_ACCOUNT_NOT_LINKED" to "Kein myTischtennis-Account verknüpft.",
        "errors.ERROR_MYTISCHTENNIS_CAPTCHA_REQUIRED" to "CAPTCHA erforderlich. MyTischtennis verwendet jetzt ein CAPTCHA beim Login. Bitte loggen Sie sich einmal direkt auf mytischtennis.de ein, um das CAPTCHA zu lösen, oder kontaktieren Sie den Support.",
        "errors.ERROR_MYTISCHTENNIS_INVALID_PASSWORD" to "Ungültiges myTischtennis-Passwort.",
        "errors.ERROR_MYTISCHTENNIS_LOGIN_FAILED" to "myTischtennis-Login fehlgeschlagen. Bitte überprüfen Sie Ihre Zugangsdaten.",
        "errors.ERROR_MYTISCHTENNIS_NO_PASSWORD_SAVED" to "Kein Passwort gespeichert und Session abgelaufen. Bitte Passwort eingeben.",
        "errors.ERROR_MYTISCHTENNIS_PASSWORD_NOT_SAVED" to "Kein Passwort gespeichert. Bitte geben Sie Ihr Passwort ein.",
        "errors.ERROR_MYTISCHTENNIS_SESSION_EXPIRED" to "Session abgelaufen. Bitte erneut einloggen.",
        "errors.ERROR_MYTISCHTENNIS_USER_NOT_FOUND" to "myTischtennis-Benutzer nicht gefunden.",
        "errors.ERROR_NOT_FOUND" to "Nicht gefunden.",
        "errors.ERROR_OFFICIAL_TOURNAMENT_PDF_UPLOAD" to "Fehler beim Hochladen der PDF.",
        "errors.ERROR_SESSION_EXPIRED" to "Sitzung abgelaufen.",
        "errors.ERROR_TEAM_LINK_TO_LEAGUE_REQUIRED" to "Bitte ordnen Sie dem Team zuerst eine Liga zu, damit Dokumente verarbeitet werden können.",
        "errors.ERROR_TEAM_NOT_LINKED_TO_LEAGUE" to "Dieses Team ist keiner Liga zugeordnet.",
        "errors.ERROR_TEAM_PDF_LOAD_FAILED" to "Fehler beim Laden des PDFs",
        "errors.ERROR_TEAM_STATS_LOAD_FAILED" to "Statistiken konnten nicht geladen werden.",
        "errors.ERROR_TOURNAMENT_CLASS_NAME_REQUIRED" to "Bitte geben Sie einen Klassennamen ein!",
        "errors.ERROR_TOURNAMENT_NO_DATE" to "Kein Turnierdatum vorhanden!",
        "errors.ERROR_TOURNAMENT_NO_PARTICIPANTS" to "Keine Teilnehmer im Trainingstag für dieses Datum gefunden!",
        "errors.ERROR_TOURNAMENT_NO_TRAINING_DAY" to "Kein Trainingstag für {date} gefunden!",
        "errors.ERROR_TOURNAMENT_NO_VALID_PARTICIPANTS" to "Keine gültigen Teilnehmer im Trainingstag für dieses Datum gefunden!",
        "errors.ERROR_TOURNAMENT_NOT_FOUND" to "Turnier nicht gefunden.",
        "errors.ERROR_TOURNAMENT_PDF_GENERATION_FAILED" to "Fehler beim Generieren des PDFs",
        "errors.ERROR_TOURNAMENT_SELECT_FIRST" to "Bitte wählen Sie zuerst ein Turnier aus.",
        "errors.ERROR_TRAINING_STATS_LOAD_FAILED" to "Fehler beim Laden der Trainings-Statistik",
        "errors.ERROR_UNAUTHORIZED" to "Nicht autorisiert.",
        "errors.ERROR_UNKNOWN_ERROR" to "Ein unbekannter Fehler ist aufgetreten.",
        "errors.ERROR_USER_NOT_FOUND" to "Benutzer nicht gefunden.",
        "errors.ERROR_VALIDATION_FAILED" to "Validierung fehlgeschlagen.",
        "errors.SUCCESS_DIARY_GROUP_ASSIGNMENT_UPDATED" to "Gruppenzuordnung aktualisiert",
        "errors.SUCCESS_DIARY_MEMBER_CREATED" to "Mitglied \"{name}\" wurde erfolgreich erstellt und hinzugefügt!",
        "errors.SUCCESS_OFFICIAL_TOURNAMENT_PDF_UPLOAD" to "PDF erfolgreich hochgeladen.",
        "home.authenticatedFeatures.keepDiary" to "Trainingstagebuch führen",
        "home.authenticatedFeatures.keepDiaryDesc" to "Dokumentiere Trainingsaktivitäten, Teilnehmer, Aktivitäten und Notizen für jeden Trainingstag.",
        "home.authenticatedFeatures.manageMembers" to "Mitglieder verwalten",
        "home.authenticatedFeatures.manageMembersDesc" to "Verwalte deine Vereinsmitglieder, erstelle Trainingsgruppen und behalte den Überblick über alle Teilnehmer.",
        "home.authenticatedFeatures.manageTournaments" to "Turniere verwalten",
        "home.authenticatedFeatures.manageTournamentsDesc" to "Erstelle interne und offene Turniere, importiere offizielle Turniere und verwalte Teilnahmen.",
        "home.authenticatedFeatures.myTischtennisIntegration" to "MyTischtennis-Integration",
        "home.authenticatedFeatures.myTischtennisIntegrationDesc" to "Synchronisiere automatisch Spielergebnisse und Statistiken mit MyTischtennis.de.",
        "home.authenticatedFeatures.pdfExport" to "PDF-Export",
        "home.authenticatedFeatures.pdfExportDesc" to "Exportiere Trainingstage als PDF mit Teilnehmern, Aktivitäten und Statistiken.",
        "home.authenticatedFeatures.statistics" to "Statistiken & Auswertungen",
        "home.authenticatedFeatures.statisticsDesc" to "Erhalte detaillierte Trainings- und Teilnahmeübersichten sowie Aktivitätsstatistiken.",
        "home.authenticatedFeatures.teamManagement" to "Team-Management",
        "home.authenticatedFeatures.teamManagementDesc" to "Verwalte Mannschaften, Ligen, Spielpläne und Ergebnisse für deinen Verein.",
        "home.authenticatedFeatures.trainingGroups" to "Trainingsgruppen & Zeiten",
        "home.authenticatedFeatures.trainingGroupsDesc" to "Organisiere Trainingsgruppen, definiere Trainingszeiten und verwalte Gruppenzuordnungen.",
        "home.faq" to "Häufige Fragen",
        "home.faqFree.answer" to "Ja, du kannst kostenlos starten. Erweiterungen können später folgen.",
        "home.faqFree.question" to "Ist die Nutzung kostenlos?",
        "home.faqInstallation.answer" to "Nein, es handelt sich um eine Web‑Anwendung. Du nutzt sie direkt im Browser – auf Desktop, Tablet und Smartphone.",
        "home.faqInstallation.question" to "Benötige ich eine Installation?",
        "home.faqMyTischtennis.answer" to "Ja, nach der Einrichtung synchronisiert sich die Anwendung automatisch mit MyTischtennis.de und importiert Spielergebnisse und Statistiken.",
        "home.faqMyTischtennis.question" to "Funktioniert die MyTischtennis-Integration automatisch?",
        "home.faqPermissions.answer" to "Es gibt vier Rollen: Admin, Trainer, Mannschaftsführer und Mitglied. Jede Rolle hat spezifische Berechtigungen, die individuell angepasst werden können.",
        "home.faqPermissions.question" to "Wie funktioniert das Berechtigungssystem?",
        "home.faqPrivacy.answer" to "Wir setzen auf Datensparsamkeit, transparente Freigaben, rollenbasierte Zugriffe und vollständiges Aktivitätsprotokoll. Die Anwendung ist DSGVO‑konform.",
        "home.faqPrivacy.question" to "Wie steht es um den Datenschutz?",
        "home.faqTournaments.answer" to "Du kannst interne Turniere, offene Turniere und offizielle Turniere (z.B. von Verbänden) verwalten. Offizielle Turniere können importiert werden.",
        "home.faqTournaments.question" to "Welche Turnierarten werden unterstützt?",
        "home.faqTrainingGroups.answer" to "Ja, du kannst Trainingsgruppen anlegen, Trainingszeiten definieren und Mitglieder den Gruppen zuordnen. Das Trainingstagebuch schlägt automatisch passende Gruppen und Zeiten vor.",
        "home.faqTrainingGroups.question" to "Kann ich Trainingsgruppen und -zeiten verwalten?",
        "home.features.activityLog" to "Aktivitätsprotokoll",
        "home.features.activityLogDesc" to "Vollständiges Logging aller Aktionen für Transparenz und Nachvollziehbarkeit.",
        "home.features.keepDiary" to "Trainingstagebuch führen",
        "home.features.keepDiaryDesc" to "Dokumentiere Inhalte, Umfang und Anwesenheiten jeder Einheit – nachvollziehbar und strukturiert.",
        "home.features.manageMembers" to "Mitglieder verwalten",
        "home.features.manageMembersDesc" to "Erstelle Mitgliedsprofile, bilde Gruppen und halte Kontakt‑ und Freigabestände aktuell.",
        "home.features.myTischtennisIntegration" to "MyTischtennis-Integration",
        "home.features.myTischtennisIntegrationDesc" to "Automatische Synchronisation mit MyTischtennis.de für Spielergebnisse und Statistiken.",
        "home.features.officialTournaments" to "Offizielle Turniere",
        "home.features.officialTournamentsDesc" to "Importiere und verwalte offizielle Turniere, verwalte Teilnahmen und Ergebnisse.",
        "home.features.organizeSchedules" to "Spielpläne organisieren",
        "home.features.organizeSchedulesDesc" to "Plane Spiele, Turniere und Veranstaltungen inklusive Gruppen, Runden und Ergebnissen.",
        "home.features.pdfExport" to "PDF-Export",
        "home.features.pdfExportDesc" to "Exportiere Trainingstage als PDF mit Teilnehmern, Aktivitäten und Statistiken.",
        "home.features.permissionSystem" to "Berechtigungssystem",
        "home.features.permissionSystemDesc" to "Rollenbasierte Zugriffe (Admin, Trainer, Mannschaftsführer, Mitglied) mit individuellen Berechtigungen.",
        "home.features.predefinedActivities" to "Vordefinierte Aktivitäten",
        "home.features.predefinedActivitiesDesc" to "Nutze Vorlagen für wiederkehrende Übungen und beschleunige deine Dokumentation.",
        "home.features.security" to "Sicherheit & DSGVO",
        "home.features.securityDesc" to "Datenschutzfreundliche Architektur, Freigaben durch Mitglieder und transparente Zugriffe.",
        "home.features.statistics" to "Statistiken & Auswertung",
        "home.features.statisticsDesc" to "Erhalte Trainings‑ und Teilnahmeübersichten, erkenne Entwicklung und plane gezielt.",
        "home.features.teamManagement" to "Team-Management",
        "home.features.teamManagementDesc" to "Verwalte Mannschaften, Ligen, Spielpläne und Ergebnisse für deinen Verein.",
        "home.features.trainingGroups" to "Trainingsgruppen & Zeiten",
        "home.features.trainingGroupsDesc" to "Organisiere Trainingsgruppen, definiere Trainingszeiten und verwalte Gruppenzuordnungen.",
        "home.forWhom" to "Für wen ist das TrainingsTagebuch?",
        "home.forWhomText" to "Das TrainingsTagebuch ist die umfassende Plattform für Vereine, Abteilungen und Trainerteams. Es vereint Mitgliederverwaltung mit Trainingsgruppen und -zeiten, detailliertes Trainingstagebuch, umfassende Turnierorganisation (interne, offene und offizielle Turniere), Team-Management mit Liga-Integration, MyTischtennis-Synchronisation, aussagekräftige Statistiken und Auswertungen sowie ein flexibles Berechtigungssystem in einer modernen Web‑Anwendung. Durch klare Rollen (Admin, Trainer, Mannschaftsführer, Mitglied) und individuelle Berechtigungen behalten Verantwortliche die Kontrolle, während Mitglieder selbstbestimmt mitwirken können. Ideal für Mannschafts‑, Racket‑ und Individualsportarten – vom Nachwuchs bis zum Leistungsbereich. DSGVO‑konform mit transparenten Freigaben und vollständigem Aktivitätsprotokoll.",
        "home.haveAccount" to "Ich habe schon einen Account",
        "home.heroFeatures.memberManagement" to "Mitglieder- und Gruppenverwaltung",
        "home.heroFeatures.myTischtennis" to "MyTischtennis-Integration",
        "home.heroFeatures.statistics" to "Statistiken & Auswertungen",
        "home.heroFeatures.teamManagement" to "Team-Management & Ligen",
        "home.heroFeatures.tournaments" to "Turniere (intern, offen, offiziell)",
        "home.heroFeatures.trainingDiary" to "Trainingstagebuch & Dokumentation",
        "home.heroFeatures.trainingGroups" to "Trainingsgruppen & Trainingszeiten",
        "home.heroSubtitle" to "Das TrainingsTagebuch ist die umfassende Lösung für Vereine: Mitgliederverwaltung, Trainingsgruppen, Trainingszeiten, Trainingstagebuch, Turnierorganisation, Team-Management, MyTischtennis-Integration, Statistiken und mehr – DSGVO‑konform und einfach zu bedienen.",
        "home.heroTitle" to "Vereinsverwaltung, Trainingsplanung und Turniere – alles an einem Ort",
        "home.howItWorks" to "So funktioniert es",
        "home.registerNow" to "Jetzt kostenlos registrieren",
        "home.rolesAndPrivacy" to "Rollen, Berechtigungen & DSGVO",
        "home.startFree" to "Kostenlos starten",
        "home.step1.description" to "Lege kostenlos einen Account an und aktiviere ihn per E‑Mail.",
        "home.step1.title" to "Registrieren",
        "home.step2.description" to "Erstelle deinen Verein, lade Mitglieder ein und richte Gruppen ein.",
        "home.step2.title" to "Verein anlegen",
        "home.step3.description" to "Plane Termine, dokumentiere Trainings und verfolge Fortschritte.",
        "home.step3.title" to "Planen & dokumentieren",
        "home.welcome" to "Willkommen im TrainingsTagebuch",
        "home.welcomeBack" to "Herzlich Willkommen zurück! Du bist erfolgreich eingeloggt.",
        "home.whatCanYouDo" to "Was kannst du mit dem TrainingsTagebuch machen?",
        "imageDialog.close" to "Schliessen",
        "imageDialog.noImageAvailable" to "Kein Bild verfügbar",
        "imageDialog.title" to "Bild",
        "imageViewer.camera" to "Kamera",
        "imageViewer.delete" to "Löschen",
        "imageViewer.deleteImage" to "Bild löschen",
        "imageViewer.nextImage" to "Nächstes Bild",
        "imageViewer.noImageAvailable" to "Kein Bild verfügbar",
        "imageViewer.previousImage" to "Vorheriges Bild",
        "imageViewer.rotateLeft" to "90° links drehen",
        "imageViewer.rotateRight" to "90° rechts drehen",
        "imageViewer.selectFiles" to "Dateien auswählen",
        "imageViewer.setAsPrimary" to "Als Hauptbild festlegen",
        "imageViewer.setAsPrimaryButton" to "Als Hauptbild setzen",
        "imprint.contact" to "Kontakt",
        "imprint.serviceProvider" to "Diensteanbieter",
        "imprint.title" to "Impressum",
        "languages.de" to "Deutsch (Dütsch)",
        "languages.de-CH" to "Schwiizerdütsch",
        "languages.en-AU" to "English (Englisch (AU))",
        "languages.en-GB" to "English (Englisch (GB))",
        "languages.en-US" to "English (Englisch (US))",
        "languages.es" to "Español (Spanisch)",
        "languages.fil" to "Filipino",
        "languages.fr" to "Français (Französisch)",
        "languages.it" to "Italiano (Italienisch)",
        "languages.ja" to "日本語 (Japanisch)",
        "languages.pl" to "Polski (Polnisch)",
        "languages.th" to "ไทย (Thai)",
        "languages.tl" to "Tagalog",
        "languages.zh" to "中文 (Chinesisch)",
        "legal.backToHome" to "Zur Startseite",
        "legal.imprint" to "Impressum",
        "legal.privacyPolicy" to "Datenschutzerklärung",
        "logs.actions" to "Aktionen",
        "logs.all" to "Alle",
        "logs.apiRequests" to "API-Requests",
        "logs.applyFilters" to "Filter anwenden",
        "logs.backend" to "Backend",
        "logs.clearFilters" to "Zurücksetzen",
        "logs.cronJobs" to "Cron-Jobs",
        "logs.details" to "Details",
        "logs.displayed" to "angezeigt",
        "logs.displayedLabel" to "Angezeigt",
        "logs.error" to "Fehler",
        "logs.errorLabel" to "Fehler",
        "logs.errorLoading" to "Fehler beim Laden der Logs",
        "logs.executionTime" to "Ausführungszeit",
        "logs.from" to "Von",
        "logs.httpMethod" to "HTTP-Methode",
        "logs.justNow" to "gerade eben",
        "logs.loadingLogs" to "Lade Logs...",
        "logs.logDetails" to "Log-Details",
        "logs.logDetailsLabels.error" to "Fehler",
        "logs.logDetailsLabels.executionTime" to "Ausführungszeit",
        "logs.logDetailsLabels.ip" to "IP",
        "logs.logDetailsLabels.method" to "Methode",
        "logs.logDetailsLabels.path" to "Pfad",
        "logs.logDetailsLabels.requestBody" to "Request Body",
        "logs.logDetailsLabels.responseBody" to "Response Body",
        "logs.logDetailsLabels.schedulerJob" to "Scheduler-Job",
        "logs.logDetailsLabels.status" to "Status",
        "logs.logDetailsLabels.time" to "Zeit",
        "logs.logDetailsLabels.type" to "Typ",
        "logs.logType" to "Log-Typ",
        "logs.logTypeLabels.api_request" to "API-Request",
        "logs.logTypeLabels.cron_job" to "Cron-Job",
        "logs.logTypeLabels.manual" to "Manuell",
        "logs.logTypeLabels.scheduler" to "Scheduler",
        "logs.manual" to "Manuelle Ausführungen",
        "logs.method" to "Methode",
        "logs.minutesAgo" to "vor {n} Minuten",
        "logs.mytischtennis" to "myTischtennis",
        "logs.next" to "Nächste",
        "logs.of" to "von",
        "logs.ownBackend" to "Eigenes Backend",
        "logs.page" to "Seite",
        "logs.path" to "Pfad",
        "logs.pathPlaceholder" to "z.B. /api/diary",
        "logs.previous" to "Vorherige",
        "logs.recordsFound" to "Datensätze gefunden",
        "logs.scheduler" to "Scheduler",
        "logs.secondsAgo" to "vor {n} Sekunden",
        "logs.status" to "Status",
        "logs.subtitle" to "Übersicht über alle API-Requests, Responses und Ausführungen",
        "logs.successfullyLoaded" to "Erfolgreich geladen",
        "logs.time" to "Zeit",
        "logs.title" to "System-Logs",
        "logs.to" to "Bis",
        "logs.total" to "Gesamt",
        "logs.type" to "Typ",
        "matchReport.analyzeNuscore" to "nuscore analysieren",
        "matchReport.createLocalCopy" to "Lokale Kopie erstellen",
        "matchReport.hideAnalyzer" to "Analyzer verstecken",
        "matchReportApi.availablePlayers" to "Verfügbare Spieler",
        "matchReportApi.bothTeamsAppeared" to "Beide Mannschaften angetreten",
        "matchReportApi.clickToRemove" to "Klicken zum Entfernen",
        "matchReportApi.completed" to "Abgeschlossen",
        "matchReportApi.completion" to "Abschluss",
        "matchReportApi.endTime" to "Endzeit",
        "matchReportApi.errorLoading" to "Fehler beim Laden der Daten",
        "matchReportApi.general" to "Allgemein",
        "matchReportApi.greeting" to "Begrüssung",
        "matchReportApi.guestLineup" to "Aufstellung Gast",
        "matchReportApi.guestPin" to "PIN Gastverein",
        "matchReportApi.guestTeamNotAppeared" to "Gastmannschaft {team} nicht angetreten",
        "matchReportApi.homeLineup" to "Aufstellung Heim",
        "matchReportApi.homePin" to "PIN Heimverein",
        "matchReportApi.homeTeamNotAppeared" to "Heimmannschaft {team} nicht angetreten",
        "matchReportApi.loading" to "Lade Spielberichtsdaten...",
        "matchReportApi.noLineupData" to "Keine Aufstellungsdaten verfügbar",
        "matchReportApi.notAppeared" to "Nicht angetreten",
        "matchReportApi.pending" to "Ausstehend",
        "matchReportApi.pinInput" to "PIN-Eingabe",
        "matchReportApi.playSystem" to "Spielsystem",
        "matchReportApi.rank" to "Rang",
        "matchReportApi.result" to "Ergebniserfassung",
        "matchReportApi.retry" to "Erneut versuchen",
        "matchReportApi.selectedPlayers" to "Ausgewählte Spieler",
        "matchReportApi.setCurrentTime" to "Aktuelle Zeit setzen",
        "matchReportApi.signLineup" to "Aufstellung signieren",
        "matchReportApi.startTime" to "Startzeit",
        "matchReportApi.status" to "Status",
        "matchReportApi.vs" to "vs",
        "matchReportHeaderActions.copied" to "Kopiert!",
        "matchReportHeaderActions.copyError" to "Fehler beim Kopieren der PIN",
        "matchReportHeaderActions.copyPin" to "PIN kopieren",
        "matchReportHeaderActions.copyPinTitle" to "PIN in Zwischenablage kopieren",
        "matchReportHeaderActions.insertPin" to "PIN einfügen",
        "matchReportHeaderActions.insertPinTitle" to "PIN automatisch einfügen",
        "matchReportHeaderActions.noPinAvailable" to "Keine PIN verfügbar",
        "memberActivities.activity" to "Übung",
        "memberActivities.all" to "Alle",
        "memberActivities.close" to "Schliessen",
        "memberActivities.dates" to "Daten",
        "memberActivities.frequency" to "Häufigkeit",
        "memberActivities.last3Months" to "Letzte 3 Monate",
        "memberActivities.last4Weeks" to "Letzte 4 Wochen",
        "memberActivities.last6Months" to "Letztes halbes Jahr",
        "memberActivities.lastYear" to "Letztes Jahr",
        "memberActivities.loading" to "Lade Übungen...",
        "memberActivities.more" to "weitere",
        "memberActivities.noActivities" to "Keine Übungen im gewählten Zeitraum gefunden.",
        "memberActivities.period" to "Zeitraum",
        "memberActivities.showLess" to "weniger anzeigen",
        "memberActivities.title" to "Übungen von",
        "memberGallery.imageSize" to "Bildgrösse",
        "memberGallery.loading" to "Galerie wird geladen…",
        "memberGallery.noImage" to "Kein Bild",
        "memberGallery.noMembersWithImages" to "Keine Mitglieder mit Bildern gefunden.",
        "memberGallery.title" to "Mitglieder-Galerie",
        "memberGallery.titleWithDate" to "Mitglieder-Galerie - Klicken Sie auf ein Bild, um als Teilnehmer hinzuzufügen",
        "memberNotes.add" to "Hinzufügen",
        "memberNotes.memberImage" to "Mitgliedsbild",
        "memberNotes.newNote" to "Neue Notiz",
        "memberNotes.notes" to "Notizen",
        "memberNotes.phone" to "Telefon-Nr.",
        "memberNotes.selectTags" to "Tags auswählen",
        "memberNotes.tags" to "Tags",
        "memberNotes.title" to "Notizen für",
        "members.actions" to "Aktionen",
        "members.active" to "Aktiv",
        "members.activeMembers" to "Aktive Mitglieder",
        "members.addEmail" to "E-Mail-Adresse hinzufügen",
        "members.addGroup" to "Gruppe hinzufügen...",
        "members.addPhone" to "Telefonnummer hinzufügen",
        "members.address" to "Adresse",
        "members.adultReleaseApproved" to "Freigabe Erwachsene",
        "members.adultReserveApproved" to "Ersatz bei Erwachsenen",
        "members.adults" to "Erwachsene (18+)",
        "members.age" to "Alter",
        "members.ageFromPlaceholder" to "von",
        "members.ageGroup" to "Altersklasse",
        "members.ageRange" to "Alter von - bis",
        "members.ageToPlaceholder" to "bis",
        "members.batchFormsMarkedEmpty" to "In der aktuellen Auswahl gibt es keine ungeprüften Formulare.",
        "members.batchFormsMarkedSuccess" to "{count} Formular(e) als geprüft markiert.",
        "members.batchMarkedRegularEmpty" to "In der aktuellen Auswahl gibt es keine Probe-Mitglieder.",
        "members.batchMarkedRegularSuccess" to "{count} Probe-Mitglied(er) als regulär markiert.",
        "members.batchPartialFailure" to "{success} erfolgreich, {failed} fehlgeschlagen.",
        "members.birthdate" to "Geburtsdatum",
        "members.bulkActions" to "Sammelaktionen",
        "members.camera" to "Kamera",
        "members.change" to "Ändern",
        "members.city" to "Ort",
        "members.clearFields" to "Felder leeren",
        "members.clearFilters" to "Filter zurücksetzen",
        "members.clickTtRequestAction" to "Spielberechtigung in click-TT beantragen",
        "members.clickTtRequestConfirm" to "Soll für {name} der automatisierte Click-TT-Antrag gestartet werden?",
        "members.clickTtRequestError" to "Der Click-TT-Antrag konnte nicht eingereicht werden.",
        "members.clickTtRequestFailedLog" to "Click-TT-Antrag fehlgeschlagen",
        "members.clickTtRequestHint" to "Der Antrag wird im Backend automatisiert durch den Click-TT-Workflow geführt.",
        "members.clickTtRequestPending" to "Click-TT-Antrag läuft",
        "members.clickTtRequestPendingShort" to "Läuft ...",
        "members.clickTtRequestShort" to "Click-TT",
        "members.clickTtRequestSuccess" to "Bitte loggen Sie sich noch auf click-tt ein und senden Sie den Antrag ab.",
        "members.clickTtRequestTitle" to "Click-TT-Antrag starten",
        "members.clickTtSubmitted" to "Click-TT gestellt",
        "members.closeEditor" to "Editor schliessen",
        "members.composeEmail" to "E-Mail vorbereiten",
        "members.contact" to "Kontakt",
        "members.copyContactSummary" to "Kontaktübersicht kopieren",
        "members.copyContactSummarySuccess" to "Kontaktübersicht in die Zwischenablage kopiert.",
        "members.copyEmails" to "E-Mails kopieren",
        "members.copyEmailsEmpty" to "In der aktuellen Auswahl gibt es keine E-Mail-Adressen.",
        "members.copyEmailsSuccess" to "E-Mail-Liste in die Zwischenablage kopiert.",
        "members.copyPhones" to "Telefone kopieren",
        "members.copyPhonesEmpty" to "In der aktuellen Auswahl gibt es keine Telefonnummern.",
        "members.copyPhonesSuccess" to "Telefonliste in die Zwischenablage kopiert.",
        "members.create" to "Anlegen",
        "members.createNewMember" to "Neues Mitglied anlegen",
        "members.dataIssueAddress" to "Adresse fehlt",
        "members.dataIssueBirthdate" to "Geburtsdatum fehlt",
        "members.dataIssueCity" to "Ort fehlt",
        "members.dataIssueEmail" to "E-Mail fehlt",
        "members.dataIssueGender" to "Geschlecht ungeklärt",
        "members.dataIssuePhone" to "Telefon fehlt",
        "members.dataIssuePostalCode" to "PLZ fehlt",
        "members.dataIssueStreet" to "Strasse fehlt",
        "members.dataIssueTrainingGroup" to "Trainingsgruppe fehlt",
        "members.dataQuality" to "Datenqualität",
        "members.dataQualityComplete" to "Daten vollständig",
        "members.deactivateMember" to "Mitglied deaktivieren",
        "members.deactivateMemberConfirm" to "Möchten Sie \"{name}\" wirklich deaktivieren?",
        "members.deactivateMemberTitle" to "Mitglied deaktivieren",
        "members.deleteImageConfirm" to "Möchten Sie dieses Bild wirklich löschen?",
        "members.deleteImageTitle" to "Bild löschen",
        "members.editHint" to "Ein Klick auf eine Zeile öffnet den Editor.",
        "members.editMember" to "Mitglied bearbeiten",
        "members.editorAssignTrainingGroupHint" to "Bitte mindestens eine Trainingsgruppe zuordnen.",
        "members.editorCreateHint" to "Neues Mitglied anlegen und Kontaktdaten direkt erfassen.",
        "members.editorEditHint" to "Daten von {name} bearbeiten.",
        "members.editorRecommendedEntry" to "Empfohlener Eintrag",
        "members.emailAddress" to "E-Mail-Adresse",
        "members.emailAddressShort" to "Email-Adresse",
        "members.emails" to "E-Mail-Adressen",
        "members.errorAddingToGroup" to "Fehler beim Hinzufügen zur Gruppe",
        "members.errorDeactivatingMember" to "Fehler beim Deaktivieren des Mitglieds",
        "members.errorDeletingImage" to "Bild konnte nicht gelöscht werden",
        "members.errorLoadingImage" to "Fehler beim Laden des Bildes",
        "members.errorLoadingMembers" to "Laden der Mitgliederliste fehlgeschlagen.",
        "members.errorLoadingTrainingParticipations" to "Fehler beim Laden der Trainingsteilnahmen",
        "members.errorMarkingForm" to "Fehler beim Markieren des Formulars.",
        "members.errorRemovingFromGroup" to "Fehler beim Entfernen aus der Gruppe",
        "members.errorRemovingTestMembership" to "Fehler beim Entfernen der Testmitgliedschaft.",
        "members.errorRotatingImage" to "Fehler beim Drehen des Bildes",
        "members.errorSavingMember" to "Fehler beim Speichern des Mitglieds",
        "members.errorSettingPrimaryImage" to "Hauptbild konnte nicht gesetzt werden",
        "members.errorTransfer" to "Fehler bei der Übertragung",
        "members.errorUpdatingRatings" to "Fehler beim Aktualisieren der TTR/QTTR-Werte",
        "members.errorUploadingImage" to "Bild konnte nicht hochgeladen werden",
        "members.exercises" to "Übungen",
        "members.exportCsv" to "CSV exportieren",
        "members.exportCsvFile" to "mitglieder-auswahl.csv",
        "members.exportEmails" to "E-Mail",
        "members.exportMembersSelected" to "Mitglieder aktuell ausgewählt",
        "members.exportPhones" to "Telefon",
        "members.exportPreview" to "Exportvorschau",
        "members.exportPreviewEmpty" to "Keine Mitglieder in der aktuellen Auswahl",
        "members.exportPreviewNames" to "Vorschau",
        "members.exportReachableByEmail" to "mit E-Mail-Adresse",
        "members.exportReachableByPhone" to "mit Telefonnummer",
        "members.firstName" to "Vorname",
        "members.formHandedOver" to "Mitgliedsformular ausgehändigt",
        "members.formMarkedAsHandedOver" to "Mitgliedsformular als ausgehändigt markiert.",
        "members.gender" to "Geschlecht",
        "members.genderDiverse" to "Divers",
        "members.genderFemale" to "Weiblich",
        "members.genderMale" to "Männlich",
        "members.genderUnknown" to "Unbekannt",
        "members.generatePhoneList" to "Telefonliste generieren",
        "members.groupPhotoCrop" to "Gruppenfoto verarbeiten",
        "members.groupPhotoCropSaved" to "Mitgliedsfoto aus Gruppenfoto gespeichert.",
        "members.image" to "Bild",
        "members.imageDeleted" to "Bild wurde gelöscht.",
        "members.imageInternet" to "Bild (Inet?)",
        "members.imagePreview" to "Vorschau des Mitgliedsbildes",
        "members.imageUpdated" to "Bild wurde aktualisiert",
        "members.inactive" to "inaktiv",
        "members.inactiveMembers" to "Inaktive Mitglieder",
        "members.j11" to "J11",
        "members.j13" to "J13",
        "members.j15" to "J15",
        "members.j17" to "J17 (17 und jünger)",
        "members.j19" to "J19",
        "members.j9" to "J9",
        "members.lastName" to "Nachname",
        "members.lastTrainingFilter" to "Letztes Training",
        "members.lastTrainingFilterHasDate" to "Mit erfasstem Datum",
        "members.lastTrainingFilterHint" to "AK-Spalte: laufende und nächste Saison. Weitere Details (letztes Training, Teilnahmen) auch beim Überfahren der Zeile.",
        "members.lastTrainingFilterNoDate" to "Ohne letztes Training",
        "members.lastTrainingFilterNotInTraining" to "„Nicht mehr im Training“",
        "members.loadingMembers" to "Lade Mitglieder...",
        "members.m11" to "M11",
        "members.m13" to "M13",
        "members.m15" to "M15",
        "members.m19" to "M19",
        "members.m9" to "M9",
        "members.markFormReceived" to "Formular geprüft",
        "members.markFormsForSelection" to "Formulare für Auswahl prüfen",
        "members.markRegular" to "Als regulär markieren",
        "members.markRegularForSelection" to "Auswahl als regulär markieren",
        "members.memberDeactivated" to "Mitglied deaktiviert",
        "members.memberDetails" to "Mitgliedsdetails",
        "members.memberFormHandedOver" to "Mitgliedsformular ausgehändigt",
        "members.memberImage" to "Mitgliedsbild",
        "members.memberImages" to "Mitgliedsbilder",
        "members.memberInfo" to "Mitglieder-Info",
        "members.memberScope" to "Mitgliedsbereich",
        "members.missingTtrHistoryId" to "Keine myTischtennis-ID hinterlegt",
        "members.name" to "Name, Vorname",
        "members.newMember" to "Neues Mitglied",
        "members.noAddressShort" to "Keine Adresse",
        "members.noEmailShort" to "Keine E-Mail",
        "members.noGroupsAssigned" to "Keine Gruppen zugeordnet",
        "members.noGroupsAvailable" to "Keine Gruppen verfügbar",
        "members.noOpenTasks" to "Keine offenen Aufgaben",
        "members.noPhoneShort" to "Kein Telefon",
        "members.notes" to "Notizen",
        "members.noTestMembership" to "Keine Testmitgliedschaft mehr",
        "members.notInTrainingTooltip" to "Seit {weeks} Trainingswochen ohne Teilnahme",
        "members.onlyActiveMembers" to "Es werden nur aktive Mitglieder ausgegeben",
        "members.openTasks" to "Offene Aufgaben",
        "members.parent" to "Elternteil",
        "members.parentFallback" to "Elternteil",
        "members.parentName" to "Name (z.B. Mutter, Vater)",
        "members.phoneList" to "Telefonliste.pdf",
        "members.phoneListForSelection" to "Telefonliste für Auswahl",
        "members.phoneListSelectionFile" to "Telefonliste-Auswahl.pdf",
        "members.phoneNumber" to "Telefonnummer",
        "members.phoneNumberShort" to "Telefon-Nr.",
        "members.phones" to "Telefonnummern",
        "members.picsInInternetAllowed" to "Pics in Internet erlaubt",
        "members.postalCode" to "PLZ",
        "members.previewLastTraining" to "Letztes Training",
        "members.previewNoLastTraining" to "Noch keine Teilnahme",
        "members.primary" to "Primär",
        "members.primaryImageUpdated" to "Hauptbild wurde aktualisiert.",
        "members.remove" to "Entfernen",
        "members.resultsVisible" to "Mitglieder sichtbar",
        "members.rowTooltipSeparator" to "·",
        "members.scopeActive" to "Aktiv",
        "members.scopeActiveDataIncomplete" to "Aktiv + Daten unvollständig",
        "members.scopeActiveTest" to "Aktiv + Probe",
        "members.scopeAll" to "Alle",
        "members.scopeDataIncomplete" to "Daten unvollständig",
        "members.scopeInactive" to "Inaktiv",
        "members.scopeNeedsForm" to "Formular ungeprüft",
        "members.scopeNotTraining" to "Nicht mehr im Training",
        "members.scopeTest" to "Probe",
        "members.search" to "Suche",
        "members.searchAndFilter" to "Suche und Filter",
        "members.searchPlaceholder" to "Name, Ort, Telefon oder E-Mail suchen",
        "members.selectFile" to "Datei auswählen",
        "members.showInactiveMembers" to "Inaktive Mitglieder anzeigen",
        "members.showTrainingParticipationsColumn" to "Spalte „Trainingsteilnahmen“ anzeigen",
        "members.showTtrHistory" to "TTR-Historie anzeigen",
        "members.sixOrMoreParticipations" to "6 oder mehr Trainingsteilnahmen",
        "members.sortAge" to "Alter",
        "members.sortBirthday" to "Geburtstag",
        "members.sortBy" to "Sortieren nach",
        "members.sortFirstName" to "Vorname",
        "members.sortLastName" to "Nachname",
        "members.sortLastTraining" to "Letztes Training",
        "members.sortOpenTasks" to "Offene Aufgaben",
        "members.sortQttr" to "QTTR-Wert",
        "members.status" to "Status",
        "members.street" to "Strasse",
        "members.subtitle" to "Mitglieder suchen, filtern und direkt bearbeiten.",
        "members.taskActionMarkRegular" to "Regulär setzen",
        "members.taskActionRequest" to "Anfragen",
        "members.taskActionReview" to "Öffnen",
        "members.taskActionVerify" to "Prüfen",
        "members.taskAssignTrainingGroup" to "Trainingsgruppe zuordnen",
        "members.taskCheckClickTt" to "Click-TT-Spielberechtigung prüfen",
        "members.taskCheckDataQuality" to "Datenqualität prüfen",
        "members.taskCheckTrainingStatus" to "Trainingsstatus prüfen",
        "members.taskReviewTrialStatus" to "Probe-Status prüfen",
        "members.taskVerifyForm" to "Formular prüfen",
        "members.testMember" to "Testm.",
        "members.testMembers" to "Testmitglieder",
        "members.testMembership" to "Testmitgliedschaft",
        "members.testMembershipRemoved" to "Testmitgliedschaft entfernt.",
        "members.threeOrMoreParticipations" to "3 oder mehr Trainingsteilnahmen",
        "members.title" to "Mitglieder",
        "members.toggleSortDirection" to "Sortierrichtung wechseln",
        "members.trainingGroups" to "Trainingsgruppen",
        "members.trainingParticipations" to "Trainingsteilnahmen",
        "members.transferErrorTitle" to "Fehler bei der Übertragung",
        "members.transferMembers" to "Mitglieder übertragen",
        "members.transferSuccessTitle" to "Übertragung erfolgreich",
        "members.ttAdult" to "Erwachsene (kein Jugend nach Stichtag)",
        "members.ttAgeClassCol" to "AK (TT)",
        "members.ttFilterGroupJ" to "Mädchen & Jungen (gemischt)",
        "members.ttFilterGroupM" to "Mädchen (nur weiblich)",
        "members.ttrQttr" to "TTR / QTTR",
        "members.ttSeasonCurrentTag" to "aktuell",
        "members.ttSeasonFilter" to "Saison (Stichtag)",
        "members.ttSeasonNextTag" to "kommend",
        "members.ttStichtagHint" to "Stichtag 1.1. (DTTB). Jungen: nur J-Klassen. Mädchen: J und M möglich.",
        "members.updateRatings" to "TTR/QTTR von myTischtennis aktualisieren",
        "members.updating" to "Aktualisiere...",
        "members.visibleMembers" to "Sichtbare Mitglieder",
        "members.wantsToPlay" to "Will spiele",
        "memberSelection.close" to "Schliessen",
        "memberSelection.deselectAll" to "Alle abwählen",
        "memberSelection.generatePdf" to "PDF erzeugen",
        "memberSelection.members" to "Mitglieder",
        "memberSelection.noRecommendations" to "Keine passenden Empfehlungen gefunden.",
        "memberSelection.recommendations" to "Empfehlungen",
        "memberSelection.selectAll" to "Alle auswählen",
        "memberSelection.title" to "Mitglieder auswählen",
        "memberTransfer.additionalField" to "Zusätzliches Feld",
        "memberTransfer.additionalFieldExample1" to "Zusätzliches Feld (z.B. client_id)",
        "memberTransfer.additionalFieldExample2" to "Zusätzliches Feld (z.B. client_secret)",
        "memberTransfer.analyzeAndImport" to "Template analysieren und importieren",
        "memberTransfer.availablePlaceholders" to "Verfügbare Platzhalter",
        "memberTransfer.bulkMode" to "Bulk-Import-Modus (alle Mitglieder auf einmal übertragen)",
        "memberTransfer.bulkModeActive" to "Bulk-Modus aktiv",
        "memberTransfer.bulkModeActiveDescription" to "Das Template definiert das Format für ein einzelnes Mitglied. Die Mitglieder werden automatisch in ein Array gewrappt. Die äussere Struktur können Sie optional im \"Bulk-Wrapper-Template\" definieren (siehe unten).",
        "memberTransfer.bulkModeHint" to "Wenn aktiviert, werden alle Mitglieder in einem Request als Array übertragen.",
        "memberTransfer.bulkWrapperDescription" to "Optional können Sie die äussere Struktur definieren, in die die Mitglieder-Array eingefügt wird. Verwenden Sie PLACEHOLDER_MEMBERS als Platzhalter für das Array der Mitglieder.",
        "memberTransfer.bulkWrapperNote" to "Hinweis: Wenn kein Wrapper-Template angegeben wird, wird automatisch ein members-Array verwendet.",
        "memberTransfer.bulkWrapperTemplate" to "Bulk-Wrapper-Template (optional)",
        "memberTransfer.bulkWrapperWhat" to "Was ist ein Bulk-Wrapper-Template?",
        "memberTransfer.configDeleted" to "Konfiguration erfolgreich gelöscht!",
        "memberTransfer.configInfo" to "Konfigurieren Sie hier die Einstellungen für die Übertragung von Mitgliedern an externe Systeme. Diese Einstellungen werden vereinsspezifisch gespeichert.",
        "memberTransfer.configSaved" to "Konfiguration erfolgreich gespeichert!",
        "memberTransfer.confirmDelete" to "Konfiguration löschen",
        "memberTransfer.confirmDeleteMessage" to "Möchten Sie die Konfiguration wirklich löschen?",
        "memberTransfer.deleteConfig" to "Konfiguration löschen",
        "memberTransfer.deleting" to "Lösche...",
        "memberTransfer.errorDeleting" to "Fehler beim Löschen",
        "memberTransfer.errorLoading" to "Fehler beim Laden der Konfiguration",
        "memberTransfer.errorParsingTemplate" to "Fehler beim Parsen des Templates",
        "memberTransfer.errorSaving" to "Fehler beim Speichern",
        "memberTransfer.example" to "Beispiel",
        "memberTransfer.exampleFormData" to "Beispiel für Form-Data Format",
        "memberTransfer.exampleJson" to "Beispiel für JSON-Format (empfohlen)",
        "memberTransfer.exampleXml" to "Beispiel für XML-Format",
        "memberTransfer.formDataHint" to "Für Form-Data verwenden Sie ein einfaches Text-Template mit Zeilen im Format feldname=platzhalter:",
        "memberTransfer.httpMethod" to "HTTP-Methode",
        "memberTransfer.importTemplate" to "Template aus vollständigem Beispiel importieren",
        "memberTransfer.importTemplateHint" to "Fügen Sie ein vollständiges Beispiel-Template (mit Beispiel-Mitgliedern) ein. Das System erkennt automatisch das Mitglied-Template und das Bulk-Wrapper-Template.",
        "memberTransfer.importTemplatePlaceholder" to "Fügen Sie hier ein vollständiges Beispiel-Template ein, z.B.:\nLBRACE\n  DQUOTEmembersDQUOTE: [\n    LBRACE\n      DQUOTEfirstNameDQUOTE: DQUOTEMaxDQUOTE,\n      DQUOTElastNameDQUOTE: DQUOTEMustermannDQUOTE,\n      DQUOTEemailDQUOTE: DQUOTEmaxATexample.comDQUOTE\n    RBRACE\n  ]\nRBRACE",
        "memberTransfer.invalidJson" to "Bitte stellen Sie sicher, dass gültiges JSON verwendet wird.",
        "memberTransfer.invalidTemplateFormat" to "Ungültiges Template-Format",
        "memberTransfer.loadingConfig" to "Konfiguration wird geladen...",
        "memberTransfer.loginConfiguration" to "Login-Konfiguration",
        "memberTransfer.loginData" to "Login-Daten",
        "memberTransfer.loginEndpointHint" to "Optional: Relativer Pfad zum Login-Endpoint (z.B. /api/auth/login)",
        "memberTransfer.loginEndpointPath" to "Login-Endpoint Pfad",
        "memberTransfer.loginEndpointPlaceholder" to "/api/auth/login",
        "memberTransfer.loginFormat" to "Login-Format",
        "memberTransfer.membersArray" to "Mitglieder-Array",
        "memberTransfer.password" to "Passwort",
        "memberTransfer.passwordEncrypted" to "Passwörter werden verschlüsselt gespeichert",
        "memberTransfer.placeholderHint" to "Klicken Sie auf einen Platzhalter, um ihn an der aktuellen Cursor-Position einzufügen:",
        "memberTransfer.placeholders.address" to "Kombinierte Adresse",
        "memberTransfer.placeholders.addressDesc" to "Strasse und Ort kombiniert",
        "memberTransfer.placeholders.birthDate" to "Geburtsdatum",
        "memberTransfer.placeholders.birthDateAlt" to "Geburtsdatum (alt)",
        "memberTransfer.placeholders.birthDateAltDesc" to "Geburtsdatum im Format YYYY-MM-DD (alternative Bezeichnung)",
        "memberTransfer.placeholders.birthDateDesc" to "Geburtsdatum im Format YYYY-MM-DD",
        "memberTransfer.placeholders.city" to "Ort",
        "memberTransfer.placeholders.cityDesc" to "Wohnort",
        "memberTransfer.placeholders.email" to "E-Mail-Adresse",
        "memberTransfer.placeholders.emailDesc" to "E-Mail-Adresse des Mitglieds",
        "memberTransfer.placeholders.firstName" to "Vorname",
        "memberTransfer.placeholders.firstNameDesc" to "Vorname des Mitglieds",
        "memberTransfer.placeholders.fullName" to "Vollständiger Name",
        "memberTransfer.placeholders.fullNameDesc" to "Vorname und Nachname kombiniert",
        "memberTransfer.placeholders.gender" to "Geschlecht",
        "memberTransfer.placeholders.genderDesc" to "Geschlecht des Mitglieds",
        "memberTransfer.placeholders.lastName" to "Nachname",
        "memberTransfer.placeholders.lastNameDesc" to "Nachname des Mitglieds",
        "memberTransfer.placeholders.phone" to "Telefonnummer",
        "memberTransfer.placeholders.phoneDesc" to "Telefonnummer des Mitglieds",
        "memberTransfer.placeholders.qttr" to "QTTR-Wert",
        "memberTransfer.placeholders.qttrDesc" to "QTTR-Wert des Mitglieds",
        "memberTransfer.placeholders.street" to "Strasse",
        "memberTransfer.placeholders.streetDesc" to "Strasse und Hausnummer",
        "memberTransfer.placeholders.ttr" to "TTR-Wert",
        "memberTransfer.placeholders.ttrDesc" to "TTR-Wert des Mitglieds",
        "memberTransfer.save" to "Speichern",
        "memberTransfer.saving" to "Speichere...",
        "memberTransfer.serverBaseUrl" to "Server-Basis-URL",
        "memberTransfer.serverBaseUrlHint" to "Basis-URL des Servers (z.B. https://example.com)",
        "memberTransfer.serverBaseUrlPlaceholder" to "https://example.com",
        "memberTransfer.serverConfiguration" to "Server-Konfiguration",
        "memberTransfer.templateDescription" to "Das Template definiert das Format, in dem die Mitgliederdaten an das externe System übertragen werden. Verwenden Sie Platzhalter wie PLACEHOLDER_FIRSTNAME, um die Daten automatisch zu ersetzen.",
        "memberTransfer.templateImported" to "Template erfolgreich importiert!",
        "memberTransfer.templateImportedBulk" to "Mitglied-Template erkannt, Bulk-Modus aktiviert.",
        "memberTransfer.templateImportedDetails" to "Mitglied- und Bulk-Wrapper-Template wurden erkannt und ausgefüllt.",
        "memberTransfer.templateImportedSingle" to "Einzelnes Mitglied-Template erkannt.",
        "memberTransfer.templateTip" to "Tipp: Setzen Sie den Cursor an die gewünschte Stelle im Template und klicken Sie auf einen Platzhalter, um ihn einzufügen. Platzhalter werden beim Übertragen automatisch durch die tatsächlichen Mitgliederdaten ersetzt.",
        "memberTransfer.templateWhat" to "Was ist ein Template?",
        "memberTransfer.title" to "Mitgliederübertragung - Einstellungen",
        "memberTransfer.transferConfiguration" to "Übertragungskonfiguration",
        "memberTransfer.transferConfigurationTitle" to "Übertragungs-Konfiguration",
        "memberTransfer.transferEndpointHint" to "Relativer Pfad zum Übertragungs-Endpoint (z.B. /api/members/bulk)",
        "memberTransfer.transferEndpointPath" to "Übertragungs-Endpoint Pfad",
        "memberTransfer.transferEndpointPlaceholder" to "/api/members/bulk",
        "memberTransfer.transferFormat" to "Übertragungs-Format",
        "memberTransfer.transferTemplate" to "Übertragungs-Template",
        "memberTransfer.usernameEmail" to "Benutzername / Email",
        "memberTransferDialog.additionalErrors" to "Weitere Fehler",
        "memberTransferDialog.additionalFieldPlaceholder" to "Zusätzliches Feld (z.B. client_id)",
        "memberTransferDialog.additionalFieldPlaceholderForm" to "Feldname: Wert (z.B. client_id: abc123)",
        "memberTransferDialog.bulkImport" to "Bulk-Import",
        "memberTransferDialog.cancel" to "Abbrechen",
        "memberTransferDialog.editConfig" to "Konfiguration bearbeiten",
        "memberTransferDialog.endpoint" to "Endpoint",
        "memberTransferDialog.excludedMembers" to "Ausgeschlossene Mitglieder (fehlende Pflichtfelder)",
        "memberTransferDialog.format" to "Format",
        "memberTransferDialog.goToSettings" to "Zu den Einstellungen",
        "memberTransferDialog.loadingConfig" to "Gespeicherte Konfiguration wird geladen...",
        "memberTransferDialog.loginData" to "Login-Daten",
        "memberTransferDialog.loginDataHint" to "Die Login-Daten werden aus den Einstellungen verwendet. Sie können sie hier überschreiben, falls nötig.",
        "memberTransferDialog.loginDataOverride" to "Login-Daten (optional überschreiben)",
        "memberTransferDialog.loginDataOverrideHint" to "Nur ausfüllen, wenn Sie die gespeicherten Login-Daten überschreiben möchten. Leere Felder verwenden die gespeicherten Werte.",
        "memberTransferDialog.method" to "Methode",
        "memberTransferDialog.mode" to "Modus",
        "memberTransferDialog.noConfigFound" to "Keine Konfiguration gefunden",
        "memberTransferDialog.noConfigMessage" to "Bitte konfigurieren Sie zuerst die Mitgliederübertragung in den Einstellungen.",
        "memberTransferDialog.passwordPlaceholder" to "Passwort (leer lassen für gespeichertes)",
        "memberTransferDialog.server" to "Server",
        "memberTransferDialog.single" to "Einzeln",
        "memberTransferDialog.title" to "Mitglieder übertragen",
        "memberTransferDialog.transfer" to "Übertragen",
        "memberTransferDialog.transferConfiguration" to "Übertragungskonfiguration",
        "memberTransferDialog.transferError" to "Fehler bei der Übertragung",
        "memberTransferDialog.transferFailed" to "Übertragung fehlgeschlagen",
        "memberTransferDialog.transferring" to "Übertrage...",
        "memberTransferDialog.transferSuccess" to "{transferred} von {total} Mitgliedern erfolgreich übertragen.",
        "memberTransferDialog.usernameEmail" to "Benutzername / Email",
        "messages.cancel" to "Abbreche",
        "messages.confirm" to "Bestätige",
        "messages.error" to "Fehler",
        "messages.fileTooLarge" to "Datei zu gross",
        "messages.imageMaxSize" to "Das Bild darf maximal 5 MB gross sein.",
        "messages.info" to "Information",
        "messages.invalidFile" to "Ungültige Datei",
        "messages.note" to "Hinweis",
        "messages.pleaseSelectImageFile" to "Bitte wähle eine Bilddatei aus.",
        "messages.recordsDisplayed" to "angezeigt",
        "messages.recordsFound" to "Datensätze gefunden",
        "messages.success" to "Erfolg",
        "messages.successfullyLoaded" to "Erfolgreich geladen",
        "messages.warning" to "Warnig",
        "mobile.active" to "Aktiv",
        "mobile.add" to "Hinzufügen",
        "mobile.appLoading" to "App wird geladen",
        "mobile.calendarAgendaEmpty" to "Keine Termine in diesem Monat.",
        "mobile.calendarAgendaTitle" to "Termine im Monat",
        "mobile.calendarAllSourcesFailed" to "Kalenderdaten konnten nicht geladen werden.",
        "mobile.calendarCancellationEnd" to "Bis optional",
        "mobile.calendarCancellationHint" to "Blendet regelmäßige Trainingszeiten an den Tagen aus.",
        "mobile.calendarCancellationInMonth" to "Ausfälle diesen Monat",
        "mobile.calendarCancellationReason" to "Grund",
        "mobile.calendarCancellationSave" to "Eintragen",
        "mobile.calendarCancellationStart" to "Datum (YYYY-MM-DD)",
        "mobile.calendarCancellationTitle" to "Training fällt aus",
        "mobile.calendarGridTitle" to "Monat",
        "mobile.calendarLegend" to "Anzeige",
        "mobile.calendarLegendCancellation" to "Ausfall",
        "mobile.calendarLegendHoliday" to "Feiertag",
        "mobile.calendarLegendMatch" to "Punktspiel",
        "mobile.calendarLegendOfficial" to "Teilnahme",
        "mobile.calendarLegendSchool" to "Ferien",
        "mobile.calendarLegendTournament" to "Turnier",
        "mobile.calendarLegendTraining" to "Training",
        "mobile.calendarSourceCancellations" to "Trainingsausfälle",
        "mobile.calendarSourceDiary" to "Tagebuch",
        "mobile.calendarSourceFailed" to "nicht geladen",
        "mobile.calendarSourceHolidays" to "Ferien/Feiertage",
        "mobile.calendarSourceMatches" to "Punktspiele",
        "mobile.calendarSourceOfficial" to "Turnierteilnahmen",
        "mobile.calendarSourceTournaments" to "Turniere",
        "mobile.calendarSourceTrainingTimes" to "Trainingszeiten",
        "mobile.calendarSubtitle" to "Training, Turniere, Spiele und Feiertage im Monat.",
        "mobile.calendarTitle" to "Kalender",
        "mobile.calendarToday" to "Heute",
        "mobile.cancel" to "Abbrechen",
        "mobile.clubRequest" to "Zugriff anfragen",
        "mobile.clubRequested" to "Angefragt",
        "mobile.createDiaryEntry" to "Eintrag erstellen",
        "mobile.deleteNote" to "Notiz löschen",
        "mobile.deleteTag" to "Tag entfernen",
        "mobile.editTimes" to "Zeiten bearbeiten",
        "mobile.emailAndPasswordRequired" to "E-Mail und Passwort sind erforderlich",
        "mobile.entry" to "Eintrag",
        "mobile.inactive" to "Inaktiv",
        "mobile.language" to "Sprache",
        "mobile.lastTraining" to "Letztes Training",
        "mobile.loginFailed" to "Login fehlgeschlagen",
        "mobile.loginInProgress" to "Anmelden...",
        "mobile.more" to "Mehr",
        "mobile.new" to "Neu",
        "mobile.newNote" to "Neue Notiz",
        "mobile.newTag" to "Neuer Tag",
        "mobile.noDiaryEntries" to "Noch keine Tagebuch-Einträge",
        "mobile.noMembers" to "Keine Mitglieder gefunden",
        "mobile.noResults" to "Keine Treffer",
        "mobile.noTimes" to "Keine Zeiten",
        "mobile.offlineCacheHint" to "Keine Verbindung – zuletzt geladene Daten.",
        "mobile.participationTop" to "Top Teilnahmen",
        "mobile.refresh" to "Aktualisieren",
        "mobile.requestedAccess" to "Angefragt",
        "mobile.role" to "Rolle",
        "mobile.saveEntry" to "Speichern",
        "mobile.search" to "Suche",
        "mobile.select" to "Auswählen",
        "mobile.sessionCheck" to "Session prüfen",
        "mobile.sessionCheckFailed" to "Session check fehlgeschlagen",
        "mobile.sessionInvalid" to "Session ungültig",
        "mobile.sessionValid" to "Session gültig",
        "mobile.status" to "Status",
        "mobile.user" to "Benutzer",
        "myTischtennis.about" to "Über myTischtennis",
        "myTischtennis.aboutFeatures.fetch" to "Wettkampfdaten direkt abrufen",
        "myTischtennis.aboutFeatures.import" to "Automatisch Turnierdaten importieren",
        "myTischtennis.aboutFeatures.sync" to "Spielerergebnisse synchronisieren",
        "myTischtennis.aboutText" to "Durch die Verknüpfung Ihres myTischtennis-Accounts können Sie:",
        "myTischtennis.autoUpdates" to "Automatische Updates",
        "myTischtennis.club" to "Verein (myTischtennis)",
        "myTischtennis.deleteAccount" to "Account trennen",
        "myTischtennis.disabled" to "Deaktiviert",
        "myTischtennis.editAccount" to "Account bearbeiten",
        "myTischtennis.enabled" to "Aktiviert",
        "myTischtennis.fetchStatistics" to "Datenabruf-Statistiken",
        "myTischtennis.lastFetch" to "Letzter Abruf",
        "myTischtennis.lastLoginAttempt" to "Letzter Login-Versuch",
        "myTischtennis.lastSuccessfulLogin" to "Letzter erfolgreicher Login",
        "myTischtennis.leagueTables" to "Ligatabellen",
        "myTischtennis.linkAccount" to "Account verknüpfen",
        "myTischtennis.linkedAccount" to "Verknüpfter Account",
        "myTischtennis.loadingStats" to "Lade Statistiken...",
        "myTischtennis.matchResults" to "Spielergebnisse",
        "myTischtennis.neverFetched" to "Noch nie abgerufen",
        "myTischtennis.no" to "Nein",
        "myTischtennis.noAccount" to "Kein myTischtennis-Account verknüpft.",
        "myTischtennis.passwordNote" to "Hinweis: Das Speichern des Passworts ist optional. Wenn Sie es nicht speichern, werden Sie bei jeder Synchronisation nach dem Passwort gefragt.",
        "myTischtennis.passwordSaved" to "Passwort gespeichert",
        "myTischtennis.passwordsEncrypted" to "Passwörter werden verschlüsselt gespeichert",
        "myTischtennis.playerRatings" to "Spielerwertungen",
        "myTischtennis.refreshStats" to "Statistiken aktualisieren",
        "myTischtennis.testLogin" to "Erneut einloggen",
        "myTischtennis.title" to "myTischtennis-Account",
        "myTischtennis.updateHistory" to "Update-History",
        "myTischtennis.yes" to "Ja",
        "myTischtennisAccount.aboutDescription" to "Durch die Verknüpfung Ihres myTischtennis-Accounts können Sie:",
        "myTischtennisAccount.aboutFeature1" to "Automatisch Turnierdaten importieren",
        "myTischtennisAccount.aboutFeature2" to "Spielerergebnisse synchronisieren",
        "myTischtennisAccount.aboutFeature3" to "Wettkampfdaten direkt abrufen",
        "myTischtennisAccount.aboutHint" to "Das Speichern des Passworts ist optional. Wenn Sie es nicht speichern, werden Sie bei jeder Synchronisation nach dem Passwort gefragt.",
        "myTischtennisAccount.aboutMyTischtennis" to "Über myTischtennis",
        "myTischtennisAccount.accountSaved" to "myTischtennis-Account erfolgreich gespeichert",
        "myTischtennisAccount.accountUnlinked" to "myTischtennis-Account erfolgreich getrennt",
        "myTischtennisAccount.autoUpdates" to "Automatische Updates:",
        "myTischtennisAccount.club" to "Verein (myTischtennis):",
        "myTischtennisAccount.daysAgo" to "vor {count} Tagen",
        "myTischtennisAccount.disabled" to "Deaktiviert",
        "myTischtennisAccount.editAccount" to "Account bearbeiten",
        "myTischtennisAccount.email" to "E-Mail:",
        "myTischtennisAccount.enabled" to "Aktiviert",
        "myTischtennisAccount.errorLoadingAccount" to "Fehler beim Laden des myTischtennis-Accounts",
        "myTischtennisAccount.errorLoadingStatistics" to "Fehler beim Laden der Fetch-Statistiken",
        "myTischtennisAccount.errorUnlinking" to "Fehler beim Trennen des Accounts",
        "myTischtennisAccount.fetchStatistics" to "Datenabruf-Statistiken",
        "myTischtennisAccount.hoursAgo" to "vor {count} Std.",
        "myTischtennisAccount.justNow" to "Gerade eben",
        "myTischtennisAccount.lastFetch" to "Letzter Abruf:",
        "myTischtennisAccount.lastLoginAttempt" to "Letzter Login-Versuch:",
        "myTischtennisAccount.lastSuccessfulLogin" to "Letzter erfolgreicher Login:",
        "myTischtennisAccount.leagueTables" to "Ligatabellen",
        "myTischtennisAccount.linkAccount" to "Account verknüpfen",
        "myTischtennisAccount.linkedAccount" to "Verknüpfter Account",
        "myTischtennisAccount.loading" to "Lade...",
        "myTischtennisAccount.loadingStatistics" to "Lade Statistiken...",
        "myTischtennisAccount.loginAgain" to "Erneut einloggen",
        "myTischtennisAccount.loginFailed" to "Login fehlgeschlagen",
        "myTischtennisAccount.loginSuccessful" to "Login erfolgreich! Verbindungsdaten aktualisiert.",
        "myTischtennisAccount.matchResults" to "Spielergebnisse",
        "myTischtennisAccount.minutesAgo" to "vor {count} Min.",
        "myTischtennisAccount.never" to "Nie",
        "myTischtennisAccount.neverFetched" to "Noch nie abgerufen",
        "myTischtennisAccount.no" to "Nein",
        "myTischtennisAccount.noAccountLinked" to "Kein myTischtennis-Account verknüpft.",
        "myTischtennisAccount.passwordRequired" to "Passwort benötigt",
        "myTischtennisAccount.passwordSaved" to "Passwort gespeichert:",
        "myTischtennisAccount.playerRatings" to "Spielerwertungen",
        "myTischtennisAccount.playersUpdated" to "Spieler aktualisiert",
        "myTischtennisAccount.refreshStatistics" to "Statistiken aktualisieren",
        "myTischtennisAccount.results" to "Ergebnisse",
        "myTischtennisAccount.teams" to "Teams",
        "myTischtennisAccount.title" to "myTischtennis-Account",
        "myTischtennisAccount.unlinkAccount" to "Account trennen",
        "myTischtennisAccount.unlinkAccountConfirm" to "Möchten Sie die Verknüpfung zum myTischtennis-Account wirklich trennen?",
        "myTischtennisAccount.unlinkAccountTitle" to "Account trennen",
        "myTischtennisAccount.updateHistory" to "Update-History",
        "myTischtennisAccount.yes" to "Ja",
        "myTischtennisAccount.yesterday" to "Gestern",
        "myTischtennisDialog.appPassword" to "Ihr App-Passwort zur Bestätigung",
        "myTischtennisDialog.appPasswordHint" to "Aus Sicherheitsgründen benötigen wir Ihr App-Passwort, um das myTischtennis-Passwort zu speichern.",
        "myTischtennisDialog.appPasswordPlaceholder" to "Ihr Passwort für diese App",
        "myTischtennisDialog.autoUpdateRatings" to "Automatische Update-Ratings aktivieren",
        "myTischtennisDialog.autoUpdateRatingsHint" to "Täglich um 6:00 Uhr werden automatisch die neuesten Ratings von myTischtennis abgerufen. Erfordert gespeichertes Passwort.",
        "myTischtennisDialog.autoUpdateWarning" to "Für automatische Updates muss das myTischtennis-Passwort gespeichert werden.",
        "myTischtennisDialog.cancel" to "Abbrechen",
        "myTischtennisDialog.editAccount" to "myTischtennis-Account bearbeiten",
        "myTischtennisDialog.email" to "myTischtennis-E-Mail",
        "myTischtennisDialog.emailPlaceholder" to "Ihre myTischtennis-E-Mail-Adresse",
        "myTischtennisDialog.errorLogin" to "Fehler beim Einloggen",
        "myTischtennisDialog.errorSaving" to "Fehler beim Speichern des Accounts",
        "myTischtennisDialog.linkAccount" to "myTischtennis-Account verknüpfen",
        "myTischtennisDialog.loadingLoginForm" to "Lade Login-Formular...",
        "myTischtennisDialog.loggingIn" to "Logge ein...",
        "myTischtennisDialog.login" to "Einloggen",
        "myTischtennisDialog.password" to "myTischtennis-Passwort",
        "myTischtennisDialog.passwordPlaceholder" to "Ihr myTischtennis-Passwort",
        "myTischtennisDialog.passwordPlaceholderKeep" to "Leer lassen um beizubehalten",
        "myTischtennisDialog.save" to "Speichern",
        "myTischtennisDialog.savePassword" to "myTischtennis-Passwort speichern",
        "myTischtennisDialog.savePasswordHint" to "Wenn aktiviert, wird Ihr myTischtennis-Passwort verschlüsselt gespeichert, sodass automatische Synchronisationen möglich sind.",
        "myTischtennisDialog.saving" to "Speichere...",
        "myTischtennisHistory.close" to "Schliessen",
        "myTischtennisHistory.failed" to "Fehlgeschlagen",
        "myTischtennisHistory.loading" to "Lade History...",
        "myTischtennisHistory.noHistory" to "Noch keine automatischen Updates durchgeführt.",
        "myTischtennisHistory.ratingsUpdated" to "Ratings aktualisiert",
        "myTischtennisHistory.successful" to "Erfolgreich",
        "myTischtennisHistory.title" to "Update-Ratings History",
        "navigation.approvals" to "Freigabe",
        "navigation.backToHome" to "Zur Startseite",
        "navigation.billing" to "Abrechnig",
        "navigation.clickTtAccount" to "HTTV / click-TT-Account",
        "navigation.clickTtBrowser" to "HTTV / click-TT",
        "navigation.clubSettings" to "Vereinsiistellige",
        "navigation.clubTournaments" to "Vereinsturniere",
        "navigation.competitions" to "Wettbewerb",
        "navigation.dailyBusiness" to "Tagesgschäft",
        "navigation.diary" to "Tagebuech",
        "navigation.home" to "Startseite",
        "navigation.login" to "Aamelde",
        "navigation.logout" to "Abmelde",
        "navigation.logs" to "System-Logs",
        "navigation.members" to "Mitglider",
        "navigation.memberTransfer" to "Mitgliderübertragig",
        "navigation.myTischtennisAccount" to "myTischtennis-Account",
        "navigation.orders" to "Bestellige",
        "navigation.permissions" to "Berechtigunge",
        "navigation.personalSettings" to "Persönlichi Iistellige",
        "navigation.predefinedActivities" to "Vordefinierte Aktivitäte",
        "navigation.register" to "Registriere",
        "navigation.schedule" to "Spielplän",
        "navigation.settings" to "Iistellige",
        "navigation.statistics" to "Trainings-Statistik",
        "navigation.teamManagement" to "Team-Verwaltig",
        "navigation.tournamentParticipations" to "Offizielle Turniere & Teilnahmen",
        "navigation.tournaments" to "Turnier",
        "nuscoreAnalyzer.analysisComplete" to "✅ Analyse abgeschlossen: {count} Ressourcen gefunden",
        "nuscoreAnalyzer.analyze" to "🔍 nuscore analysieren",
        "nuscoreAnalyzer.analyzing" to "🔄 Analysiere...",
        "nuscoreAnalyzer.createLocalCopy" to "🏗️ Lokale Kopie erstellen",
        "nuscoreAnalyzer.creating" to "🏗️ Erstelle...",
        "nuscoreAnalyzer.description" to "Analysiert und lädt nuscore-Ressourcen für lokale Nutzung herunter",
        "nuscoreAnalyzer.downloading" to "⬇️ Lade herunter...",
        "nuscoreAnalyzer.downloadResources" to "Ressourcen herunterladen",
        "nuscoreAnalyzer.foundResources" to "📋 Gefundene Ressourcen:",
        "nuscoreAnalyzer.log" to "📝 Log:",
        "nuscoreAnalyzer.pageLoaded" to "✅ nuscore-Seite geladen",
        "nuscoreAnalyzer.startAnalysis" to "🔍 Starte nuscore-Analyse...",
        "nuscoreAnalyzer.title" to "🔍 nuscore Analyzer",
        "officialTournaments.action" to "Aktion",
        "officialTournaments.age" to "Alter",
        "officialTournaments.ageClassCompetition" to "Altersklasse/Wettbewerb",
        "officialTournaments.ageClasses" to "Altersklassen:",
        "officialTournaments.all" to "Alle",
        "officialTournaments.birthDate" to "Geburtsdatum",
        "officialTournaments.checkBoxToActivate" to "Checkbox aktivieren",
        "officialTournaments.competition" to "Konkurrenz",
        "officialTournaments.competitions" to "Konkurrenzen",
        "officialTournaments.competitionTypes" to "Konkurrenztypen:",
        "officialTournaments.cutoffDate" to "Stichtag:",
        "officialTournaments.date" to "Datum",
        "officialTournaments.dateTime" to "Termin:",
        "officialTournaments.deadlineDate" to "Meldeschluss (Datum):",
        "officialTournaments.deadlineOnline" to "Meldeschluss (Online):",
        "officialTournaments.deadlines" to "Meldeschlüsse:",
        "officialTournaments.deadlinesByAgeClass" to "Meldeschlüsse je AK:",
        "officialTournaments.delete" to "Löschen",
        "officialTournaments.editTitle" to "Titel bearbeiten",
        "officialTournaments.eligible" to "Teilnahmeberechtigt",
        "officialTournaments.entryFee" to "Startgeld",
        "officialTournaments.entryFees" to "Teilnahmegebühren:",
        "officialTournaments.events" to "Veranstaltungen",
        "officialTournaments.finalRound" to "Endrunde:",
        "officialTournaments.hasPlayed" to "Hat gespielt",
        "officialTournaments.last12Months" to "Letzte 12 Monate",
        "officialTournaments.last2Years" to "Letzte 2 Jahre",
        "officialTournaments.last3Months" to "Letzte 3 Monate",
        "officialTournaments.last6Months" to "Letzte 6 Monate",
        "officialTournaments.markAsParticipated" to "Als teilgenommen markieren",
        "officialTournaments.markAsRegistered" to "Als angemeldet markieren",
        "officialTournaments.member" to "Mitglied",
        "officialTournaments.name" to "Name",
        "officialTournaments.noEvents" to "Noch keine Veranstaltungen vorhanden. Laden Sie ein PDF hoch, um zu beginnen.",
        "officialTournaments.notInterested" to "Nicht interessiert",
        "officialTournaments.openTo" to "Offen für:",
        "officialTournaments.participants" to "Teilnehmer",
        "officialTournaments.participantsPdf" to "Teilnehmer-PDF",
        "officialTournaments.participated" to "Teilgenommen",
        "officialTournaments.participations" to "Turnierbeteiligungen",
        "officialTournaments.pdfForSelectedMembers" to "PDF für markierte Mitglieder",
        "officialTournaments.placement" to "Platzierung",
        "officialTournaments.preliminaryRound" to "Vorrunde:",
        "officialTournaments.previousSeason" to "Vorherige Saison",
        "officialTournaments.registered" to "Angemeldet",
        "officialTournaments.resetStatus" to "Status zurücksetzen",
        "officialTournaments.results" to "Ergebnisse",
        "officialTournaments.savedEvents" to "Gespeicherte Veranstaltungen",
        "officialTournaments.selectMembers" to "Mitglieder auswählen",
        "officialTournaments.showCompetitions" to "Konkurrenzen anzeigen",
        "officialTournaments.showEvents" to "Gespeicherte Veranstaltungen anzeigen",
        "officialTournaments.showParticipants" to "Teilnehmer anzeigen",
        "officialTournaments.showParticipations" to "Turnierbeteiligungen anzeigen",
        "officialTournaments.showResults" to "Ergebnisse anzeigen",
        "officialTournaments.startTime" to "Startzeit",
        "officialTournaments.startTimes" to "Startzeiten:",
        "officialTournaments.status" to "Status",
        "officialTournaments.timeRange" to "Zeitraum:",
        "officialTournaments.title" to "Titel:",
        "officialTournaments.tournament" to "Turnier",
        "officialTournaments.updatePlacementError" to "Fehler beim Aktualisieren der Platzierung",
        "officialTournaments.updateStatusError" to "Fehler beim Aktualisieren des Status",
        "officialTournaments.updateTitleError" to "Titel konnte nicht gespeichert werden.",
        "officialTournaments.uploadError" to "Fehler beim Hochladen der PDF.",
        "officialTournaments.uploadPdf" to "PDF hochladen",
        "officialTournaments.venues" to "Austragungsorte:",
        "officialTournaments.wantsToParticipate" to "Möchte teilnehmen",
        "orders.addOrder" to "Bestellig aalege",
        "orders.budget" to "Budget",
        "orders.club" to "Verein",
        "orders.cost" to "Chöschte",
        "orders.dateAutoHint" to "S Datum wird automatisch gsetzt und jedi Änderig mit em Datum protokolliert.",
        "orders.errorLoading" to "Bestellige hend nöd chöne glade werde.",
        "orders.errorSaving" to "Bestellig het nöd chöne gspeicheret werde.",
        "orders.filterAllClubs" to "Alli Vereine",
        "orders.filterAllCompletionStates" to "Alle Abschlüsse",
        "orders.filterAllStatuses" to "Alli Status",
        "orders.filterHandedOver" to "Artikel ausgehändigt",
        "orders.filterPaid" to "Hat bezahlt",
        "orders.globalSubtitle" to "Da chasch alli Bestellige vereinsübergreifend aluege und verwalte.",
        "orders.globalTitle" to "Bestellige aller Vereine",
        "orders.history" to "Verlauf",
        "orders.item" to "Was",
        "orders.itemPlaceholder" to "z. B. Trikot, Hoodie oder Schlägerhülle",
        "orders.loading" to "Bestellige werde glade...",
        "orders.member" to "Mitgliid",
        "orders.memberTitle" to "Bestellige: {name}",
        "orders.noOrdersGlobal" to "Aktuell git's kei Bestellige.",
        "orders.noOrdersMember" to "Für das Mitgliid git's no kei Bestellige.",
        "orders.open" to "No offe",
        "orders.orderDate" to "Erfasst am",
        "orders.paid" to "Bezahlt",
        "orders.paidConfirmed" to "Hat bezahlt",
        "orders.searchPlaceholder" to "Nach Verein, Mitgliid oder Artikel sueche",
        "orders.showCompleted" to "Abgeschlossene einblenden",
        "orders.status" to "Status",
        "orders.statusArrived" to "Artikel achoo",
        "orders.statusDate" to "Letschti Änderig",
        "orders.statusHandedOver" to "Artikel usghändigt",
        "orders.statusOrdered" to "bstellt",
        "orders.statusRequested" to "gwünscht",
        "orders.title" to "Bestellige",
        "pdfGenerator.activityTimeBlock" to "Aktivität / Zeitblock",
        "pdfGenerator.allGames" to "Alle Spiele",
        "pdfGenerator.alsoPlayable" to "Ebenfalls spielbar",
        "pdfGenerator.birthDate" to "Geburtsdatum",
        "pdfGenerator.clubLabel" to "Verein:",
        "pdfGenerator.competition" to "Wettbewerb",
        "pdfGenerator.competitionName" to "Konkurrenz",
        "pdfGenerator.date" to "Datum:",
        "pdfGenerator.diff" to "Diff",
        "pdfGenerator.duration" to "Dauer (Min)",
        "pdfGenerator.fee" to "Gebühr",
        "pdfGenerator.generatedAt" to "Erstellt:",
        "pdfGenerator.group" to "Gruppe",
        "pdfGenerator.groupLabel" to "Gruppe",
        "pdfGenerator.groupMatrices" to "Gruppen-Matrizen",
        "pdfGenerator.hallShoes" to "Hallenschuhe (dürfen auf Boden nicht abfärben)",
        "pdfGenerator.hints" to "Hinweise:",
        "pdfGenerator.informTrainer" to "Da der Verein die Meldung übernehmen möchte, die Trainer mind. eine Woche vor dem Turnier über die Teilnahme informieren",
        "pdfGenerator.leagueLabel" to "Spielklasse:",
        "pdfGenerator.lineupQttr" to "(Q)TTR",
        "pdfGenerator.member" to "Mitglied:",
        "pdfGenerator.nameFirstName" to "Name, Vorname",
        "pdfGenerator.noActivities" to "Keine Aktivitäten für diesen Trainingstag erfasst.",
        "pdfGenerator.noWhiteJersey" to "Kein weisses Trikot",
        "pdfGenerator.officialTournament" to "Offizielles Turnier",
        "pdfGenerator.oneHourBefore" to "Eine Stunde vor Beginn der Konkurrenz in der Halle sein",
        "pdfGenerator.overallRanking" to "Gesamt-Ranking (K.O.-Runden)",
        "pdfGenerator.periodLabel" to "Meldung für:",
        "pdfGenerator.phoneList" to "Telefonliste - Aktive Mitglieder",
        "pdfGenerator.phoneNumber" to "Telefon-Nr.",
        "pdfGenerator.place" to "Platz",
        "pdfGenerator.placement" to "Platzierung",
        "pdfGenerator.plannedLeagueLabel" to "Geplante Spielklasse:",
        "pdfGenerator.player" to "Spieler",
        "pdfGenerator.player1" to "Spieler 1",
        "pdfGenerator.player2" to "Spieler 2",
        "pdfGenerator.points" to "Punkte",
        "pdfGenerator.recommendations" to "Empfehlungen",
        "pdfGenerator.result" to "Ergebnis",
        "pdfGenerator.round" to "Runde",
        "pdfGenerator.seasonLabel" to "Saison:",
        "pdfGenerator.sets" to "Sätze",
        "pdfGenerator.sportShorts" to "Sportshorts (oder Sportröckchen), am besten auch nicht weiss",
        "pdfGenerator.startTime" to "Startzeit",
        "pdfGenerator.status" to "Status",
        "pdfGenerator.teamAgeGroupLabel" to "Team Altersklasse:",
        "pdfGenerator.teamGenderLabel" to "Team Geschlecht:",
        "pdfGenerator.teamLineupTitle" to "Mannschaftsaufstellung",
        "pdfGenerator.teamNameLabel" to "Mannschaft:",
        "pdfGenerator.time" to "Uhrzeit:",
        "pdfGenerator.timeBlock" to "Zeitblock",
        "pdfGenerator.tournament" to "Turnier",
        "pdfGenerator.trainersPresent" to "Die Trainer probieren bei allen Turnieren anwesend zu sein.",
        "pdfGenerator.trainingPlan" to "Trainingsplan",
        "pdfGenerator.venue" to "Austragungsort",
        "pdfGenerator.venues" to "Austragungsorte",
        "pdfGenerator.waterBottle" to "Eine Flasche Wasser dabei haben",
        "pendingApprovals.actions" to "Aktionen",
        "pendingApprovals.approve" to "Genehmigen",
        "pendingApprovals.email" to "Email",
        "pendingApprovals.errorApproving" to "Fehler beim Genehmigen des Benutzers",
        "pendingApprovals.errorLoadingRequests" to "Fehler beim Laden der ausstehenden Anfragen",
        "pendingApprovals.errorRejecting" to "Fehler beim Ablehnen des Benutzers",
        "pendingApprovals.firstName" to "Vorname",
        "pendingApprovals.lastName" to "Nachname",
        "pendingApprovals.noPendingRequests" to "Keine ausstehenden Benutzeranfragen.",
        "pendingApprovals.noPermission" to "Keine Berechtigung",
        "pendingApprovals.noPermissionDetails" to "Nur Administratoren können Mitgliedsanfragen bearbeiten.",
        "pendingApprovals.noPermissionMessage" to "Sie haben keine Berechtigung, Freigaben zu verwalten.",
        "pendingApprovals.reject" to "Ablehnen",
        "pendingApprovals.title" to "Ausstehende Benutzeranfragen",
        "permissions.actions" to "Aktionen",
        "permissions.active" to "Aktiv",
        "permissions.availableRoles" to "Verfügbare Rollen",
        "permissions.baseRole" to "Basis-Rolle",
        "permissions.cancel" to "Abbrechen",
        "permissions.clickToActivate" to "Klicken zum Aktivieren",
        "permissions.clickToDeactivate" to "Klicken zum Deaktivieren",
        "permissions.clubMembers" to "Clubmitglieder",
        "permissions.creator" to "Ersteller",
        "permissions.customize" to "Anpassen",
        "permissions.customizeInfo" to "Hier können Sie individuelle Anpassungen vornehmen.",
        "permissions.email" to "Email",
        "permissions.errorLoadingData" to "Fehler beim Laden der Daten",
        "permissions.errorSavingPermissions" to "Fehler beim Speichern der Berechtigungen",
        "permissions.errorUpdatingRole" to "Fehler beim Aktualisieren der Rolle",
        "permissions.inactive" to "Deaktiviert",
        "permissions.loadingMembers" to "Lade Mitglieder...",
        "permissions.permissionsFor" to "Berechtigungen für",
        "permissions.reset" to "Zurücksetzen",
        "permissions.resetAll" to "Alle zurücksetzen",
        "permissions.role" to "Rolle",
        "permissions.save" to "Speichern",
        "permissions.status" to "Status",
        "permissions.subtitle" to "Verwalten Sie die Zugriffsrechte für Clubmitglieder",
        "permissions.title" to "Berechtigungsverwaltung",
        "predefinedActivities.addImage" to "Bild hinzufügen",
        "predefinedActivities.cancel" to "Abbrechen",
        "predefinedActivities.code" to "Kürzel",
        "predefinedActivities.createDrawing" to "Übungszeichnung erstellen",
        "predefinedActivities.deduplicate" to "Doppelungen zusammenführen",
        "predefinedActivities.delete" to "Löschen",
        "predefinedActivities.description" to "Beschreibung",
        "predefinedActivities.duration" to "Dauer (Minuten)",
        "predefinedActivities.durationText" to "Dauer (Text)",
        "predefinedActivities.durationTextPlaceholder" to "z.B. 2x7",
        "predefinedActivities.editActivity" to "Aktivität bearbeiten",
        "predefinedActivities.editDrawing" to "Übungszeichnung bearbeiten",
        "predefinedActivities.excludeFromStats" to "Nicht in Statistik berücksichtigen",
        "predefinedActivities.filterAll" to "Alle",
        "predefinedActivities.filterCustom" to "Selbstdefiniert",
        "predefinedActivities.filterStandard" to "Standard-Aktivitäten",
        "predefinedActivities.imageHelp" to "Du kannst entweder einen Link zu einem Bild eingeben oder ein Bild hochladen:",
        "predefinedActivities.imageLink" to "Bild-Link (optional)",
        "predefinedActivities.imageLinkPlaceholder" to "z.B. https://example.com/bild.jpg oder /api/predefined-activities/:id/image/:imageId",
        "predefinedActivities.merge" to "Zusammenführen",
        "predefinedActivities.min" to "min",
        "predefinedActivities.name" to "Name",
        "predefinedActivities.new" to "Neu",
        "predefinedActivities.newActivity" to "Neue Aktivität",
        "predefinedActivities.orUploadImage" to "Oder Bild hochladen:",
        "predefinedActivities.reload" to "Neu laden",
        "predefinedActivities.searchPlaceholder" to "Kürzel suchen (z.B. 'as vh us' oder 'vh as us')...",
        "predefinedActivities.selectSource" to "Quelle wählen…",
        "predefinedActivities.selectTarget" to "Ziel wählen…",
        "predefinedActivities.title" to "Vordefinierte Aktivitäten",
        "predefinedActivities.upload" to "Hochladen",
        "predefinedActivities.uploadAfterSave" to "Nach Speichern hochladen",
        "predefinedActivities.uploadedImages" to "Hochgeladene Bilder:",
        "predefinedActivities.uploadNote" to "Hinweis: Das Bild wird erst nach dem Speichern der Aktivität hochgeladen.",
        "privacy.clubData" to "Vereins-/Aktivitätsdaten",
        "privacy.consent" to "Einwilligungsbasierte Vorgänge",
        "privacy.cookies" to "Cookies/Local Storage",
        "privacy.dataCategories" to "Kategorien personenbezogener Daten",
        "privacy.logData" to "Logdaten",
        "privacy.memberData" to "Mitgliederdaten",
        "privacy.myTischtennisData" to "MyTischtennis-Daten",
        "privacy.purposes" to "Zwecke und Rechtsgrundlagen der Verarbeitung",
        "privacy.recipients" to "Empfänger",
        "privacy.registrationData" to "Registrierungs-/Profildaten",
        "privacy.responsible" to "Verantwortlicher",
        "privacy.title" to "Datenschutzerklärung",
        "privacy.tournamentData" to "Turnierdaten",
        "privacy.trainingData" to "Trainingsdaten",
        "privacy.usage" to "Nutzung des TrainingsTagebuchs",
        "privacy.usageData" to "Nutzungsdaten",
        "privacy.website" to "Bereitstellung der Website",
        "quickAddMember.birthDate" to "Geburtsdatum (optional)",
        "quickAddMember.cancel" to "Abbrechen",
        "quickAddMember.createAndAdd" to "Erstellen & Hinzufügen",
        "quickAddMember.firstName" to "Vorname",
        "quickAddMember.gender" to "Geschlecht",
        "quickAddMember.lastName" to "Nachname (optional)",
        "quickAddMember.pleaseSelect" to "Bitte wählen",
        "quickAddMember.title" to "Neues Mitglied hinzufügen",
        "schedule.activeSelection" to "Aktive Auswahl",
        "schedule.addressLabel" to "Adresse",
        "schedule.adultSchedule" to "Spielplan Erwachsene",
        "schedule.ageClass" to "Altersklasse",
        "schedule.allLeagueMatches" to "Alle Spiele",
        "schedule.balls" to "Bälle",
        "schedule.cancel" to "Abbrechen",
        "schedule.cityLabel" to "PLZ / Ort",
        "schedule.code" to "Code",
        "schedule.completedShort" to "Abgeschlossen",
        "schedule.copyCode" to "Code kopieren",
        "schedule.copyGuestPin" to "Gast-PIN kopieren",
        "schedule.copyHomePin" to "Heim-PIN kopieren",
        "schedule.date" to "Datum",
        "schedule.downloadPDF" to "Download PDF",
        "schedule.errorCopying" to "Fehler beim Kopieren",
        "schedule.errorImportingCSV" to "Fehler beim Importieren der CSV-Datei",
        "schedule.errorLoadingAdultSchedule" to "Fehler beim Laden des Erwachsenenspielplans",
        "schedule.errorLoadingGallery" to "Galerie konnte nicht geladen werden.",
        "schedule.errorLoadingMatches" to "Fehler beim Laden der Matches",
        "schedule.errorLoadingMembers" to "Laden der Mitgliederliste fehlgeschlagen.",
        "schedule.errorLoadingOverallSchedule" to "Fehler beim Laden des Gesamtspielplans",
        "schedule.errorLoadingTable" to "Fehler beim Laden der Tabellendaten von MyTischtennis",
        "schedule.errorLoadingTeams" to "Fehler beim Laden der Teams",
        "schedule.errorSavingPlayerSelection" to "Fehler beim Speichern der Spielerauswahl",
        "schedule.fetchDataFailed" to "Teamdaten konnten nicht abgerufen werden.",
        "schedule.fetchingTeamData" to "Abruf läuft…",
        "schedule.fetchStartFailed" to "Abruf konnte nicht gestartet werden.",
        "schedule.fetchTeamData" to "Spielplan & Ergebnisse abrufen",
        "schedule.fetchTimedOut" to "Zeitüberschreitung beim Abruf.",
        "schedule.gallery" to "Mitglieder-Galerie",
        "schedule.galleryLoading" to "Galerie wird geladen…",
        "schedule.galleryTitle" to "Mitglieder-Galerie - Klicken Sie auf ein Bild, um als 'Bereit' zu markieren",
        "schedule.gamesFor" to "Spiele für",
        "schedule.guestPin" to "Gast-PIN",
        "schedule.guestTeam" to "Gastmannschaft",
        "schedule.homePin" to "Heim-PIN",
        "schedule.homeTeam" to "Heimmannschaft",
        "schedule.imageSize" to "Bildgrösse",
        "schedule.importSchedule" to "Spielplanimport",
        "schedule.leagueTable" to "Ligatabelle",
        "schedule.loadingMembers" to "Lade Mitglieder...",
        "schedule.locationDialogTitle" to "Spiellokal",
        "schedule.locationInfo" to "Ort",
        "schedule.locationName" to "Spiellokal",
        "schedule.matches" to "Matches",
        "schedule.matchLabel" to "Spiel",
        "schedule.matchOverviewDescription" to "Steuert, welche Spiele aus der aktuell gewählten Liga im Spielplan angezeigt werden.",
        "schedule.matchOverviewTitle" to "Spielübersicht",
        "schedule.nextMatch" to "Nächstes Spiel",
        "schedule.noActiveMembers" to "Keine aktiven Mitglieder gefunden",
        "schedule.noGames" to "Keine Spiele vorhanden",
        "schedule.noLeagueForTeam" to "Für dieses Team ist keine Liga hinterlegt. Bitte zuerst eine Liga zuordnen.",
        "schedule.noMatchesForPDF" to "Keine Matches gefunden, um PDF zu generieren.",
        "schedule.noMatchingTeams" to "Keine Teams passen zur aktuellen Suche.",
        "schedule.noMembersWithImages" to "Keine Mitglieder mit Bildern gefunden.",
        "schedule.noSelectionMessage" to "Wählen Sie links einen Gesamtspielplan, den Erwachsenenspielplan oder ein Team aus.",
        "schedule.noSelectionTitle" to "Noch keine Auswahl aktiv",
        "schedule.noTableData" to "Keine Tabellendaten verfügbar",
        "schedule.noTeamsFound" to "Keine Teams für diese Saison gefunden",
        "schedule.openMatchReport" to "Spielberichtsbogen öffnen",
        "schedule.otherTeamMatches" to "Andere Mannschaft",
        "schedule.overallSchedule" to "Gesamtspielplan",
        "schedule.ownTeamMatches" to "Eigene Mannschaft",
        "schedule.pendingShort" to "Offen",
        "schedule.planned" to "Vorgesehen",
        "schedule.played" to "Gespielt",
        "schedule.player" to "Spieler",
        "schedule.playerSelection" to "Spielerauswahl",
        "schedule.playerSelectionSaved" to "Spielerauswahl gespeichert",
        "schedule.pleaseSelectGame" to "Bitte wählen Sie zuerst ein Spiel aus",
        "schedule.points" to "Pkt.",
        "schedule.position" to "Platz",
        "schedule.ready" to "Bereit",
        "schedule.refreshTable" to "Tabelle aktualisieren",
        "schedule.result" to "Ergebnis",
        "schedule.save" to "Speichern",
        "schedule.scheduleImportSuccess" to "Spielplan erfolgreich importiert!",
        "schedule.schedulePDF" to "Spielpläne.pdf",
        "schedule.scheduleTab" to "Spielplan",
        "schedule.searchTeams" to "Team oder Liga suchen",
        "schedule.selection" to "Auswahl",
        "schedule.selectOtherTeam" to "Andere Mannschaft wählen",
        "schedule.selectSpecificLeague" to "Bitte wählen Sie eine spezifische Liga aus, um die Tabelle zu laden.",
        "schedule.sets" to "Sätze",
        "schedule.showLocation" to "Spiellokal anzeigen",
        "schedule.subtitle" to "Teams auswählen, Spieltage prüfen und Ligatabellen im Blick behalten.",
        "schedule.tableDataLoaded" to "Tabellendaten erfolgreich von MyTischtennis geladen!",
        "schedule.tableLoading" to "Tabelle wird geladen…",
        "schedule.tableTab" to "Tabelle",
        "schedule.team" to "Team",
        "schedule.teamDataFetched" to "Teamdaten erfolgreich aktualisiert.",
        "schedule.teamDataFetchedDetails" to "Mannschaft: {team}\nVerarbeitete Datensätze: {count}",
        "schedule.teams" to "Teams",
        "schedule.time" to "Uhrzeit",
        "schedule.title" to "Spielpläne",
        "schedule.vs" to "vs",
        "schedule.workspaceScheduleDescription" to "{matches} Spiele, davon {completed} abgeschlossen und {pending} offen.",
        "schedule.workspaceTableDescription" to "{count} Tabellenzeilen aktuell geladen.",
        "seasonSelector.addSeason" to "Neue Saison hinzufügen",
        "seasonSelector.alreadyExists" to "Diese Saison existiert bereits!",
        "seasonSelector.cancel" to "Abbrechen",
        "seasonSelector.create" to "Erstellen",
        "seasonSelector.errorCreating" to "Fehler beim Erstellen der Saison",
        "seasonSelector.errorLoading" to "Fehler beim Laden der Saisons",
        "seasonSelector.hint" to "Hinweis",
        "seasonSelector.label" to "Saison:",
        "seasonSelector.loading" to "Lade...",
        "seasonSelector.newSeason" to "Neue Saison:",
        "seasonSelector.placeholder" to "z.B. 2023/2024",
        "seasonSelector.selectSeason" to "Saison wählen...",
        "settings.language" to "Sproch",
        "settings.languageChanged" to "Sproch erfolgriich gänderet",
        "settings.languageDescription" to "Wähl dini bevorzugti Sproch für d Aawendig",
        "settings.personalSettings" to "Persönlichi Iistellige",
        "settings.selectLanguage" to "Sproch uswähle",
        "settings.title" to "Iistellige",
        "tagHistory.noHistory" to "Keine Tag-Historie vorhanden",
        "tagHistory.selectTags" to "Tags auswählen",
        "tagHistory.title" to "Tag-Historie",
        "teamManagement.activeTeam" to "Aktives Team",
        "teamManagement.addPlanningTeam" to "Planigs-Team hinzuefüege",
        "teamManagement.allMembersAssigned" to "Alli Mitglieder sind aktuell zugeordnet.",
        "teamManagement.assignLeagueBeforeDocuments" to "Bitte ordnen Sie dem Team zuerst eine Liga zu, damit Dokumente verarbeitet werden können.",
        "teamManagement.assignLeagueBeforeParsing" to "Bitte ordnen Sie dem Team zuerst eine Liga zu, um PDF-Dateien zu parsen.",
        "teamManagement.assignMemberToTeam" to "Zum Team hinzuefüege",
        "teamManagement.association" to "Verband",
        "teamManagement.asyncJobStartFailed" to "Async-Job konnte nicht gestartet werden.",
        "teamManagement.autoFetchEnabled" to "Automatischer Datenabruf ist aktiviert",
        "teamManagement.automaticJobs" to "Automatische Jobs",
        "teamManagement.autoSaved" to "Automatisch gspeicheret",
        "teamManagement.autoSaveError" to "Automatischs Speichere isch fehlgschlage",
        "teamManagement.availableLineupMembers" to "Verfügbare Spieler",
        "teamManagement.basicSettings" to "Grundeinstellungen",
        "teamManagement.basicSettingsIntro" to "Teamname und Liga in einem ruhigen Formular prüfen und anpassen.",
        "teamManagement.change" to "Ändern",
        "teamManagement.clearFields" to "Felder leeren",
        "teamManagement.codeList" to "Code-Liste",
        "teamManagement.configurationStatus" to "Konfigurationsstatus",
        "teamManagement.configureLeagueDetails" to "Verband: {association}\nSaison: {season}\nLiga: {league}\nGruppen-ID: {groupId}\n\nMöchten Sie diese Liga in der Datenbank konfigurieren? Dies ermöglicht es, Tabellendaten automatisch abzurufen.",
        "teamManagement.configureLeagueTitle" to "Liga konfigurieren?",
        "teamManagement.createAndEdit" to "Anlegen & Bearbeiten",
        "teamManagement.created" to "Erstellt",
        "teamManagement.createNewTeam" to "Neues Team aalege",
        "teamManagement.dataFetchFailed" to "Daten konnten nicht abgerufen werden.",
        "teamManagement.delete" to "Löschen",
        "teamManagement.deleteTeamConfirm" to "Möchten Sie das Club-Team \"{name}\" wirklich löschen?",
        "teamManagement.deleteTeamTitle" to "Club-Team löschen",
        "teamManagement.documentAvailable" to "Vorhanden",
        "teamManagement.documentMissing" to "Fehlt",
        "teamManagement.documentNotFound" to "Das ausgewählte Dokument wurde nicht gefunden.",
        "teamManagement.documentParsedSummary" to "{label} erfolgreich hochgeladen und geparst!\n\nGefundene Spiele: {matchesFound}\nNeue Spiele erstellt: {created}\nSpiele aktualisiert: {updated}",
        "teamManagement.documents" to "Dokumente",
        "teamManagement.documentsIntro" to "Code- und PIN-Listen hochladen, prüfen und bei Bedarf erneut parsen.",
        "teamManagement.documentUploaded" to "{label} \"{fileName}\" wurde erfolgreich hochgeladen!",
        "teamManagement.edit" to "Bearbeiten",
        "teamManagement.editTeam" to "Team bearbeite",
        "teamManagement.eligibility" to "Einsatz",
        "teamManagement.eligibilityAdultRelease" to "Freigabe Erwachsene",
        "teamManagement.eligibilityAdultReleaseAndReserve" to "Freigabe + Ersatz Erwachsene",
        "teamManagement.eligibilityAdultReserve" to "Ersatz Erwachsene",
        "teamManagement.eligibilityRegular" to "Regulär",
        "teamManagement.enterUrlForAutoConfig" to "MyTischtennis-URL eingeben für automatische Konfiguration",
        "teamManagement.error" to "Fehler",
        "teamManagement.errorConfiguringLeague" to "Liga konnte nicht konfiguriert werden.",
        "teamManagement.errorConfiguringTeam" to "Team konnte nicht konfiguriert werden.",
        "teamManagement.errorDeletingTeam" to "Fehler beim Löschen des Club-Teams.",
        "teamManagement.errorLoadingPdf" to "Fehler beim Laden des PDFs.",
        "teamManagement.errorLoadingStats" to "Statistiken konnten nicht geladen werden.",
        "teamManagement.errorParsingPdf" to "Fehler beim Parsen der PDF-Datei",
        "teamManagement.errorParsingUrl" to "URL konnte nicht geparst werden. Bitte überprüfen Sie das Format.",
        "teamManagement.errorsCount" to "Fehler: {count}",
        "teamManagement.errorUploadingDocument" to "Fehler beim Hochladen und Parsen der Datei.",
        "teamManagement.exportLineupPdf" to "Aufstellung als PDF",
        "teamManagement.fetched" to "abgerufen",
        "teamManagement.fetchTimedOut" to "Zeitüberschreitung beim Abruf (Async-Job läuft zu lange).",
        "teamManagement.fetchTimeoutShort" to "Zeitüberschreitung beim Abruf (Timeout).",
        "teamManagement.fileTooLarge" to "{label} darf maximal 10 MB gross sein.",
        "teamManagement.fileTooLargeTitle" to "Datei zu gross",
        "teamManagement.filterAll" to "Alle",
        "teamManagement.filterConfigured" to "Konfiguriert",
        "teamManagement.filterNeedsAttention" to "Prüefe",
        "teamManagement.filterNoLeague" to "Ohni Liga",
        "teamManagement.firstHalf" to "Vorrunde",
        "teamManagement.firstHalfFull" to "Vorrunde (Juli - Dezember)",
        "teamManagement.fullyConfigured" to "Vollständig konfiguriert",
        "teamManagement.groupId" to "Gruppen-ID",
        "teamManagement.groupName" to "Gruppenname",
        "teamManagement.invalidFileExtension" to "{label} muss eine der folgenden Endungen haben: {extensions}.",
        "teamManagement.invalidFileTypeTitle" to "Ungültiger Dateityp",
        "teamManagement.invalidMimeType" to "{label} weist einen unerwarteten MIME-Typ auf: {type}.",
        "teamManagement.lastRun" to "Zuletzt",
        "teamManagement.lastUpdated" to "Zuletzt aktualisiert",
        "teamManagement.latestUpload" to "Zuletzt hochgeladen: {date}",
        "teamManagement.league" to "Spielklasse",
        "teamManagement.leagueConfiguredDetails" to "Liga: {league}\nSaison: {season}\nVerband: {association}\nGruppen-ID: {groupId}\n\nTabellendaten können jetzt automatisch abgerufen werden.",
        "teamManagement.leagueConfiguredSuccess" to "Liga erfolgreich konfiguriert! Tabellendaten können jetzt automatisch abgerufen werden.",
        "teamManagement.leagueFieldRequired" to "Bitte eine Spielklasse auswählen und speichern.",
        "teamManagement.lineupEmpty" to "Noch keine Spieler für diese Mannschaft gemeldet.",
        "teamManagement.lineupPdfEmpty" to "Es sind keine Spieler in der Aufstellung – PDF kann nicht erstellt werden.",
        "teamManagement.lineupPdfFilePrefix" to "Aufstellung",
        "teamManagement.lineupProposal" to "Mannschaftsmeldung nach QTTR",
        "teamManagement.lineupSaved" to "Mannschaftsmeldung gespeichert.",
        "teamManagement.lineupSaveError" to "Mannschaftsmeldung konnte nicht gespeichert werden.",
        "teamManagement.lineupUnsavedChanges" to "Ungespeicherte Änderungen in der Mannschaftsmeldung.",
        "teamManagement.lineupValidationTooLargeGap" to "{higher} hat mehr als 30 QTTR Punkte Vorsprung vor {lower}. Diese Reihenfolge bitte korrigieren.",
        "teamManagement.loadingStats" to "Lade Statistiken...",
        "teamManagement.manualFetch" to "Abrufen",
        "teamManagement.markAsInterested" to "Als interessiert markiere",
        "teamManagement.matchesSummary" to "Gefundene Spiele: {matchesFound}\nNeue Spiele erstellt: {created}\nSpiele aktualisiert: {updated}",
        "teamManagement.matchResults" to "Spielergebnisse",
        "teamManagement.missingConfigSummary" to "Fehlende Angaben:",
        "teamManagement.missingItems" to "Fehlend: {items}",
        "teamManagement.missingLeagueForTeam" to "Für das ausgewählte Team wurde keine Liga übermittelt.",
        "teamManagement.moreErrors" to "... und {count} weitere",
        "teamManagement.myTischtennis" to "MyTischtennis",
        "teamManagement.myTischtennisIntro" to "URL einfügen, Konfiguration prüfen und bei Bedarf Daten manuell abrufen.",
        "teamManagement.mytischtennisLoginRequired" to "Login bei myTischtennis erforderlich",
        "teamManagement.myTischtennisUrlPlaceholder" to "MyTischtennis URL...",
        "teamManagement.myTischtennisUrlRequired" to "MyTischtennis-URL einfügen und parsen, um Team-ID und Ligendaten zu übernehmen.",
        "teamManagement.never" to "Nie",
        "teamManagement.newTeam" to "Neues Team",
        "teamManagement.noAssignment" to "Keine Zuordnung",
        "teamManagement.noAutomaticUpdate" to "Noch keine automatische Aktualisierung",
        "teamManagement.noDocumentUploadYet" to "Noch kein Dokument hochgeladen.",
        "teamManagement.noIssues" to "Keine offenen Konfigurationsprobleme.",
        "teamManagement.noLeague" to "Kei Spielklass",
        "teamManagement.noMatchesFoundDetails" to "Hinweis: Keine Spiele erkannt.\nZeilen im Dokument: {lines}",
        "teamManagement.noMatchesFoundTitle" to "Keine Spiele gefunden",
        "teamManagement.noMatchingTeams" to "Keine Teams passen zur aktuellen Suche oder Filterung.",
        "teamManagement.noMembersInPool" to "Kei passende Mitglieder gfunde.",
        "teamManagement.noPlannedLeague" to "Kei geplannti Spielklass",
        "teamManagement.noPlayerStats" to "Keine Spieleinsätze erfasst.",
        "teamManagement.notConfigured" to "Nicht konfiguriert",
        "teamManagement.notCreated" to "Nicht erstellt",
        "teamManagement.noTeamsYet" to "Noch keine Teams vorhanden. Erstellen Sie Ihr erstes Team!",
        "teamManagement.openDocument" to "Anzeigen",
        "teamManagement.openInWorkspace" to "Zum Bearbeiten öffnen",
        "teamManagement.parseDocument" to "Neu parsen",
        "teamManagement.parseUrlAction" to "URL prüfen",
        "teamManagement.partiallyConfigured" to "Teilweise konfiguriert",
        "teamManagement.pdfFileNotFound" to "Die PDF-Datei konnte nicht gefunden werden.",
        "teamManagement.pinList" to "Pin-Liste",
        "teamManagement.plannedLeague" to "Geplante Spielklasse",
        "teamManagement.plannedLeagueHint" to "Optional. Unabhängig von der gemeldeten Liga (MyTischtennis).",
        "teamManagement.plannedLeaguePlaceholder" to "z. B. Bezirksliga, nach nächster Meldung …",
        "teamManagement.planningSubtitle" to "Mitglieder uf geplannti Teams verteile, Riähefoug feschtlege und offeni Zuordnige aluege.",
        "teamManagement.planningTitle" to "Mannschaftsplanig",
        "teamManagement.player" to "Spieler",
        "teamManagement.playersPoolSubtitle" to "Alli aktive Mitglieder mit Spielinteresse",
        "teamManagement.playerStats" to "Spieleinsätze",
        "teamManagement.playerStatsIntro" to "Schneller Überblick über Einsätze der Mannschaft in dieser Saison.",
        "teamManagement.playersWantToPlay" to "Wänd spiele",
        "teamManagement.qttr" to "(Q)TTR-Wert",
        "teamManagement.ratingUpdates" to "Rating-Updates",
        "teamManagement.refreshStats" to "Aktualisieren",
        "teamManagement.reuploadFile" to "Bitte laden Sie die Datei erneut hoch und versuchen Sie es noch einmal.",
        "teamManagement.searchMembers" to "Mitglied sueche",
        "teamManagement.searchTeams" to "Team sueche",
        "teamManagement.season" to "Saison",
        "teamManagement.seasonFull" to "Gesamte Saison (ab 1. Juli)",
        "teamManagement.seasonUnknown" to "unbekannt",
        "teamManagement.secondHalf" to "Rückrunde",
        "teamManagement.secondHalfFull" to "Rückrunde (ab 1. Januar)",
        "teamManagement.selectedLineup" to "Gemeldete Spieler",
        "teamManagement.selectMember" to "Mitglied uswähle",
        "teamManagement.selectTeam" to "Team uswähle",
        "teamManagement.selectTeamFirst" to "Bitte wählen Sie zuerst ein Team aus",
        "teamManagement.selectTeamForConfiguration" to "Um die MyTischtennis-Konfiguration zu aktivieren, müssen Sie zuerst ein Team aus der Liste auswählen.",
        "teamManagement.selectTeamTitle" to "Team auswählen",
        "teamManagement.showCodeList" to "Code-Liste anzeigen",
        "teamManagement.showPinList" to "Pin-Liste anzeigen",
        "teamManagement.sortFirstLast" to "Sortierig: Vorname Nachname",
        "teamManagement.sortLastFirst" to "Sortierig: Nachname Vorname",
        "teamManagement.status" to "Status",
        "teamManagement.subtitle" to "Teams uswähle, Konfiguration prüefe und Ligadate a eim Ort pflege.",
        "teamManagement.successful" to "Erfolgreich",
        "teamManagement.tableUpdateLabel" to "Tabellenaktualisierung:",
        "teamManagement.tableUrlDetected" to "Tabellen-URL erkannt",
        "teamManagement.team" to "Team",
        "teamManagement.teamAgeGroup" to "Altersklasse",
        "teamManagement.teamConfiguredDetails" to "Liga: {league}\nSaison: {season}\nAutomatischer Datenabruf ist jetzt aktiv.",
        "teamManagement.teamConfiguredSuccess" to "Team erfolgreich konfiguriert! Automatischer Datenabruf ist jetzt aktiv.",
        "teamManagement.teamDataFetched" to "Teamdaten erfolgreich abgerufen.",
        "teamManagement.teamDataFetchedDetails" to "Team: {team}\nAbgerufene Datensätze: {count}",
        "teamManagement.teamGender" to "Geschlecht",
        "teamManagement.teamGenderFemale" to "Weiblich",
        "teamManagement.teamGenderOpen" to "Offen",
        "teamManagement.teamHasNoLeague" to "Dieses Team ist keiner Liga zugeordnet.",
        "teamManagement.teamId" to "Team-ID",
        "teamManagement.teamName" to "Team-Name",
        "teamManagement.teamNamePlaceholder" to "z.B. Herren 1, Damen 2",
        "teamManagement.teams" to "Teams",
        "teamManagement.title" to "Team-Verwaltig",
        "teamManagement.unassignedMembers" to "No nid zugeordnet",
        "teamManagement.unassignedMembersSubtitle" to "Mitglieder ohni Team-Zuordnig",
        "teamManagement.unknown" to "Unbekannt",
        "teamManagement.unknownTeam" to "Unbekanntes Team",
        "teamManagement.updated" to "aktualisiert",
        "teamManagement.uploadNewVersion" to "Neue Version hochladen",
        "tournament.apply" to "Übernehmen",
        "tournaments.action" to "Aktion",
        "tournaments.add" to "Hinzufügen",
        "tournaments.addClass" to "Klasse hinzufügen",
        "tournaments.addClubMember" to "Vereinsmitglied hinzufügen",
        "tournaments.addExternalParticipant" to "Externen Teilnehmer hinzufügen",
        "tournaments.addPairing" to "Paarung hinzufügen",
        "tournaments.addPoolRule" to "Pool-Regle hinzufüege",
        "tournaments.address" to "Adrässe",
        "tournaments.adjustTournamentSearch" to "Pass de Suechbegriff aa oder leg es neus Turnier aa.",
        "tournaments.advancersPerGroup" to "Aufsteiger pro Gruppe",
        "tournaments.allClasses" to "Alle Klassen",
        "tournaments.allDataComplete" to "Alli Teilnehmerdaten sind vollständig.",
        "tournaments.allDataCompleteTop3" to "Alli Date vo de erschte 3 Plätz sind vollständig.",
        "tournaments.apply" to "Übernehmen",
        "tournaments.assignmentReviewTitle" to "{count} Teilnehmendi bruuched e Uuswahl:",
        "tournaments.atLeastOnePoolRule" to "Bitte mindestens e Pool-Regle für {label} aalege (z. B. Plätz 1,2).",
        "tournaments.autoAssignableParticipantsHint" to "{count} devo chönd automatisch zuegordnet werde.",
        "tournaments.autoAssignEligible" to "Automatisch zuewise",
        "tournaments.autoAssignEligibleDone" to "{count} Teilnehmendi sind automatisch zuegordnet worde.",
        "tournaments.autoAssignEligibleNone" to "Aktuell git es kei Teilnehmendi mit einderütiger automatische Klassenzuewisig.",
        "tournaments.autoAssignEligiblePartial" to "{successCount} Teilnehmendi sind automatisch zuegordnet worde, bi {errorCount} hets nid klappt.",
        "tournaments.birthdate" to "Geburtsdatum",
        "tournaments.cancel" to "Abbrechen",
        "tournaments.class" to "Klasse",
        "tournaments.classes" to "Klassen",
        "tournaments.className" to "Klassenname",
        "tournaments.cleanupOrphanedMatches" to "Verwaiste Spiele aufräumen",
        "tournaments.club" to "Verein",
        "tournaments.clubMember" to "(Vereinsmitglied)",
        "tournaments.conflictSuggestionLabel" to "Vorschläg:",
        "tournaments.correctMatch" to "Korrigiere",
        "tournaments.create" to "Erstellen",
        "tournaments.createFinalFromIntermediate" to "Endrunde us Zwüscherunde erstelle",
        "tournaments.createFinalFromPreliminary" to "Endrunde us Vorrunde erstelle",
        "tournaments.createGroupMatches" to "Gruppespiel berechne",
        "tournaments.createGroups" to "Gruppen erstellen",
        "tournaments.createIntermediateFromPreliminary" to "Zwüscherunde us Vorrunde erstelle",
        "tournaments.createMatches" to "Spiele erstellen",
        "tournaments.createSuggestedPairings" to "Partner bilde",
        "tournaments.currentClass" to "Aktive Klasse",
        "tournaments.dataNotRecorded" to "No nid erfasst",
        "tournaments.date" to "Datum",
        "tournaments.delete" to "Löschen",
        "tournaments.deleteClassConfirm" to "Möchtsch d'Klass \"{name}\" würklich lösche?",
        "tournaments.deleteClassParticipantsDetached" to "Alli Teilnehmer wärde vo dere Klass entfernt.",
        "tournaments.deleteClassTitle" to "Klass lösche",
        "tournaments.deleteExistingPairingsConfirm" to "Bestehendi Paarige wärde glöscht. Wiitermache?",
        "tournaments.deleteKORound" to "K.o.-Runde",
        "tournaments.diff" to "Diff",
        "tournaments.distributeTables" to "Freii Tisch verteile",
        "tournaments.distributeTablesResult" to "Tischverteilig",
        "tournaments.doubles" to "Doppel",
        "tournaments.doublesPairingHint" to "{count} Teilnehmendi i dere Doppelklass hend no kei Partner.",
        "tournaments.doublesTournament" to "Doppel-Turnier",
        "tournaments.doublesTournamentHint" to "Schaltet alle vorhandenen Klassen auf Doppel und legt neue Klassen standardmässig als Doppel an.",
        "tournaments.edit" to "Bearbeiten",
        "tournaments.eligibleClassesHint" to "Passt zu: {classes}",
        "tournaments.email" to "E-Mail",
        "tournaments.encounter" to "Begegnung",
        "tournaments.enterClassName" to "Bitte gib en Klassename ii.",
        "tournaments.enterExternalParticipantName" to "Bitte gib mindestens Vorname und Nachname ii.",
        "tournaments.enterMiniLocation" to "Bitte gib en Ort ii.",
        "tournaments.errorCreatingGroups" to "Fehler beim Erstellen der Gruppen.",
        "tournaments.errorCreatingTournament" to "Fehler beim Erstellen des Turniers.",
        "tournaments.errorDistributingTables" to "Fehler bim Verteile vo de Tisch.",
        "tournaments.errorGeneratingPdf" to "Fehler bim Erstelle vom PDF.",
        "tournaments.errorMergingClasses" to "Fehler beim Zusammenlegen der Klassen.",
        "tournaments.errorMoreSeededThanUnseeded" to "Es gibt mehr gesetzte als nicht gesetzte Spieler. Zufällige Paarungen können nicht erstellt werden.",
        "tournaments.errorResettingKORound" to "Fehler beim Zurücksetzen der K.o.-Runde.",
        "tournaments.errorUpdatingTournament" to "Fehler beim Aktualisieren des Turniers.",
        "tournaments.exportPDF" to "PDF exportieren",
        "tournaments.external" to "Extern",
        "tournaments.finalPlacements" to "Endplatzierungen",
        "tournaments.finalRound" to "Endrunde",
        "tournaments.finishMatch" to "Abschliessen",
        "tournaments.firstName" to "Vorname",
        "tournaments.forForwarding" to "für Weitermeldung",
        "tournaments.gaveUp" to "Aufgegeben",
        "tournaments.gaveUpHint" to "Spieler hat aufgegeben – alle Spiele zählen für den Gegner (11:0) bzw. 0:0 bei beiden aufgegeben.",
        "tournaments.genderAll" to "Alle",
        "tournaments.genderMixed" to "Mixed",
        "tournaments.generatingPDF" to "PDF wird erstellt...",
        "tournaments.group" to "Gruppe",
        "tournaments.groupMatches" to "Gruppenspiele",
        "tournaments.groupNumber" to "Gruppe",
        "tournaments.groupPlacements" to "Gruppenplatzierungen",
        "tournaments.groupsLabel" to "Gruppe",
        "tournaments.groupsOverview" to "Gruppenübersicht",
        "tournaments.groupsPerClass" to "Gruppen",
        "tournaments.groupsPerClassHint" to "Geben Sie für jede Klasse die Anzahl der Gruppen ein (0 = keine Gruppen für diese Klasse):",
        "tournaments.index" to "Index",
        "tournaments.intermediateRound" to "Zwüscherunde (Runde 2)",
        "tournaments.internalStatsAbsoluteRank" to "Rangliste Gsamtwertig",
        "tournaments.internalStatsAgeFilter" to "Altersklassä & Gschlächt (Einzel)",
        "tournaments.internalStatsAgeFilterAll" to "Alli Altersklassä",
        "tournaments.internalStatsAgeFilterNone" to "Kei Altersklass usgwählt",
        "tournaments.internalStatsAgeNoClass" to "Ohni Klassäzuordnig",
        "tournaments.internalStatsAgeSelectAll" to "Alli",
        "tournaments.internalStatsAgeSelectNone" to "Keini",
        "tournaments.internalStatsAverageRank" to "Rangliste Durchschnitt (pro Turnier)",
        "tournaments.internalStatsAvgPoints" to "Ø",
        "tournaments.internalStatsEmpty" to "Kei uswertbari Date im gwählte Ziitruum.",
        "tournaments.internalStatsExportPdf" to "Als PDF exportieren",
        "tournaments.internalStatsFilterAgeBands" to "Altersklassä",
        "tournaments.internalStatsFilterGenderColumn" to "Gschlächt",
        "tournaments.internalStatsGenderScopeAll" to "Alli",
        "tournaments.internalStatsGenderScopeGirls" to "Mädchen",
        "tournaments.internalStatsLast12Months" to "Letscht 12 Mönet",
        "tournaments.internalStatsLast3Months" to "Letscht 3 Mönet",
        "tournaments.internalStatsLast6Months" to "Letscht 6 Mönet",
        "tournaments.internalStatsOpenButton" to "Turnierstatistik (Einzel)",
        "tournaments.internalStatsPeriod" to "Ziitruum",
        "tournaments.internalStatsPoints" to "Summe",
        "tournaments.internalStatsPointsExplain" to "Wertig: Pro Gruppe wird d Platzierig als Prozentzahl usdrückt (bi N Teilnehmer mit Platzierig: 1. = 100 %, Letschte = 0 %, dzwüsche linear; gliichi Platzierig = gliiche Wert). N umfasst alli Platzierte ide Gruppe (inkl. Gäscht). Bi nume einem Teilnehmer: 100 %. Wer d K.-o.-Rundi erreicht, bechunnt de höchschte Gruppewert vo de Chlass plus 1, deno no 1 Punkt pro gwunne K.-o.-Spiel. Nur Veräinsmitglieder (Einzel).",
        "tournaments.internalStatsTitle" to "Statistik interne Turniere (Einzel)",
        "tournaments.internalStatsTournamentsInPeriod" to "{count} Turnier(e) im Ziitruum (ohni Minimeisterschafte).",
        "tournaments.internalStatsTtAdult" to "Erwachsene",
        "tournaments.internalTournaments" to "Interne Turniere",
        "tournaments.knockoutLabel" to "KO",
        "tournaments.koRound" to "K.-o.-Runde",
        "tournaments.lastName" to "Nachname",
        "tournaments.livePosition" to "Live-Platz",
        "tournaments.loadFromTraining" to "Aus Trainingstag laden",
        "tournaments.markMatchLive" to "Als laufend markiere",
        "tournaments.maxGroupSize" to "Maximale Gruppengrösse",
        "tournaments.mergeClasses" to "Klassen zusammenlegen (gemeinsame Gruppenphase)",
        "tournaments.mergeDistribute" to "Spieler aus A auf alle Gruppen (von B) verteilen",
        "tournaments.mergeSingleGroup" to "Alle Spieler aus A in eine Gruppe (bei B)",
        "tournaments.minBirthYear" to "Geboren im Jahr oder später",
        "tournaments.miniChampionshipLocation" to "Ort",
        "tournaments.miniChampionships" to "Minimeisterschaften",
        "tournaments.miniChampionshipYear" to "Jahr",
        "tournaments.miniChampionshipYearHint" to "12 = in diesem Jahr 12 oder 13 Jahre, 10 = 10 oder 11, 8 = 9 und jünger",
        "tournaments.minimumParticipantsForPairings" to "Mindestens 2 Teilnehmer für Paarige nötig.",
        "tournaments.missingDataPDF" to "Fehlendi Date als PDF",
        "tournaments.missingDataPDFSubtitle" to "Bitte d'fehlende Date (markiert mit ____) bi de Teilnehmer nochfroge und do notiere.",
        "tournaments.missingDataPDFSubtitleTop3" to "Fehlendi Date vo de erschte 3 (markiert mit ____) bitte nochfroge und do notiere.",
        "tournaments.missingDataPDFTitle" to "Fehlendi Teilnehmerdaten – Minimeisterschaft",
        "tournaments.missingDataPDFTitleTop3" to "Fehlendi Date – Top 3 Minimeisterschaft",
        "tournaments.name" to "Name",
        "tournaments.newMiniChampionship" to "Neue Minimeisterschaft",
        "tournaments.setShort" to "Satz",
        "tournaments.newTournament" to "Neues Turnier",
        "tournaments.noAssignableMatches" to "Kei Spiel verfüegbar, wo beidi Spieler frei sind.",
        "tournaments.noClassesYet" to "Noch keine Klassen vorhanden. Fügen Sie eine neue Klasse hinzu.",
        "tournaments.noEligibleClass" to "Kei passendi Klass gfunde.",
        "tournaments.noFreeTables" to "Kei freie Tisch verfüegbar.",
        "tournaments.noMatchingTournamentsTitle" to "Kei passendie Turnier",
        "tournaments.noOrphanedMatchesFound" to "Kei verwaisti Spiel gfunde.",
        "tournaments.noPlacementsYet" to "Noch keine Platzierungen vorhanden.",
        "tournaments.noPlayerDataAvailable" to "Keine Spielerdaten verfügbar",
        "tournaments.noPoolRulesYet12" to "No kei Regle. Biispil: Plätz 1 und 2 -> oberi Runde-2-Gruppe.",
        "tournaments.noPoolRulesYetFinal" to "No kei Regle. Biispil: Plätz 1 und 2 -> Endrunde.",
        "tournaments.noTop3Yet" to "D'erschte 3 Plätz stönd no nid fescht.",
        "tournaments.noTournamentDate" to "Kei Turnierdatum vorhande.",
        "tournaments.noTournamentsCreatedYet" to "Es sind no kei Turnier aagleit worde.",
        "tournaments.noTrainingOnDate" to "Kei Trainingstag für {date} gfunde.",
        "tournaments.noTrainingParticipants" to "Kei Teilnehmer im Training für das Datum gfunde.",
        "tournaments.noValidTrainingParticipants" to "Kei gültige Teilnehmer im Training für das Datum gfunde.",
        "tournaments.numberOfGroups" to "Anzahl Gruppen",
        "tournaments.numberOfTables" to "Aazahl Tisch",
        "tournaments.openTournaments" to "Offene Turniere",
        "tournaments.optional" to "optional",
        "tournaments.orphanedMatchesRemoved" to "{count} verwaisti Spiel entfernt.",
        "tournaments.outOfCompetition" to "Spieler aus A ausser Konkurrenz",
        "tournaments.page" to "Siite",
        "tournaments.pairingAlreadyExists" to "Die Paarig git's scho.",
        "tournaments.pairings" to "Doppel-Paarungen",
        "tournaments.pairingsCreatedWithErrors" to "{successCount} Paarige erstellt, {errorCount} Fehler.",
        "tournaments.participantConflicts" to "Konflikt",
        "tournaments.participantNotFound" to "Teilnehmer nid gfunde.",
        "tournaments.participants" to "Teilnehmer",
        "tournaments.participantsNeedClassAssignment" to "{count} Teilnehmendi sind no keire Klass zuegordnet. Die sötted zerscht zueteilt werde.",
        "tournaments.phone" to "Telefon",
        "tournaments.placementsPendingFinals" to "Endplatzierige erschiined, sobald mehri Gruppe oder e Schlussrundi vorhande sind.",
        "tournaments.placementsPendingGroups" to "Gruppeplatzierige erschiined, sobald Gruppespiel vorhande sind.",
        "tournaments.placementsPendingNoGroups" to "Sobald Gruppespiel oder e Schlussrundi vorhande sind, erschiined d Platzierige da.",
        "tournaments.placementsPendingSelectedClass" to "Für d aktuell usgwählti Klass git's no kei Platzierige.",
        "tournaments.placementsPendingTitle" to "Platzierige no nöd verfügbar",
        "tournaments.placesFromEachGroup" to "Plätz us jeder Gruppe (z. B. 1,2)",
        "tournaments.player" to "Spieler",
        "tournaments.playerOne" to "Spieler 1",
        "tournaments.playerTwo" to "Spieler 2",
        "tournaments.playInGroups" to "Spielen in Gruppen",
        "tournaments.playThirdPlace" to "Um Platz 3 spiele",
        "tournaments.pleaseEnterDate" to "Bitte geben Sie ein Datum ein!",
        "tournaments.pleaseSelectParticipant" to "Bitte wählen Sie einen Teilnehmer aus!",
        "tournaments.points" to "Punkte",
        "tournaments.pointsRatio" to "Spielpunkte",
        "tournaments.poolRuleLabel" to "Regle {number}",
        "tournaments.poolRulePlacesHelp" to "Bispiel: 1 oder 1,2",
        "tournaments.poolRulePlacesLabel" to "Weli Plätz chömed wiiter?",
        "tournaments.poolRulePreview" to "Us jedere Gruppe gönd Platz {places} wiiter i {target}.",
        "tournaments.poolRuleQuickExamples" to "Schnällbispiel:",
        "tournaments.poolRuleSummary" to "Plätz {places} gönd i {target}",
        "tournaments.poolRuleTargetGroupsDetailed" to "{count} Zielgruppe",
        "tournaments.poolRuleTargetKnockout" to "s K.-o.-Fäld",
        "tournaments.poolRuleTargetLabel" to "Wohi gönd die Plätz?",
        "tournaments.position" to "Platz",
        "tournaments.problemConfigDescription" to "Prüef Datum, Name und Gwünnsätz.",
        "tournaments.problemConfigTitle" to "Konfiguration unvollständig",
        "tournaments.problemConflictsDescription" to "Prüef unpassendi Klasse, fehlendi Date oder unklari Zuewisige.",
        "tournaments.problemConflictsTitle" to "{count} Teilnehmendi mit Konflikt",
        "tournaments.problemDoublesAutoDescription" to "D offeni Doppelklass cha direkt automatisch paarlet werde.",
        "tournaments.problemDoublesDescription" to "Ei oder meh Doppelklasse bruuched no Partnerzuewisige.",
        "tournaments.problemDoublesTitle" to "{count} offeni Doppelpartner",
        "tournaments.problemGroupMatchesDescription" to "D Gruppe sind parat, aber d Spiel sind no nid erstellt.",
        "tournaments.problemGroupMatchesTitle" to "Gruppespiel no nid erzeugt",
        "tournaments.problemGroupsMissingDescription" to "Für s Gruppeturnier muesed zerscht Gruppe aagleit werde.",
        "tournaments.problemGroupsMissingTitle" to "Gruppe no nid erstellt",
        "tournaments.problemKnockoutReadyDescription" to "D Gruppenphase isch abgschlosse und d Endrundi cha jetzt erzeugt werde.",
        "tournaments.problemKnockoutReadyTitle" to "K.-o.-Rundi cha gstartet werde",
        "tournaments.problemUnassignedAutoDescription" to "{count} devo chönd direkt automatisch zuegordnet werde.",
        "tournaments.problemUnassignedDescription" to "Die Teilnehmendi bruuched no e manuelli Klassenzuewisig.",
        "tournaments.problemUnassignedTitle" to "{count} Teilnehmendi ohni Klass",
        "tournaments.promotionRule12" to "Wiitercho: Vorrunde → Zwüscherunde (1→2)",
        "tournaments.promotionRuleDescription12" to "Da legsch fescht, weli Plätz us jedere Vorrundegruppe i d Zwüscherundi chömed.",
        "tournaments.promotionRuleDescriptionFinalGroups" to "Da legsch fescht, weli Plätz us dr vorherige Rundi i d Gruppe vo dr Endrundi chömed.",
        "tournaments.promotionRuleDescriptionFinalKnockout" to "Da legsch fescht, weli Plätz us dr vorherige Rundi is K.-o.-Fäld chömed.",
        "tournaments.promotionRuleFinal" to "Wiitercho: Runde {from} → Runde {to}",
        "tournaments.randomizeGroups" to "Zufällig verteilen",
        "tournaments.randomPairings" to "Zufällige Doppel-Paarungen",
        "tournaments.randomPairingsCreated" to "Zufällige Paarungen wurden erstellt.",
        "tournaments.resetGroupMatches" to "Gruppenspiele",
        "tournaments.resetGroups" to "Gruppen zurücksetzen",
        "tournaments.result" to "Ergebnis",
        "tournaments.resultsRanking" to "Rangliste",
        "tournaments.round" to "Runde",
        "tournaments.roundGroupCount" to "Aazahl Gruppe",
        "tournaments.roundMode" to "Modus",
        "tournaments.ruleStatusBlocked" to "Blockiert",
        "tournaments.ruleStatusOk" to "Passt",
        "tournaments.ruleStatusOkDescription" to "Diese Regel passt zur aktuellen Zielrunde und kann so verwendet werden.",
        "tournaments.ruleStatusReview" to "Prüfen",
        "tournaments.save" to "Speichern",
        "tournaments.saveRounds" to "Runde speichere",
        "tournaments.seeded" to "Gesetzt",
        "tournaments.selectClass" to "Klasse auswählen",
        "tournaments.selectClassPrompt" to "Bitte wählen Sie oben eine Klasse aus.",
        "tournaments.selectedTournament" to "Aktivs Turnier",
        "tournaments.selectParticipant" to "-- Teilnehmer auswählen --",
        "tournaments.selectPlayer" to "Spieler auswählen",
        "tournaments.selectTournamentFirst" to "Bitte wähl zerscht es Turnier us.",
        "tournaments.selectTwoDifferentPlayers" to "Bitte wähl zwei verschiedeni Spieler us.",
        "tournaments.setDiff" to "Satzdifferenz",
        "tournaments.sets" to "Sätze",
        "tournaments.showClass" to "Klasse anzeigen",
        "tournaments.showingTournamentCount" to "{visible} vo {total}",
        "tournaments.showPlayerDetails" to "Spielerdetails anzeigen",
        "tournaments.singles" to "Einzel",
        "tournaments.sourceClass" to "Quelle",
        "tournaments.stageActionMissingRulesHint" to "Leg zerscht mindestens eini Witercho-Regle aa, bevor du Spieler i d nöchsti Rundi übernimmst.",
        "tournaments.stageActionRun" to "Jetzt uusfüehre",
        "tournaments.stageActionsDescription" to "Die Schritt übernähmed qualifizierti Spieler i d nöchsti Rundi.",
        "tournaments.stageActionsTitle" to "Nächsti Aktione",
        "tournaments.stageConfigBadServerResponse" to "Ungültigi Server-Antwort.",
        "tournaments.stageConfigCurrentSetup" to "Aktuelli Struktur",
        "tournaments.stageConfigIntro" to "D'Zwüscherunde isch optional. Wenn du sie aktiviersch, git's nacher immer e Endrunde. E KO-Endrunde wird als eis einzelnes Feld erzeugt.",
        "tournaments.stageConfigLoadError" to "Fehler bim Lade vo de Rundenkonfiguration.",
        "tournaments.stageConfigLoading" to "Lade Rundenkonfiguration …",
        "tournaments.stageConfigMissingIds" to "Cha nid speichere: Vereins- oder Turnier-ID fählt.",
        "tournaments.stageConfigTitle" to "Zwüscherunde & Endrunde",
        "tournaments.stageCreated" to "Runde {round} isch erstellt worde.",
        "tournaments.stageFinalDescription" to "Leg fescht, ob d Endrundi als Gruppe oder direkt als K.-o.-Fäld gspielt wird.",
        "tournaments.stageFlowBreakdownActionAddRule" to "Regel anlegen",
        "tournaments.stageFlowBreakdownActionOpen" to "Regel öffnen",
        "tournaments.stageFlowBreakdownActionReview" to "Fehler prüfen",
        "tournaments.stageFlowBreakdownErrors" to "{count} Fehler blockieren",
        "tournaments.stageFlowBreakdownMissingRule" to "Noch keine vollständige Regel angelegt",
        "tournaments.stageFlowBreakdownOk" to "Konfiguration passt",
        "tournaments.stageFlowBreakdownWarnings" to "{count} Hinweis(e) offen",
        "tournaments.stageFlowDirectFinal" to "Vorrundi -> Endrundi ({final})",
        "tournaments.stageFlowHealthBlocked" to "Rundenlogik widersprüchlich",
        "tournaments.stageFlowHealthBlockedDescription" to "Mindestens eine Regel passt aktuell nicht zur Zielrunde oder enthält blockierende Konfigurationsfehler.",
        "tournaments.stageFlowHealthIncomplete" to "Rundenlogik unvollständig",
        "tournaments.stageFlowHealthMissingRules" to "Mindestens ein Übergang hat noch keine vollständige Weiterkommens-Regel.",
        "tournaments.stageFlowHealthOk" to "Rundenlogik passt",
        "tournaments.stageFlowHealthOkDescription" to "Die Übergänge zwischen den Runden sind vollständig konfiguriert und aktuell stimmig.",
        "tournaments.stageFlowHealthReviewDescription" to "Die Rundenlogik ist grundsätzlich nutzbar, sollte aber wegen offener Hinweise noch geprüft werden.",
        "tournaments.stageFlowPreviewMissing" to "Noch keine Regel konfiguriert.",
        "tournaments.stageFlowPreviewRule" to "Plätze {places} gehen in {target}",
        "tournaments.stageFlowPreviewRuleWithCount" to "{base} (voraussichtlich {count} Qualifizierte)",
        "tournaments.stageFlowQualifiedPreviewEntry" to "G{group} · Platz {position} · {name}",
        "tournaments.stageFlowQualifiedPreviewTitle" to "Aktuell qualifiziert",
        "tournaments.stageFlowReadinessIncompleteGroups" to "{count} Gruppe(n) sind noch nicht vollständig entschieden",
        "tournaments.stageFlowReadinessNoGroups" to "Noch keine passenden Gruppen vorhanden",
        "tournaments.stageFlowReadinessReady" to "Übergang ist fachlich startklar",
        "tournaments.stageFlowRecommendationError" to "Prüfe zuerst den ersten blockierenden Fehler in der Rundenlogik.",
        "tournaments.stageFlowRecommendationFixes" to "Die typischen Konfigurationsprobleme können direkt automatisch bereinigt werden.",
        "tournaments.stageFlowRecommendationMissingRule" to "Für {label} fehlt noch eine vollständige Regel. Lege am besten damit los.",
        "tournaments.stageFlowRecommendationSave" to "Die Rundenlogik ist stimmig. Du kannst die Konfiguration jetzt speichern.",
        "tournaments.stageFlowRecommendationTitle" to "Empfohlener nächster Schritt",
        "tournaments.stageFlowRecommendationWarnings" to "Es gibt noch Hinweise, die du vor dem Speichern prüfen solltest.",
        "tournaments.stageFlowWithIntermediate" to "Vorrundi -> Zwüscherundi ({stage2}) -> Endrundi ({final})",
        "tournaments.stageParticipantsTransferred" to "Qualifizierti Spieler sind i {round} überno worde.",
        "tournaments.stageStep1" to "Schritt 1",
        "tournaments.stageStep1Description" to "Entscheid zerscht, ob nach dr Vorrundi no e zusätzlechi Rundi gspielt werde söll.",
        "tournaments.stageStep1Title" to "Zwüscherundi festlege",
        "tournaments.stageStep2" to "Schritt 2",
        "tournaments.stageStep2Description" to "Leg fescht, wie d Zwüscherundi uusgseh söll und wie viu Gruppe sie brucht.",
        "tournaments.stageStep3" to "Schritt 3",
        "tournaments.stageValidationApplyAllFixes" to "{count} Schnellkorrektur(en) anwenden",
        "tournaments.stageValidationApplyFix" to "Übernehmen",
        "tournaments.stageValidationApplyTargetGroupFix" to "Auf {count} Zielgruppen setzen",
        "tournaments.stageValidationApplyTargetTypeFix" to "Auf {target} umstellen",
        "tournaments.stageValidationDescription" to "Diese Punkte solltest du vor dem Speichern oder Übernehmen der nächsten Runde korrigieren.",
        "tournaments.stageValidationGroupCountRequired" to "Bitte mindestens eine gültige Gruppenanzahl festlegen.",
        "tournaments.stageValidationKnockoutByesLikely" to "Mit voraussichtlich {count} Qualifizierten wird das K.-o.-Feld sehr wahrscheinlich Freilose enthalten.",
        "tournaments.stageValidationKnockoutNeedsTwoPlayers" to "Für ein K.-o.-Feld werden mindestens 2 Qualifizierte benötigt.",
        "tournaments.stageValidationKnockoutTargetOnly" to "Bei einer K.-o.-Endrunde ist hier nur das K.-o.-Feld als Ziel erlaubt.",
        "tournaments.stageValidationNoRules" to "Für {stage} ist noch keine Weiterkommens-Regel angelegt.",
        "tournaments.stageValidationNotEnoughQualifiersForGroups" to "Mit nur {count} Qualifizierten für {groups} Zielgruppen würden leere Gruppen entstehen.",
        "tournaments.stageValidationRulePlacesDuplicate" to "Eine Regel darf denselben Platz nicht mehrfach enthalten.",
        "tournaments.stageValidationRulePlacesGap" to "Die Platzangabe hat Lücken. Meist ist eine zusammenhängende Reihenfolge wie 1,2 oder 1,2,3 gemeint.",
        "tournaments.stageValidationRulePlacesInvalid" to "Die Platzangabe ist ungültig. Erlaubt sind nur positive ganze Zahlen wie 1 oder 1,2.",
        "tournaments.stageValidationRulePlacesRequired" to "Trage mindestens einen Platz ein, der weiterkommen soll.",
        "tournaments.stageValidationRulesOverlap" to "Platz {place} ist doppelt vergeben, nämlich in Regel {first} und Regel {second}.",
        "tournaments.stageValidationSaveBlocked" to "Bitte zuerst die markierten Konfigurationsfehler korrigieren.",
        "tournaments.stageValidationSuggestion" to "Vorschlag: {value}",
        "tournaments.stageValidationTargetGroupCountMismatch" to "Die Anzahl der Zielgruppen muss zur Zielrunde passen. Erwartet: {expected}.",
        "tournaments.stageValidationTargetGroupsRequired" to "Bitte eine gültige Anzahl von Zielgruppen angeben.",
        "tournaments.stageValidationTargetTypeMismatch" to "Das Ziel dieser Regel muss zur Zielrunde passen. Erwartet: {target}.",
        "tournaments.stageValidationThinGroupsLikely" to "Mit {count} Qualifizierten auf {groups} Zielgruppen werden die Gruppen vermutlich sehr klein.",
        "tournaments.stageValidationTitle" to "Konfiguration prüfen",
        "tournaments.startKORound" to "K.o.-Runde starten",
        "tournaments.statusActionAssign" to "Zuewise",
        "tournaments.statusActionCreate" to "Erstelle",
        "tournaments.statusActionGenerate" to "Erzüüge",
        "tournaments.statusActionPair" to "Paar bilde",
        "tournaments.statusActionReview" to "Prüefe",
        "tournaments.statusActionStart" to "Starte",
        "tournaments.statusConfigIncomplete" to "Konfiguration unvollständig",
        "tournaments.statusConfigReady" to "Konfiguration parat",
        "tournaments.statusFinished" to "Fertig",
        "tournaments.statusGroupsMissing" to "Gruppe no nid erstellt",
        "tournaments.statusGroupsReady" to "Gruppe parat",
        "tournaments.statusGroupsRunning" to "Gruppenphase lauft",
        "tournaments.statusKnockoutReady" to "K.-o.-Rundi startklar",
        "tournaments.statusKnockoutRunning" to "K.-o.-Rundi lauft",
        "tournaments.statusLive" to "Live",
        "tournaments.statusOpen" to "Offe",
        "tournaments.statusParticipantsConflicts" to "{count} Teilnehmendi mit Konflikt",
        "tournaments.statusParticipantsReady" to "{count} Teilnehmendi ohni Konflikt",
        "tournaments.statusParticipantsUnassigned" to "{count} ohni Klass",
        "tournaments.statusTournamentCompleted" to "Turnier abgeschlossen",
        "tournaments.statusUnpairedDoubles" to "{count} Doppel ohni Partner",
        "tournaments.strategy" to "Strategie",
        "tournaments.tabConfig" to "Konfiguration",
        "tournaments.tabGroups" to "Gruppen",
        "tournaments.table" to "Tisch",
        "tournaments.tablesDistributed" to "Tisch sind verteilt worde.",
        "tournaments.tabParticipants" to "Teilnehmer",
        "tournaments.tabPlacements" to "Platzierungen",
        "tournaments.tabResults" to "Ergebnisse",
        "tournaments.target" to "Ziel",
        "tournaments.targetClass" to "Ziel",
        "tournaments.targetGroupCount" to "Ziel-Gruppenaazahl",
        "tournaments.targetGroupsLabel" to "{count} Gruppe",
        "tournaments.tournamentClassGenderFemale" to "Weiblich",
        "tournaments.tournamentClassGenderOpen" to "Alli",
        "tournaments.tournamentName" to "Turniername",
        "tournaments.tournamentParticipations" to "Offizielle Turniere & Teilnahmen",
        "tournaments.transferQualifiedToFinalFromIntermediate" to "Qualifizierti Spieler i d Endrundi übernäh",
        "tournaments.transferQualifiedToFinalFromIntermediateDesc" to "Brucht d Regle Zwüscherundi -> Endrundi und übernimmt d qualifizierti Spieler.",
        "tournaments.transferQualifiedToFinalFromPreliminary" to "Qualifizierti Spieler direkt i d Endrundi übernäh",
        "tournaments.transferQualifiedToFinalFromPreliminaryDesc" to "Brucht d Regle Vorrundi -> Endrundi und erstellt det direkt d qualifizierti Spieler.",
        "tournaments.transferQualifiedToIntermediate" to "Qualifizierti Spieler i d Zwüscherundi übernäh",
        "tournaments.transferQualifiedToIntermediateDesc" to "Brucht d Regle Vorrundi -> Zwüscherundi und übernimmt d qualifizierti Spieler.",
        "tournaments.unknown" to "Unbekannt",
        "tournaments.unknownDate" to "Unbekanntes Datum",
        "tournaments.unmarkMatchLive" to "Laufend-Markierig entferne",
        "tournaments.unpairedDoubles" to "Doppel ohni Partner",
        "tournaments.useIntermediateStage" to "Zwüscherunde verwände",
        "tournaments.warningBirthDateMissing" to "Geburtsdatum fehlt für die Klass",
        "tournaments.warningClassMissing" to "Klass nid gfunde",
        "tournaments.warningGenderMismatch" to "Gschlächt passt nid zur Klass",
        "tournaments.warningGenderMissing" to "Gschlächt fehlt für die Klass",
        "tournaments.warningMissingPairing" to "Doppelpartner fehlt",
        "tournaments.warningTooOldForClass" to "Z'alt für die Klass",
        "tournaments.warningTooYoungForClass" to "Z'jung für die Klass",
        "tournaments.winningSets" to "Gewinnsätze",
        "tournaments.withoutClass" to "Ohne Klasse",
        "tournaments.workspaceProblemsTitle" to "{count} offeni Pünkt",
        "trainingDetails.birthdate" to "Geburtsdatum",
        "trainingDetails.birthYear" to "Geburtsjahr",
        "trainingDetails.last12Months" to "Letzte 12 Monate",
        "trainingDetails.last3Months" to "Letzte 3 Monate",
        "trainingDetails.maxBirthYear" to "Geboren ≤ Jahr",
        "trainingDetails.noTrainings" to "Keine Trainingsteilnahmen vorhanden",
        "trainingDetails.title" to "Trainings-Details",
        "trainingDetails.total" to "Gesamt",
        "trainingDetails.trainingParticipations" to "Trainingsteilnahmen (absteigend sortiert)",
        "trainingGroupsTab.addMember" to "Mitglied hinzufügen...",
        "trainingGroupsTab.cancel" to "Abbrechen",
        "trainingGroupsTab.create" to "Erstellen",
        "trainingGroupsTab.delete" to "Löschen",
        "trainingGroupsTab.edit" to "Bearbeiten",
        "trainingGroupsTab.editGroup" to "Gruppe bearbeiten",
        "trainingGroupsTab.groupName" to "Gruppenname",
        "trainingGroupsTab.groups" to "Gruppen",
        "trainingGroupsTab.members" to "Mitglieder",
        "trainingGroupsTab.newGroup" to "+ Neue Gruppe",
        "trainingGroupsTab.noMembersAvailable" to "Keine Mitglieder verfügbar",
        "trainingGroupsTab.remove" to "Entfernen",
        "trainingStats.actions" to "Aktionen",
        "trainingStats.activeMembers" to "Aktive Mitglieder",
        "trainingStats.allTrainingDays" to "Alle Trainingstage",
        "trainingStats.attendingMembers" to "Anwesende Mitglieder",
        "trainingStats.averageParticipationCurrentMonth" to "Durchschnittliche Teilnahme (aktueller Monat)",
        "trainingStats.averageParticipationHalfYear" to "Durchschnittliche Teilnahme (Halbjahr)",
        "trainingStats.averageParticipationLastMonth" to "Durchschnittliche Teilnahme (letzter Monat)",
        "trainingStats.averageParticipationQuarter" to "Durchschnittliche Teilnahme (Quartal)",
        "trainingStats.averageParticipationYear" to "Durchschnittliche Teilnahme (Jahr)",
        "trainingStats.birthdate" to "Geburtsdatum",
        "trainingStats.date" to "Datum",
        "trainingStats.lastTraining" to "Letztes Training",
        "trainingStats.memberParticipations" to "Mitglieder-Teilnahmen",
        "trainingStats.name" to "Name",
        "trainingStats.noParticipants" to "Keine Teilnehmer",
        "trainingStats.panelAgeGroups" to "Anwesenheit nach Altersklasse",
        "trainingStats.panelBestDay" to "Stärkster Trainingstag",
        "trainingStats.panelGroupPerformance" to "Entwicklung pro Gruppe",
        "trainingStats.panelMemberStructure" to "Mitgliederstruktur",
        "trainingStats.panelMonthlyTrend" to "Monatlicher Verlauf",
        "trainingStats.panelSummary" to "Kennzahlen (Filter)",
        "trainingStats.panelWeekdayStats" to "Trainingstage nach Wochentag",
        "trainingStats.participants" to "Teilnehmer",
        "trainingStats.participations12Months" to "Teilnahmen (12 Monate)",
        "trainingStats.participations3Months" to "Teilnahmen (3 Monate)",
        "trainingStats.participationsTotal" to "Teilnahmen (Gesamt)",
        "trainingStats.qttr" to "QTTR",
        "trainingStats.showDetails" to "Details anzeigen",
        "trainingStats.title" to "Trainings-Statistik",
        "trainingStats.trainingDayFilter" to "Trainingstag",
        "trainingStats.trainingDays" to "Trainingstage (letzte 12 Monate)",
        "trainingStats.ttr" to "TTR",
        "trainingStats.weekday" to "Wochentag",
        "trainingTimesTab.addTime" to "+ Zeit hinzufügen",
        "trainingTimesTab.cancel" to "Abbrechen",
        "trainingTimesTab.create" to "Erstellen",
        "trainingTimesTab.delete" to "Löschen",
        "trainingTimesTab.edit" to "Bearbeiten",
        "trainingTimesTab.editTime" to "Trainingszeit bearbeiten",
        "trainingTimesTab.excludeFromQuickDiaryCreate" to "Vom Schnellanlegen (Tagebuch) ausnehmen",
        "trainingTimesTab.excludeFromQuickDiarySaveError" to "Die Einstellung konnte nicht gespeichert werden.",
        "trainingTimesTab.friday" to "Freitag",
        "trainingTimesTab.from" to "Von:",
        "trainingTimesTab.loading" to "Lade Trainingszeiten...",
        "trainingTimesTab.monday" to "Montag",
        "trainingTimesTab.noTimes" to "Keine Trainingszeiten definiert",
        "trainingTimesTab.saturday" to "Samstag",
        "trainingTimesTab.save" to "Speichern",
        "trainingTimesTab.saveError" to "Fehler beim Speichern der Trainingszeit",
        "trainingTimesTab.sunday" to "Sonntag",
        "trainingTimesTab.thursday" to "Donnerstag",
        "trainingTimesTab.to" to "Bis:",
        "trainingTimesTab.tuesday" to "Dienstag",
        "trainingTimesTab.wednesday" to "Mittwoch",
        "trainingTimesTab.weekday" to "Wochentag:",
        "unknown" to "Unbekannt",
    ) }

    private val de_extended: Map<String, String> by lazy { mapOf(
        "accident.accident" to "Unfall",
        "accident.accidentDescription" to "Beschreibung des Unfalls...",
        "accident.close" to "Schließen",
        "accident.member" to "Mitglied",
        "accident.pleaseSelect" to "Bitte wählen",
        "accident.reportAccident" to "Unfall melden",
        "accident.reportedAccidents" to "Gemeldete Unfälle",
        "accident.submit" to "Eintragen",
        "activityStats.activityStatistics" to "Statistik der Übungen",
        "activityStats.last3Participations" to "Letzte 3 Teilnahmen",
        "activityStats.noParticipations" to "Keine Teilnahmen vorhanden",
        "activityStats.noStatistics" to "Keine Statistiken vorhanden",
        "activityStats.title" to "Übungs-Statistiken",
        "app.name" to "Trainingstagebuch",
        "app.title" to "Trainingstagebuch",
        "auth.accountActivated" to "Account aktiviert! Du kannst dich jetzt anmelden.",
        "auth.activate" to "Aktivieren",
        "auth.activateAccount" to "Account aktivieren",
        "auth.activationFailed" to "Aktivierung fehlgeschlagen. Bitte überprüfe den Link oder versuche es erneut.",
        "auth.confirmPassword" to "Passwort bestätigen",
        "auth.email" to "E-Mail",
        "auth.forgotPassword" to "Passwort vergessen?",
        "auth.forgotPasswordDescription" to "Gib deine E-Mail-Adresse ein. Du erhältst einen Link, um dein Passwort zurückzusetzen.",
        "auth.hasAccount" to "Bereits ein Konto?",
        "auth.login" to "Einloggen",
        "auth.loginFailed" to "Login fehlgeschlagen. Bitte Zugangsdaten prüfen und erneut versuchen.",
        "auth.loginSuccess" to "Erfolgreich eingeloggt",
        "auth.logout" to "Ausloggen",
        "auth.logoutSuccess" to "Erfolgreich ausgeloggt",
        "auth.newPassword" to "Neues Passwort",
        "auth.noAccount" to "Noch kein Konto?",
        "auth.password" to "Passwort",
        "auth.passwordResetSuccess" to "Dein Passwort wurde erfolgreich geändert. Du kannst dich jetzt mit deinem neuen Passwort anmelden.",
        "auth.passwordsDoNotMatch" to "Die Passwörter stimmen nicht überein.",
        "auth.passwordTooShort" to "Das Passwort muss mindestens 6 Zeichen lang sein.",
        "auth.register" to "Registrieren",
        "auth.registerFailed" to "Registrierung fehlgeschlagen. Bitte versuchen Sie es erneut.",
        "auth.registerSuccess" to "Registrierung erfolgreich! Bitte prüfen Sie Ihre E-Mails, um den Account zu aktivieren.",
        "auth.rememberMe" to "Angemeldet bleiben",
        "auth.resetEmailSent" to "Falls ein Konto mit dieser E-Mail existiert, wurde ein Link zum Zurücksetzen gesendet. Bitte prüfe dein Postfach (auch den Spam-Ordner).",
        "auth.resetFailed" to "Passwort konnte nicht geändert werden. Der Link ist möglicherweise abgelaufen.",
        "auth.resetPassword" to "Neues Passwort vergeben",
        "auth.resetRequestFailed" to "Anfrage fehlgeschlagen. Bitte versuche es erneut.",
        "auth.saveNewPassword" to "Passwort speichern",
        "auth.saving" to "Wird gespeichert...",
        "auth.sending" to "Wird gesendet...",
        "auth.sendResetLink" to "Link senden",
        "auth.sessionExpired" to "Deine Sitzung ist abgelaufen. Du wirst abgemeldet.",
        "auth.toLogin" to "Zum Login",
        "baseDialog.close" to "Schließen",
        "baseDialog.minimize" to "Minimieren",
        "baseDialog.resize" to "Größe ändern",
        "billing.autoSuggestMapping" to "Auto-Vorschläge",
        "billing.deleteBilling" to "Löschen",
        "billing.deleteConfirm" to "Diese erzeugte Abrechnung wirklich löschen?",
        "billing.deleteError" to "Abrechnung konnte nicht gelöscht werden.",
        "billing.deleteSuccess" to "Abrechnung wurde gelöscht.",
        "billing.deleteTemplate" to "Vorlage löschen",
        "billing.deleteTemplateConfirm" to "Diese Vorlage wirklich löschen?",
        "billing.deleteTemplateError" to "Vorlage konnte nicht gelöscht werden.",
        "billing.deleteTemplateSuccess" to "Vorlage wurde gelöscht.",
        "billing.documentDate" to "Datum",
        "billing.downloadError" to "PDF konnte nicht heruntergeladen werden.",
        "billing.downloadPdf" to "PDF herunterladen",
        "billing.generateAndDownloadPdf" to "PDF erzeugen + herunterladen",
        "billing.generateError" to "PDF konnte nicht erzeugt werden.",
        "billing.generateOwnBilling" to "Eigene Abrechnung erzeugen",
        "billing.generatePdf" to "PDF erzeugen",
        "billing.generateSuccess" to "PDF wurde erzeugt.",
        "billing.generatingPdf" to "Erzeuge PDF...",
        "billing.hourlyRate" to "Stunden-Gehalt",
        "billing.hoursAutoHint" to "Anzahl Stunden wird automatisch aus den Trainingstagen berechnet: {hours} h ({count} Einheiten).",
        "billing.hoursTotal" to "Anzahl Stunden",
        "billing.iban" to "IBAN",
        "billing.ibanBoxesReset" to "IBAN-Boxen wurden zurückgesetzt.",
        "billing.ibanLearnCancel" to "IBAN-Lernen abbrechen",
        "billing.ibanLearnDone" to "IBAN-Boxen wurden aus dem gewählten Bereich zugewiesen.",
        "billing.ibanLearnStart" to "IBAN einlernen",
        "billing.ibanLearnStep1" to "IBAN-Lernen: bitte auf die erste zu nutzende IBAN-Box klicken.",
        "billing.ibanLearnStep2" to "IBAN-Lernen: bitte auf die letzte zu nutzende IBAN-Box klicken.",
        "billing.ibanWithoutCountry" to "ohne Länderkennung",
        "billing.locationText" to "Ort",
        "billing.mappingEditorHint" to "Feld auswählen, dann in die PDF klicken. Die Position wird direkt übernommen.",
        "billing.mappingEditorTitle" to "Felder im PDF per Klick zuweisen",
        "billing.mappingField" to "Feld",
        "billing.mappingHint" to "Koordinaten je Feld einmalig anpassen und speichern. Diese Positionen werden bei „PDF erzeugen“ verwendet.",
        "billing.mappingPreviewError" to "PDF-Vorschau für Mapping konnte nicht geladen werden.",
        "billing.mappingSaved" to "Mapping wurde gespeichert.",
        "billing.mappingSaveError" to "Mapping konnte nicht gespeichert werden.",
        "billing.mappingSuggested" to "Auto-Vorschläge wurden eingetragen. Bitte prüfen und feinjustieren.",
        "billing.mappingSuggestError" to "Auto-Vorschläge konnten nicht ermittelt werden.",
        "billing.mappingTitle" to "Positions-Mapping",
        "billing.monthFrom" to "Monat von",
        "billing.monthTo" to "Monat bis",
        "billing.noRuns" to "Noch keine Abrechnungen vorhanden.",
        "billing.noSessionsInRange" to "Keine Trainingseinheiten im gewählten Zeitraum gefunden.",
        "billing.noTemplates" to "Noch keine Vorlagen vorhanden.",
        "billing.omitField" to "nicht angeben",
        "billing.openMappingEditor" to "Mapping per Klick",
        "billing.resetIbanBoxes" to "IBAN-Boxen reset",
        "billing.runSection" to "Abrechnungslauf",
        "billing.runsTitle" to "Bisherige Abrechnungen",
        "billing.sameAccountCheckbox" to "Gleiches Konto wie letzte Abrechnung",
        "billing.saveMapping" to "Mapping speichern",
        "billing.selfRecipientName" to "Eigener Name",
        "billing.sessionHours" to "Stunden",
        "billing.sessionLabel" to "Bezeichner",
        "billing.sessionTime" to "Zeit",
        "billing.step1" to "Schritt 1: Vorlage hinterlegen",
        "billing.step2" to "Schritt 2: Abrechnungslauf anlegen",
        "billing.step3" to "Schritt 3: PDF erzeugen und herunterladen",
        "billing.subtitle" to "Erstelle deine eigene monatliche Übungsstunden-Abrechnung.",
        "billing.template" to "Vorlage",
        "billing.templateDescription" to "Beschreibung",
        "billing.templateName" to "Vorlagenname",
        "billing.templatePdf" to "PDF-Vorlage",
        "billing.templateSection" to "Vorlage hochladen",
        "billing.title" to "Abrechnung",
        "billing.uploadTemplate" to "Vorlage speichern",
        "calendar.agendaEmpty" to "Keine Termine in diesem Monat.",
        "calendar.agendaTitle" to "Termine im Monat",
        "calendar.cancelCancellation.confirm" to "Ausfall stornieren",
        "calendar.cancelCancellation.message" to "Trainingsausfall „{title}“ am {date} wirklich stornieren?",
        "calendar.cancelCancellation.title" to "Trainingsausfall stornieren",
        "calendar.cancellation.date" to "Datum",
        "calendar.cancellation.description" to "Blendet regelmäßige Trainingszeiten aus.",
        "calendar.cancellation.fallbackTitle" to "Training fällt aus",
        "calendar.cancellation.reasonPlaceholder" to "Grund (optional)",
        "calendar.cancellation.saving" to "Speichern...",
        "calendar.cancellation.submit" to "Eintragen",
        "calendar.cancellation.subtitle" to "Trainingsausfall",
        "calendar.cancellation.title" to "Training fällt aus",
        "calendar.cancellation.trainingGroups" to "Trainingsgruppen",
        "calendar.cancellation.untilOptional" to "Bis optional",
        "calendar.customEvent.categoryPlaceholder" to "Kategorie (optional)",
        "calendar.customEvent.description" to "Kreistage, Sitzungen, interne Meetings, ...",
        "calendar.customEvent.saving" to "Speichern...",
        "calendar.customEvent.submit" to "Anlegen",
        "calendar.customEvent.subtitleFallback" to "Eigener Termin",
        "calendar.customEvent.title" to "Eigene Termine",
        "calendar.customEvent.titlePlaceholder" to "Titel",
        "calendar.description" to "Trainingstage, Vereinsturniere und Punktspiele in einer Monatsansicht.",
        "calendar.eventTitles.match" to "Punktspiel",
        "calendar.eventTitles.officialTournament" to "Turnierteilnahme",
        "calendar.eventTitles.tournament" to "Turnier",
        "calendar.eventTitles.training" to "Training",
        "calendar.eyebrow" to "Vereinskalender",
        "calendar.holidayTypes.holiday" to "Feiertag",
        "calendar.holidayTypes.schoolHoliday" to "Schulferien",
        "calendar.legend.customEvent" to "Termin",
        "calendar.legend.holiday" to "Feiertag",
        "calendar.legend.match" to "Punktspiel",
        "calendar.legend.officialTournament" to "Teilnahme",
        "calendar.legend.schoolHoliday" to "Ferien",
        "calendar.legend.tournament" to "Turnier",
        "calendar.legend.training" to "Training",
        "calendar.legend.trainingCancellation" to "Ausfall",
        "calendar.loadError" to "Kalenderdaten konnten nicht geladen werden.",
        "calendar.loading" to "Kalenderdaten werden geladen...",
        "calendar.match.guest" to "Gast",
        "calendar.match.home" to "Heim",
        "calendar.noClub" to "Bitte zuerst einen Verein auswählen.",
        "calendar.options.subtitle" to "Ausfälle & eigene Termine",
        "calendar.options.title" to "Optionen",
        "calendar.participants" to "{count} Teilnehmer",
        "calendar.quickCancellation.confirm" to "Ausfall eintragen",
        "calendar.quickCancellation.message" to "„{title}“ als Trainingsausfall markieren?",
        "calendar.quickCancellation.noGroups" to "Es sind keine Trainingsgruppen mit Trainingszeiten vorhanden.",
        "calendar.quickCancellation.title" to "Trainingsausfall",
        "calendar.quickCancellation.trainingGroups" to "Betroffene Trainingsgruppen",
        "calendar.quickCancellation.useWholeRange" to "Für den gesamten Zeitraum ({start} bis {end}) eintragen",
        "calendar.recurringTrainingTime" to "Regelmäßige Trainingszeit",
        "calendar.sources.customEvents" to "Eigene Termine",
        "calendar.sources.holidays" to "Ferien/Feiertage",
        "calendar.sources.matches" to "Punktspiele",
        "calendar.sources.officialTournaments" to "Turnierteilnahmen",
        "calendar.sources.tournaments" to "Turniere",
        "calendar.sources.trainingCancellations" to "Trainingsausfälle",
        "calendar.sources.trainingDays" to "Trainingstage",
        "calendar.sources.trainingTimes" to "Trainingszeiten",
        "calendar.sourceWarning" to "{source} konnte nicht geladen werden",
        "calendar.starts" to "{count} Starts",
        "calendar.title" to "Kalender",
        "calendar.today" to "Heute",
        "calendar.tournament.club" to "Vereinsturnier",
        "calendar.tournament.open" to "Offenes Turnier",
        "calendar.weekdays.friday" to "Fr",
        "calendar.weekdays.monday" to "Mo",
        "calendar.weekdays.saturday" to "Sa",
        "calendar.weekdays.sunday" to "So",
        "calendar.weekdays.thursday" to "Do",
        "calendar.weekdays.tuesday" to "Di",
        "calendar.weekdays.wednesday" to "Mi",
        "club.accessDenied" to "Zugriff auf den Verein nicht gestattet.",
        "club.accessRequested" to "Zugriff wurde angefragt.",
        "club.accessRequestFailed" to "Zugriffsanfrage konnte nicht gestellt werden.",
        "club.accessRequestPending" to "Der Zugriff auf diesen Verein ist beantragt. Bitte haben Sie etwas Geduld.",
        "club.create" to "Verein erstellen",
        "club.createTitle" to "Verein anlegen",
        "club.diary" to "Trainingstagebuch",
        "club.errorLoadingRequests" to "Fehler beim Laden der offenen Anfragen",
        "club.load" to "Laden",
        "club.members" to "Mitglieder",
        "club.mobileSelectHint" to "Bitte wähle zuerst einen Verein aus, um die App auf dem Smartphone zu nutzen.",
        "club.name" to "Vereinsname",
        "club.new" to "Neuer Verein",
        "club.noAccess" to "Für diesen Verein wurde Dir noch kein Zugriff gestattet.",
        "club.openAccessRequests" to "Offene Anfragen auf Zugriff",
        "club.openRequests" to "Offene Anfragen auf Zugriff",
        "club.requestAccess" to "Zugriff beantragen",
        "club.select" to "Verein auswählen",
        "club.selectPlaceholder" to "Verein wählen...",
        "club.title" to "Verein",
        "club.trainingDiary" to "Trainingstagebuch",
        "clubSettings.associationMemberNumber" to "Verbands-Mitgliedsnummer",
        "clubSettings.associationMemberNumberPlaceholder" to "z. B. 12-3456",
        "clubSettings.autoFetchRankings" to "Ranglisten automatisch abrufen",
        "clubSettings.greetingHint" to "Dieser Text erscheint im Reiter \"Begrüßung\" des Spielberichtsbogens.",
        "clubSettings.greetingPlaceholder" to "Begrüßungstext für Heimspiele...",
        "clubSettings.greetingText" to "Begrüßungstext",
        "clubSettings.guestPlayers" to "Spieler und Doppel Gastmannschaft",
        "clubSettings.guestTeam" to "Name Gastmannschaft",
        "clubSettings.homePlayers" to "Spieler und Doppel Heimmannschaft",
        "clubSettings.homeTeam" to "Name Heimmannschaft",
        "clubSettings.loadFailed" to "Einstellungen konnten nicht geladen werden",
        "clubSettings.memberDataQuality" to "Datenqualität Mitglieder",
        "clubSettings.memberDataQualityHint" to "Diese Felder zählen auf der Mitgliederseite als nötig. Alle Felder bleiben weiterhin eingebbar.",
        "clubSettings.myTischtennisFedNickname" to "Verbandskürzel",
        "clubSettings.myTischtennisFedNicknamePlaceholder" to "z. B. HeTTV",
        "clubSettings.myTischtennisRankings" to "myTischtennis TTR/QTTR-Ranglisten",
        "clubSettings.myTischtennisRankingsHint" to "Automatischer Abruf der Vereins-Rangliste für TTR- und QTTR-Updates der Mitglieder.",
        "clubSettings.noClubSelected" to "Bitte wählen Sie zuerst einen Verein aus.",
        "clubSettings.placeholders" to "Platzhalter",
        "clubSettings.rankingsUsesAssociationNumber" to "Die Vereinsnummer für den Ranglisten-Abruf entspricht der Verbands-Mitgliedsnummer oben.",
        "clubSettings.requireCity" to "Ort nötig",
        "clubSettings.requireEmail" to "E-Mail-Adresse nötig",
        "clubSettings.requirePhone" to "Telefonnummer nötig",
        "clubSettings.requirePostalCode" to "PLZ nötig",
        "clubSettings.requireStreet" to "Straße nötig",
        "clubSettings.save" to "Speichern",
        "clubSettings.saved" to "Gespeichert",
        "clubSettings.saveFailed" to "Speichern fehlgeschlagen",
        "clubSettings.settings" to "Einstellungen",
        "clubSettings.title" to "Vereins-Einstellungen",
        "clubSettings.trainingGroups" to "Trainingsgruppen",
        "clubSettings.trainingTimes" to "Trainingszeiten",
        "common.actions" to "Aktionen",
        "common.active" to "Aktiv",
        "common.add" to "Hinzufügen",
        "common.all" to "Alle",
        "common.apply" to "Anwenden",
        "common.back" to "Zurück",
        "common.cancel" to "Abbrechen",
        "common.choose" to "Wählen",
        "common.clear" to "Löschen",
        "common.close" to "Schließen",
        "common.confirm" to "Bestätigen",
        "common.create" to "Erstellen",
        "common.date" to "Datum",
        "common.days" to "Tage",
        "common.delete" to "Löschen",
        "common.description" to "Beschreibung",
        "common.details" to "Details",
        "common.disabled" to "Deaktiviert",
        "common.download" to "herunterladen",
        "common.edit" to "Bearbeiten",
        "common.enabled" to "Aktiviert",
        "common.filter" to "Filter",
        "common.hours" to "Stunden",
        "common.in" to "in",
        "common.inactive" to "Inaktiv",
        "common.loading" to "Lade...",
        "common.min" to "Min",
        "common.minutes" to "Minuten",
        "common.months" to "Monate",
        "common.move" to "Verschieben",
        "common.name" to "Name",
        "common.new" to "Neu",
        "common.next" to "Weiter",
        "common.no" to "Nein",
        "common.ok" to "OK",
        "common.optional" to "Optional",
        "common.period" to "Zeitraum",
        "common.previous" to "Zurück",
        "common.refresh" to "Neu laden",
        "common.remove" to "Entfernen",
        "common.required" to "Erforderlich",
        "common.reset" to "Zurücksetzen",
        "common.save" to "Speichern",
        "common.saved" to "Gespeichert",
        "common.saving" to "Speichere...",
        "common.search" to "Suchen",
        "common.select" to "Auswählen",
        "common.status" to "Status",
        "common.submit" to "Absenden",
        "common.time" to "Zeit",
        "common.today" to "Heute",
        "common.type" to "Typ",
        "common.update" to "Aktualisieren",
        "common.view" to "Anzeigen",
        "common.weeks" to "Wochen",
        "common.years" to "Jahre",
        "common.yes" to "Ja",
        "courtDrawing.cancel" to "Abbrechen",
        "courtDrawing.durationMinutes" to "Dauer (Minuten)",
        "courtDrawing.durationText" to "Dauer (Text)",
        "courtDrawing.durationTextPlaceholder" to "z.B. 2x5",
        "courtDrawing.group" to "Gruppe",
        "courtDrawing.ok" to "OK",
        "courtDrawing.selectGroup" to "Gruppe auswählen...",
        "courtDrawing.title" to "Tischtennis-Übung konfigurieren",
        "courtDrawingRender.animationRunning" to "Animation läuft...",
        "courtDrawingRender.startAnimation" to "Animation starten",
        "courtDrawingTool.addStroke" to "Schlag hinzufügen",
        "courtDrawingTool.backhand" to "Rückhand",
        "courtDrawingTool.codeLabel" to "Kürzel",
        "courtDrawingTool.completeFirstStroke" to "1. Schlag vervollständigen",
        "courtDrawingTool.completeFirstStrokeHint" to "Wähle Startposition, Schlagseite, Rotation und Ziel. Danach erscheint die grafische Darstellung.",
        "courtDrawingTool.configureExercise" to "Übung konfigurieren",
        "courtDrawingTool.counterSpin" to "Gegenläufer",
        "courtDrawingTool.forehand" to "Vorhand",
        "courtDrawingTool.noAdditionalStrokes" to "Noch keine Folgeschläge angelegt.",
        "courtDrawingTool.preview" to "Vorschau",
        "courtDrawingTool.previewHint" to "Die Grafik erscheint, sobald der erste Schlag vollständig gesetzt ist.",
        "courtDrawingTool.service" to "Aufschlag:",
        "courtDrawingTool.serviceTitle" to "Aufschlag",
        "courtDrawingTool.sidespin" to "Seitschnitt",
        "courtDrawingTool.sideUnderspin" to "Seitunterschnitt",
        "courtDrawingTool.spin" to "Schnitt:",
        "courtDrawingTool.startLeft" to "links",
        "courtDrawingTool.startMiddle" to "mitte",
        "courtDrawingTool.startRight" to "rechts",
        "courtDrawingTool.stepAdditionalStrokes" to "4. Folgeschläge",
        "courtDrawingTool.stepAdditionalStrokesHint" to "Optional weitere Bälle als Liste aufbauen.",
        "courtDrawingTool.stepFirstStroke" to "2. 1. Schlag",
        "courtDrawingTool.stepFirstStrokeHint" to "Schlagseite und Rotation für den ersten Ball festlegen.",
        "courtDrawingTool.stepStartPosition" to "1. Startposition",
        "courtDrawingTool.stepStartPositionHint" to "Aus welcher Aufschlagposition startet die Übung?",
        "courtDrawingTool.stepTarget" to "3. Ziel",
        "courtDrawingTool.stepTargetHint" to "Zielzone für den ersten Schlag auswählen.",
        "courtDrawingTool.strokeSide" to "Seite",
        "courtDrawingTool.strokeTypeBlock" to "Block",
        "courtDrawingTool.strokeTypeChopDefense" to "Schnittabwehr",
        "courtDrawingTool.strokeTypeCounter" to "Konter",
        "courtDrawingTool.strokeTypeFlip" to "Flip",
        "courtDrawingTool.strokeTypeLabel" to "Schlagart",
        "courtDrawingTool.strokeTypeLobDefense" to "Ballonabwehr",
        "courtDrawingTool.strokeTypePush" to "Schupf",
        "courtDrawingTool.strokeTypeSmash" to "Schuss",
        "courtDrawingTool.strokeTypeTopspin" to "Topspin",
        "courtDrawingTool.targetBackhandHalfLong" to "Rückhand halblang",
        "courtDrawingTool.targetBackhandLong" to "Rückhand lang",
        "courtDrawingTool.targetBackhandShort" to "Rückhand kurz",
        "courtDrawingTool.targetForehandHalfLong" to "Vorhand halblang",
        "courtDrawingTool.targetForehandLong" to "Vorhand lang",
        "courtDrawingTool.targetForehandShort" to "Vorhand kurz",
        "courtDrawingTool.targetMiddleHalfLong" to "Mitte halblang",
        "courtDrawingTool.targetMiddleLong" to "Mitte lang",
        "courtDrawingTool.targetMiddleShort" to "Mitte kurz",
        "courtDrawingTool.targetPosition" to "Zielposition:",
        "courtDrawingTool.targetPositionLabel" to "Zielposition",
        "courtDrawingTool.title" to "Tischtennis-Übungszeichnung",
        "courtDrawingTool.titleLabel" to "Titel",
        "courtDrawingTool.topspin" to "Überschnitt",
        "courtDrawingTool.toTarget" to "nach",
        "courtDrawingTool.underspin" to "Unterschnitt",
        "createClub.clubExists" to "Der Verein existiert bereits.",
        "createClub.clubName" to "Name des Vereins:",
        "createClub.create" to "Verein anlegen",
        "createClub.nameRequired" to "Bitte gib dem Verein einen aussagekräftigen Namen.",
        "createClub.title" to "Verein anlegen",
        "createClub.unknownError" to "Ein unbekannter Fehler ist aufgetreten. Bitte versuchen Sie es erneut.",
        "csvImport.cancel" to "Abbrechen",
        "csvImport.import" to "Importieren",
        "csvImport.title" to "Spielplan importieren",
        "csvImport.uploadCsvFile" to "CSV-Datei hochladen",
        "dialogExamples.composableConfirmDetails" to "Dies ist ein Beispiel für das useConfirm Composable.",
        "dialogExamples.composableConfirmMessage" to "Möchten Sie fortfahren?",
        "dialogExamples.composableConfirmTitle" to "useConfirm Beispiel",
        "dialogExamples.composableDialogText" to "Dieser Dialog verwendet das useDialog Composable.",
        "dialogExamples.composableDialogText2" to "Das macht die Verwaltung einfacher!",
        "dialogExamples.composableDialogTitle" to "Dialog mit useDialog Composable",
        "dialogExamples.composableUsage" to "Composable-Verwendung",
        "dialogExamples.confirmDeleteMessage" to "Möchten Sie diesen Eintrag wirklich löschen?",
        "dialogExamples.confirmDeleteTitle" to "Löschen bestätigen",
        "dialogExamples.confirmDialogs" to "Bestätigungs-Dialoge",
        "dialogExamples.confirmWarningDetails" to "Diese Aktion kann nicht rückgängig gemacht werden.",
        "dialogExamples.confirmWarningMessage" to "Sind Sie sicher, dass Sie fortfahren möchten?",
        "dialogExamples.error" to "Fehler",
        "dialogExamples.errorDetails" to "Bitte versuchen Sie es später erneut.",
        "dialogExamples.errorMessage" to "Ein Fehler ist aufgetreten.",
        "dialogExamples.fullscreenModal" to "Fullscreen Modal",
        "dialogExamples.fullscreenModalText" to "Dies ist ein Fullscreen-Dialog.",
        "dialogExamples.fullscreenModalText2" to "Er nimmt fast den gesamten Bildschirm ein (90vw x 90vh).",
        "dialogExamples.fullscreenModalTitle" to "Fullscreen Modal Dialog",
        "dialogExamples.info" to "Info",
        "dialogExamples.infoDialogs" to "Informations-Dialoge",
        "dialogExamples.infoMessage" to "Dies ist eine Informationsmeldung.",
        "dialogExamples.information" to "Information",
        "dialogExamples.largeModal" to "Großer Modal",
        "dialogExamples.largeModalText" to "Dies ist ein großer modaler Dialog.",
        "dialogExamples.largeModalText2" to "Er bietet mehr Platz für Inhalte.",
        "dialogExamples.largeModalTitle" to "Großer Modal Dialog",
        "dialogExamples.minimizedDialogs" to "Minimierte Dialoge:",
        "dialogExamples.modalDialogs" to "Modale Dialoge",
        "dialogExamples.multipleDialogs" to "Mehrere Dialoge",
        "dialogExamples.nonModalDialog" to "Nicht-modaler Dialog",
        "dialogExamples.nonModalDialogs" to "Nicht-modale Dialoge",
        "dialogExamples.nonModalText" to "Dies ist ein nicht-modaler Dialog.",
        "dialogExamples.nonModalText2" to "Sie können ihn verschieben und mehrere gleichzeitig öffnen!",
        "dialogExamples.nonModalTitle" to "Nicht-modaler Dialog",
        "dialogExamples.scrollArea" to "Scroll-Bereich für viel Inhalt...",
        "dialogExamples.secondNonModalText" to "Noch ein nicht-modaler Dialog!",
        "dialogExamples.secondNonModalTitle" to "Zweiter nicht-modaler Dialog",
        "dialogExamples.simpleModal" to "Einfacher Modal",
        "dialogExamples.simpleModalText" to "Dies ist ein einfacher modaler Dialog mit mittlerer Größe.",
        "dialogExamples.simpleModalText2" to "Klicken Sie außerhalb oder auf das X, um zu schließen.",
        "dialogExamples.simpleModalTitle" to "Einfacher Modal Dialog",
        "dialogExamples.success" to "Erfolg",
        "dialogExamples.successDetails" to "Alle Änderungen wurden gespeichert.",
        "dialogExamples.successMessage" to "Der Vorgang wurde erfolgreich abgeschlossen!",
        "dialogExamples.title" to "Dialog-Beispiele",
        "dialogExamples.useConfirmExample" to "useConfirm Beispiel",
        "dialogExamples.useDialogExample" to "useDialog Beispiel",
        "dialogExamples.warning" to "Warnung",
        "dialogExamples.warningDetails" to "Einige Felder sind möglicherweise nicht vollständig ausgefüllt.",
        "dialogExamples.warningMessage" to "Bitte beachten Sie folgende Hinweise.",
        "dialogManager.close" to "Schließen",
        "dialogManager.minimize" to "Minimieren",
        "dialogManager.noMinimizedDialogs" to "Keine minimierten Dialoge",
        "dialogs.confirm.cancel" to "Abbrechen",
        "dialogs.confirm.ok" to "OK",
        "dialogs.confirm.title" to "Bestätigung",
        "dialogs.info.ok" to "OK",
        "dialogs.info.title" to "Information",
        "diary.activeTrainingDay" to "Aktiver Trainingstag",
        "diary.activities" to "Aktivitäten",
        "diary.activity" to "Aktivität",
        "diary.activityDrawing" to "Aktivitätszeichnung",
        "diary.activityImage" to "Aktivitätsbild",
        "diary.activityNotFound" to "Aktivität nicht gefunden. Bitte wählen Sie eine aus der Liste aus.",
        "diary.activityOrTimeblock" to "Aktivität / Zeitblock",
        "diary.activityPlaceholder" to "Aktivität",
        "diary.activityRequired" to "Bitte geben Sie eine Aktivität ein.",
        "diary.addActivity" to "Aktivität hinzufügen",
        "diary.addGroup" to "Gruppe hinzufügen",
        "diary.addGroupActivity" to "Gruppen-Aktivität hinzufügen",
        "diary.addGroupButton" to "+ Gruppe",
        "diary.addTimeblock" to "Zeitblock",
        "diary.all" to "Alle",
        "diary.applySuggestion" to "Vorschlag übernehmen",
        "diary.assignParticipants" to "Teilnehmer zuordnen",
        "diary.assignParticipantsForGroupActivity" to "Teilnehmer für Gruppen-Aktivität zuordnen",
        "diary.assignShort" to "Zuordnen",
        "diary.bookAccident" to "Unfall buchen",
        "diary.confirmDelete" to "Löschen bestätigen",
        "diary.confirmDeleteDate" to "Möchten Sie dieses Datum wirklich löschen?",
        "diary.confirmDeleteDateDetails" to "Alle zugehörigen Daten werden ebenfalls gelöscht.",
        "diary.confirmDeleteGroup" to "Möchten Sie die Gruppe \"{name}\" wirklich löschen?",
        "diary.createDate" to "Datum anlegen",
        "diary.createDrawing" to "Übungszeichnung erstellen",
        "diary.createGroups" to "Gruppen erstellen",
        "diary.createNew" to "Neu anlegen",
        "diary.createNewDate" to "Neues Datum anlegen",
        "diary.date" to "Datum",
        "diary.dateCannotBeDeleted" to "Datum kann nicht gelöscht werden",
        "diary.dateCannotBeDeletedDetails" to "Es sind noch Inhalte vorhanden (Trainingplan, Teilnehmer, Aktivitäten, Unfälle oder Notizen).",
        "diary.dateNoLongerCurrent" to "Ausgewähltes Datum war nicht mehr aktuell. Bitte erneut versuchen.",
        "diary.delete" to "Löschen",
        "diary.deleteDate" to "Datum löschen",
        "diary.deleteGroup" to "Gruppe löschen",
        "diary.duration" to "Dauer",
        "diary.durationExampleLong" to "z.B. 2x7 oder 3*5",
        "diary.durationExampleShort" to "z.B. 2x7",
        "diary.durationMinutes" to "Dauer (Min)",
        "diary.editActivity" to "Aktivität bearbeiten",
        "diary.editGroupActivity" to "Gruppen-Aktivität bearbeiten",
        "diary.editTrainingTimes" to "Trainingszeiten bearbeiten",
        "diary.errorCreatingActivity" to "Fehler beim Erstellen der Aktivität",
        "diary.errorCreatingGroups" to "Fehler beim Erstellen der Gruppen",
        "diary.errorDeletingGroup" to "Fehler beim Löschen der Gruppe",
        "diary.errorLoadingPredefinedActivities" to "Fehler beim Laden der vordefinierten Aktivitäten",
        "diary.errorMarkingForm" to "Fehler beim Markieren des Mitgliedsformulars",
        "diary.errorOccurred" to "Ein Fehler ist aufgetreten. Bitte versuchen Sie es erneut.",
        "diary.existingGroups" to "Vorhandene Gruppen",
        "diary.filterAbsent" to "Abwesend",
        "diary.filterAll" to "Alle",
        "diary.filterExcused" to "Entschuldigt",
        "diary.filterPresent" to "Anwesend",
        "diary.filterTest" to "Probe",
        "diary.formHandedOver" to "Mitgliedsformular ausgehändigt",
        "diary.formMarkedAsHandedOver" to "Mitgliedsformular als ausgehändigt markiert",
        "diary.freeActivities" to "Freie Aktivitäten",
        "diary.gallery" to "Mitglieder-Galerie",
        "diary.galleryCreating" to "Galerie wird erstellt…",
        "diary.group" to "Gruppe",
        "diary.groupDeletedSuccessfully" to "Gruppe wurde erfolgreich gelöscht!",
        "diary.groupManagement" to "Gruppenverwaltung",
        "diary.groupsCreated" to "{count} Gruppen wurden erfolgreich erstellt!",
        "diary.groupsLabel" to "Gruppen",
        "diary.groupsSection" to "Gruppen",
        "diary.leader" to "Leiter",
        "diary.min" to "Min",
        "diary.minutes" to "Minuten",
        "diary.mustCreateAtLeastTwoGroups" to "Beim ersten Erstellen müssen mindestens 2 Gruppen erstellt werden!",
        "diary.nextAppointment" to "Nächster Termin",
        "diary.noActiveTrainingDay" to "Kein Trainingstag ausgewählt.",
        "diary.noEntries" to "Keine Einträge",
        "diary.noFreeActivitiesYet" to "Noch keine freien Aktivitäten erfasst.",
        "diary.noParticipants" to "Keine Teilnehmer für diesen Trainingstag vorhanden.",
        "diary.numberOfGroups" to "Anzahl Gruppen",
        "diary.oneGroupAdded" to "1 Gruppe wurde erfolgreich hinzugefügt!",
        "diary.openPlanItems" to "{count} offen",
        "diary.openPlanItemsLabel" to "Plan-Status",
        "diary.overallActivity" to "Gesamt-Aktivität",
        "diary.participants" to "Teilnehmer",
        "diary.participantStatusCancelled" to "Abgesagt",
        "diary.participantStatusExcused" to "Entschuldigt",
        "diary.participantStatusNone" to "Kein Status",
        "diary.planActivitiesCount" to "Plan-Aktivitäten",
        "diary.planAddHint" to "Neue Plan-Elemente fügst du über die Aktionen oben hinzu.",
        "diary.planEmptyState" to "Im Trainingsplan ist noch nichts eingetragen.",
        "diary.quickAdd" to "+ Schnell hinzufügen",
        "diary.quickCreate" to "Schnellanlegen",
        "diary.quickCreateFailed" to "Der Trainingstag konnte nicht angelegt werden.",
        "diary.quickCreateNoSlot" to "Kein freier Trainingstermin gefunden (gemäß Gruppenzeiten, ein Jahr voraus).",
        "diary.searchParticipants" to "Teilnehmer suchen",
        "diary.selectGroup" to "Gruppe auswählen...",
        "diary.selectGroupAndActivity" to "Bitte wählen Sie eine Gruppe und geben Sie eine Aktivität ein.",
        "diary.selectParticipantAndNote" to "Bitte wählen Sie einen Teilnehmer aus und geben Sie einen Notiztext ein.",
        "diary.selectTags" to "Tags auswählen",
        "diary.selectTrainingGroup" to "Trainingsgruppe auswählen",
        "diary.selectTrainingGroupPlaceholder" to "Bitte wählen...",
        "diary.showImage" to "Bild/Zeichnung anzeigen",
        "diary.skipSuggestion" to "Ohne Vorschlag fortfahren",
        "diary.standardActivities" to "Standard-Aktivitäten",
        "diary.standardActivityAddError" to "Standard-Aktivität konnte nicht hinzugefügt werden.",
        "diary.standardDurationShort" to "Min",
        "diary.startTime" to "Startzeit",
        "diary.statusEmpty" to "Dieser Trainingstag ist noch leer.",
        "diary.statusInProgress" to "Dieser Trainingstag ist teilweise vorbereitet.",
        "diary.statusOpenShort" to "Offen",
        "diary.statusReady" to "Zeiten und Trainingsplan sind gepflegt.",
        "diary.statusReadyShort" to "Bereit",
        "diary.suggestion" to "Vorschlag",
        "diary.timeblock" to "Zeitblock",
        "diary.timeblocksCount" to "Zeitblöcke",
        "diary.title" to "Trainingstagebuch",
        "diary.today" to "Heute",
        "diary.trainingDayAsPDF" to "Trainingstag als PDF herunterladen",
        "diary.trainingDayAsPDFShort" to "Trainingstag als PDF",
        "diary.trainingDayChecklist" to "Abschlusscheck",
        "diary.trainingDaySection" to "Trainingstag",
        "diary.trainingDaySummaryPdfShort" to "Teilnehmerübersicht als PDF",
        "diary.trainingEnd" to "Trainingsende",
        "diary.trainingPlan" to "Trainingsplan",
        "diary.trainingPlanAsPDF" to "Trainingsplan als PDF",
        "diary.trainingPlanPdfShort" to "Ablaufplan als PDF",
        "diary.trainingStart" to "Trainingsbeginn",
        "diary.trainingTimesUpdated" to "Trainingszeiten erfolgreich aktualisiert.",
        "diary.trainingWindow" to "Trainingsfenster",
        "diary.trainingWindowUnset" to "Noch nicht gesetzt",
        "diary.unassignedPlanItems" to "{count} offen",
        "diary.updateTimes" to "Zeiten aktualisieren",
        "errors.ERROR_ACTIVITY_IMAGE_DELETE_FAILED" to "Fehler beim Löschen des Bildes",
        "errors.ERROR_BAD_REQUEST" to "Ungültige Anfrage.",
        "errors.ERROR_CLUB_ALREADY_EXISTS" to "Der Verein existiert bereits.",
        "errors.ERROR_CLUB_NAME_REQUIRED" to "Bitte gib dem Verein einen aussagekräftigen Namen.",
        "errors.ERROR_CLUB_NAME_TOO_SHORT" to "Bitte gib dem Verein einen aussagekräftigen Namen.",
        "errors.ERROR_CLUB_NOT_FOUND" to "Verein nicht gefunden.",
        "errors.ERROR_DIARY_ACTIVITY_PARTICIPANTS_UPDATE_FAILED" to "Fehler beim Aktualisieren der Aktivitäts-Teilnehmer",
        "errors.ERROR_DIARY_ASSIGN_ALL_PARTICIPANTS_FAILED" to "Fehler beim Zuordnen aller Teilnehmer",
        "errors.ERROR_DIARY_ASSIGN_GROUP_FAILED" to "Fehler beim Zuordnen der Gruppe",
        "errors.ERROR_DIARY_DATE_NOT_FOUND" to "Datum nicht gefunden.",
        "errors.ERROR_DIARY_DATE_UPDATED" to "Datum war nicht (mehr) vorhanden. Die Datums-Auswahl wurde aktualisiert. Bitte erneut versuchen.",
        "errors.ERROR_DIARY_GROUP_ASSIGNMENT_UPDATE_FAILED" to "Fehler beim Aktualisieren der Gruppenzuordnung",
        "errors.ERROR_DIARY_IMAGE_LOAD_FAILED" to "Bild konnte nicht geladen werden.",
        "errors.ERROR_DIARY_MEMBER_CREATE_FAILED" to "Fehler beim Erstellen des Mitglieds",
        "errors.ERROR_DIARY_NO_EXERCISE_DATA" to "Keine Übungsdaten erhalten",
        "errors.ERROR_DIARY_NO_PARTICIPANTS" to "Keine Teilnehmer für diesen Trainingstag vorhanden.",
        "errors.ERROR_DIARY_PARTICIPANT_ASSIGN_FAILED" to "Teilnehmer konnte nicht zugeordnet werden.",
        "errors.ERROR_DIARY_PARTICIPANT_GROUP_ASSIGNMENT_UPDATE_FAILED" to "Fehler beim Aktualisieren der Teilnehmer-Gruppenzuordnung",
        "errors.ERROR_DIARY_PDF_GENERATION_FAILED" to "Fehler beim Generieren des PDFs.",
        "errors.ERROR_DIARY_STATS_LOAD_FAILED" to "Fehler beim Laden der Statistiken.",
        "errors.ERROR_FORBIDDEN" to "Zugriff verweigert.",
        "errors.ERROR_GROUP_ALREADY_EXISTS" to "Eine Gruppe mit diesem Namen existiert bereits.",
        "errors.ERROR_GROUP_CANNOT_RENAME_PRESET" to "Vorgaben-Gruppen können nicht umbenannt werden.",
        "errors.ERROR_GROUP_INVALID_PRESET_TYPE" to "Ungültiger Preset-Typ.",
        "errors.ERROR_GROUP_NAME_REQUIRED" to "Bitte geben Sie einen Gruppennamen ein.",
        "errors.ERROR_GROUP_NOT_FOUND" to "Gruppe nicht gefunden.",
        "errors.ERROR_INTERNAL_SERVER_ERROR" to "Ein interner Serverfehler ist aufgetreten.",
        "errors.ERROR_INVALID_PASSWORD" to "Ungültiges Passwort.",
        "errors.ERROR_LOG_NOT_FOUND" to "Log-Eintrag nicht gefunden.",
        "errors.ERROR_LOGIN_FAILED" to "Login fehlgeschlagen.",
        "errors.ERROR_MEMBER_ALREADY_EXISTS" to "Mitglied existiert bereits.",
        "errors.ERROR_MEMBER_FIRSTNAME_REQUIRED" to "Vorname ist erforderlich.",
        "errors.ERROR_MEMBER_LASTNAME_REQUIRED" to "Nachname ist erforderlich.",
        "errors.ERROR_MEMBER_NOT_FOUND" to "Mitglied nicht gefunden.",
        "errors.ERROR_MEMBER_TRANSFER_BULK_FAILED" to "Fehler bei der Bulk-Übertragung: {message}",
        "errors.ERROR_MYTISCHTENNIS_ACCOUNT_NOT_LINKED" to "Kein myTischtennis-Account verknüpft.",
        "errors.ERROR_MYTISCHTENNIS_CAPTCHA_REQUIRED" to "CAPTCHA erforderlich. MyTischtennis verwendet jetzt ein CAPTCHA beim Login. Bitte loggen Sie sich einmal direkt auf mytischtennis.de ein, um das CAPTCHA zu lösen, oder kontaktieren Sie den Support.",
        "errors.ERROR_MYTISCHTENNIS_INVALID_PASSWORD" to "Ungültiges myTischtennis-Passwort.",
        "errors.ERROR_MYTISCHTENNIS_LOGIN_FAILED" to "myTischtennis-Login fehlgeschlagen. Bitte überprüfen Sie Ihre Zugangsdaten.",
        "errors.ERROR_MYTISCHTENNIS_NO_PASSWORD_SAVED" to "Kein Passwort gespeichert und Session abgelaufen. Bitte Passwort eingeben.",
        "errors.ERROR_MYTISCHTENNIS_PASSWORD_NOT_SAVED" to "Kein Passwort gespeichert. Bitte geben Sie Ihr Passwort ein.",
        "errors.ERROR_MYTISCHTENNIS_SESSION_EXPIRED" to "Session abgelaufen. Bitte erneut einloggen.",
        "errors.ERROR_MYTISCHTENNIS_USER_NOT_FOUND" to "myTischtennis-Benutzer nicht gefunden.",
        "errors.ERROR_NOT_FOUND" to "Nicht gefunden.",
        "errors.ERROR_OFFICIAL_TOURNAMENT_PDF_UPLOAD" to "Fehler beim Hochladen der PDF.",
        "errors.ERROR_SESSION_EXPIRED" to "Sitzung abgelaufen.",
        "errors.ERROR_TEAM_LINK_TO_LEAGUE_REQUIRED" to "Bitte ordnen Sie dem Team zuerst eine Liga zu, damit Dokumente verarbeitet werden können.",
        "errors.ERROR_TEAM_NOT_LINKED_TO_LEAGUE" to "Dieses Team ist keiner Liga zugeordnet.",
        "errors.ERROR_TEAM_PDF_LOAD_FAILED" to "Fehler beim Laden des PDFs",
        "errors.ERROR_TEAM_STATS_LOAD_FAILED" to "Statistiken konnten nicht geladen werden.",
        "errors.ERROR_TOURNAMENT_CLASS_NAME_REQUIRED" to "Bitte geben Sie einen Klassennamen ein!",
        "errors.ERROR_TOURNAMENT_NO_DATE" to "Kein Turnierdatum vorhanden!",
        "errors.ERROR_TOURNAMENT_NO_PARTICIPANTS" to "Keine Teilnehmer im Trainingstag für dieses Datum gefunden!",
        "errors.ERROR_TOURNAMENT_NO_TRAINING_DAY" to "Kein Trainingstag für {date} gefunden!",
        "errors.ERROR_TOURNAMENT_NO_VALID_PARTICIPANTS" to "Keine gültigen Teilnehmer im Trainingstag für dieses Datum gefunden!",
        "errors.ERROR_TOURNAMENT_NOT_FOUND" to "Turnier nicht gefunden.",
        "errors.ERROR_TOURNAMENT_PDF_GENERATION_FAILED" to "Fehler beim Generieren des PDFs",
        "errors.ERROR_TOURNAMENT_SELECT_FIRST" to "Bitte wählen Sie zuerst ein Turnier aus.",
        "errors.ERROR_TRAINING_STATS_LOAD_FAILED" to "Fehler beim Laden der Trainings-Statistik",
        "errors.ERROR_UNAUTHORIZED" to "Nicht autorisiert.",
        "errors.ERROR_UNKNOWN_ERROR" to "Ein unbekannter Fehler ist aufgetreten.",
        "errors.ERROR_USER_NOT_FOUND" to "Benutzer nicht gefunden.",
        "errors.ERROR_VALIDATION_FAILED" to "Validierung fehlgeschlagen.",
        "errors.SUCCESS_DIARY_GROUP_ASSIGNMENT_UPDATED" to "Gruppenzuordnung aktualisiert",
        "errors.SUCCESS_DIARY_MEMBER_CREATED" to "Mitglied \"{name}\" wurde erfolgreich erstellt und hinzugefügt!",
        "errors.SUCCESS_OFFICIAL_TOURNAMENT_PDF_UPLOAD" to "PDF erfolgreich hochgeladen.",
        "home.authenticatedFeatures.keepDiary" to "Trainingstagebuch führen",
        "home.authenticatedFeatures.keepDiaryDesc" to "Dokumentiere Trainingsaktivitäten, Teilnehmer, Aktivitäten und Notizen für jeden Trainingstag.",
        "home.authenticatedFeatures.manageMembers" to "Mitglieder verwalten",
        "home.authenticatedFeatures.manageMembersDesc" to "Verwalte deine Vereinsmitglieder, erstelle Trainingsgruppen und behalte den Überblick über alle Teilnehmer.",
        "home.authenticatedFeatures.manageTournaments" to "Turniere verwalten",
        "home.authenticatedFeatures.manageTournamentsDesc" to "Erstelle interne und offene Turniere, importiere offizielle Turniere und verwalte Teilnahmen.",
        "home.authenticatedFeatures.myTischtennisIntegration" to "MyTischtennis-Integration",
        "home.authenticatedFeatures.myTischtennisIntegrationDesc" to "Synchronisiere automatisch Spielergebnisse und Statistiken mit MyTischtennis.de.",
        "home.authenticatedFeatures.pdfExport" to "PDF-Export",
        "home.authenticatedFeatures.pdfExportDesc" to "Exportiere Trainingstage als PDF mit Teilnehmern, Aktivitäten und Statistiken.",
        "home.authenticatedFeatures.statistics" to "Statistiken & Auswertungen",
        "home.authenticatedFeatures.statisticsDesc" to "Erhalte detaillierte Trainings- und Teilnahmeübersichten sowie Aktivitätsstatistiken.",
        "home.authenticatedFeatures.teamManagement" to "Team-Management",
        "home.authenticatedFeatures.teamManagementDesc" to "Verwalte Mannschaften, Ligen, Spielpläne und Ergebnisse für deinen Verein.",
        "home.authenticatedFeatures.trainingGroups" to "Trainingsgruppen & Zeiten",
        "home.authenticatedFeatures.trainingGroupsDesc" to "Organisiere Trainingsgruppen, definiere Trainingszeiten und verwalte Gruppenzuordnungen.",
        "home.faq" to "Häufige Fragen",
        "home.faqFree.answer" to "Ja, du kannst kostenlos starten. Erweiterungen können später folgen.",
        "home.faqFree.question" to "Ist die Nutzung kostenlos?",
        "home.faqInstallation.answer" to "Nein, es handelt sich um eine Web‑Anwendung. Du nutzt sie direkt im Browser – auf Desktop, Tablet und Smartphone.",
        "home.faqInstallation.question" to "Benötige ich eine Installation?",
        "home.faqMyTischtennis.answer" to "Ja, nach der Einrichtung synchronisiert sich die Anwendung automatisch mit MyTischtennis.de und importiert Spielergebnisse und Statistiken.",
        "home.faqMyTischtennis.question" to "Funktioniert die MyTischtennis-Integration automatisch?",
        "home.faqPermissions.answer" to "Es gibt vier Rollen: Admin, Trainer, Mannschaftsführer und Mitglied. Jede Rolle hat spezifische Berechtigungen, die individuell angepasst werden können.",
        "home.faqPermissions.question" to "Wie funktioniert das Berechtigungssystem?",
        "home.faqPrivacy.answer" to "Wir setzen auf Datensparsamkeit, transparente Freigaben, rollenbasierte Zugriffe und vollständiges Aktivitätsprotokoll. Die Anwendung ist DSGVO‑konform.",
        "home.faqPrivacy.question" to "Wie steht es um den Datenschutz?",
        "home.faqTournaments.answer" to "Du kannst interne Turniere, offene Turniere und offizielle Turniere (z.B. von Verbänden) verwalten. Offizielle Turniere können importiert werden.",
        "home.faqTournaments.question" to "Welche Turnierarten werden unterstützt?",
        "home.faqTrainingGroups.answer" to "Ja, du kannst Trainingsgruppen anlegen, Trainingszeiten definieren und Mitglieder den Gruppen zuordnen. Das Trainingstagebuch schlägt automatisch passende Gruppen und Zeiten vor.",
        "home.faqTrainingGroups.question" to "Kann ich Trainingsgruppen und -zeiten verwalten?",
        "home.features.activityLog" to "Aktivitätsprotokoll",
        "home.features.activityLogDesc" to "Vollständiges Logging aller Aktionen für Transparenz und Nachvollziehbarkeit.",
        "home.features.keepDiary" to "Trainingstagebuch führen",
        "home.features.keepDiaryDesc" to "Dokumentiere Inhalte, Umfang und Anwesenheiten jeder Einheit – nachvollziehbar und strukturiert.",
        "home.features.manageMembers" to "Mitglieder verwalten",
        "home.features.manageMembersDesc" to "Erstelle Mitgliedsprofile, bilde Gruppen und halte Kontakt‑ und Freigabestände aktuell.",
        "home.features.memberManagement" to "Mitglieder- und Gruppenverwaltung",
        "home.features.myTischtennis" to "MyTischtennis-Integration",
        "home.features.myTischtennisIntegration" to "MyTischtennis-Integration",
        "home.features.myTischtennisIntegrationDesc" to "Automatische Synchronisation mit MyTischtennis.de für Spielergebnisse und Statistiken.",
        "home.features.officialTournaments" to "Offizielle Turniere",
        "home.features.officialTournamentsDesc" to "Importiere und verwalte offizielle Turniere, verwalte Teilnahmen und Ergebnisse.",
        "home.features.organizeSchedules" to "Spielpläne organisieren",
        "home.features.organizeSchedulesDesc" to "Plane Spiele, Turniere und Veranstaltungen inklusive Gruppen, Runden und Ergebnissen.",
        "home.features.pdfExport" to "PDF-Export",
        "home.features.pdfExportDesc" to "Exportiere Trainingstage als PDF mit Teilnehmern, Aktivitäten und Statistiken.",
        "home.features.permissionSystem" to "Berechtigungssystem",
        "home.features.permissionSystemDesc" to "Rollenbasierte Zugriffe (Admin, Trainer, Mannschaftsführer, Mitglied) mit individuellen Berechtigungen.",
        "home.features.predefinedActivities" to "Vordefinierte Aktivitäten",
        "home.features.predefinedActivitiesDesc" to "Nutze Vorlagen für wiederkehrende Übungen und beschleunige deine Dokumentation.",
        "home.features.security" to "Sicherheit & DSGVO",
        "home.features.securityDesc" to "Datenschutzfreundliche Architektur, Freigaben durch Mitglieder und transparente Zugriffe.",
        "home.features.statistics" to "Statistiken & Auswertungen",
        "home.features.statisticsDesc" to "Erhalte Trainings‑ und Teilnahmeübersichten, erkenne Entwicklung und plane gezielt.",
        "home.features.teamManagement" to "Team-Management & Ligen",
        "home.features.teamManagementDesc" to "Verwalte Mannschaften, Ligen, Spielpläne und Ergebnisse für deinen Verein.",
        "home.features.tournaments" to "Turniere (intern, offen, offiziell)",
        "home.features.trainingDiary" to "Trainingstagebuch & Dokumentation",
        "home.features.trainingGroups" to "Trainingsgruppen & Trainingszeiten",
        "home.features.trainingGroupsDesc" to "Organisiere Trainingsgruppen, definiere Trainingszeiten und verwalte Gruppenzuordnungen.",
        "home.forWhom" to "Für wen ist das TrainingsTagebuch?",
        "home.forWhomText" to "Das TrainingsTagebuch ist die umfassende Plattform für Vereine, Abteilungen und Trainerteams. Es vereint Mitgliederverwaltung mit Trainingsgruppen und -zeiten, detailliertes Trainingstagebuch, umfassende Turnierorganisation (interne, offene und offizielle Turniere), Team-Management mit Liga-Integration, MyTischtennis-Synchronisation, aussagekräftige Statistiken und Auswertungen sowie ein flexibles Berechtigungssystem in einer modernen Web‑Anwendung. Durch klare Rollen (Admin, Trainer, Mannschaftsführer, Mitglied) und individuelle Berechtigungen behalten Verantwortliche die Kontrolle, während Mitglieder selbstbestimmt mitwirken können. Ideal für Mannschafts‑, Racket‑ und Individualsportarten – vom Nachwuchs bis zum Leistungsbereich. DSGVO‑konform mit transparenten Freigaben und vollständigem Aktivitätsprotokoll.",
        "home.haveAccount" to "Ich habe schon einen Account",
        "home.heroFeatures.memberManagement" to "Mitglieder- und Gruppenverwaltung",
        "home.heroFeatures.myTischtennis" to "MyTischtennis-Integration",
        "home.heroFeatures.statistics" to "Statistiken & Auswertungen",
        "home.heroFeatures.teamManagement" to "Team-Management & Ligen",
        "home.heroFeatures.tournaments" to "Turniere (intern, offen, offiziell)",
        "home.heroFeatures.trainingDiary" to "Trainingstagebuch & Dokumentation",
        "home.heroFeatures.trainingGroups" to "Trainingsgruppen & Trainingszeiten",
        "home.heroSubtitle" to "Das TrainingsTagebuch ist die umfassende Lösung für Vereine: Mitgliederverwaltung, Trainingsgruppen, Trainingszeiten, Trainingstagebuch, Turnierorganisation, Team-Management, MyTischtennis-Integration, Statistiken und mehr – DSGVO‑konform und einfach zu bedienen.",
        "home.heroTitle" to "Vereinsverwaltung, Trainingsplanung und Turniere – alles an einem Ort",
        "home.howItWorks" to "So funktioniert es",
        "home.registerNow" to "Jetzt kostenlos registrieren",
        "home.rolesAndPrivacy" to "Rollen, Berechtigungen & DSGVO",
        "home.startFree" to "Kostenlos starten",
        "home.step1.description" to "Lege kostenlos einen Account an und aktiviere ihn per E‑Mail.",
        "home.step1.title" to "Registrieren",
        "home.step2.description" to "Erstelle deinen Verein, lade Mitglieder ein und richte Gruppen ein.",
        "home.step2.title" to "Verein anlegen",
        "home.step3.description" to "Plane Termine, dokumentiere Trainings und verfolge Fortschritte.",
        "home.step3.title" to "Planen & dokumentieren",
        "home.welcome" to "Willkommen im TrainingsTagebuch",
        "home.welcomeBack" to "Herzlich Willkommen zurück! Du bist erfolgreich eingeloggt.",
        "home.whatCanYouDo" to "Was kannst du mit dem TrainingsTagebuch machen?",
        "imageDialog.close" to "Schließen",
        "imageDialog.noImageAvailable" to "Kein Bild verfügbar",
        "imageDialog.title" to "Bild",
        "imageViewer.camera" to "Kamera",
        "imageViewer.delete" to "Löschen",
        "imageViewer.deleteImage" to "Bild löschen",
        "imageViewer.nextImage" to "Nächstes Bild",
        "imageViewer.noImageAvailable" to "Kein Bild verfügbar",
        "imageViewer.previousImage" to "Vorheriges Bild",
        "imageViewer.rotateLeft" to "90° links drehen",
        "imageViewer.rotateRight" to "90° rechts drehen",
        "imageViewer.selectFiles" to "Dateien auswählen",
        "imageViewer.setAsPrimary" to "Als Hauptbild festlegen",
        "imageViewer.setAsPrimaryButton" to "Als Hauptbild setzen",
        "imprint.contact" to "Kontakt",
        "imprint.serviceProvider" to "Diensteanbieter",
        "imprint.title" to "Impressum",
        "languages.de" to "Deutsch",
        "languages.de-CH" to "Schweizer Deutsch",
        "languages.en-AU" to "Englisch (AU)",
        "languages.en-GB" to "Englisch (GB)",
        "languages.en-US" to "Englisch (US)",
        "languages.es" to "Spanisch",
        "languages.fil" to "Filipino",
        "languages.fr" to "Französisch",
        "languages.it" to "Italienisch",
        "languages.ja" to "Japanisch",
        "languages.pl" to "Polnisch",
        "languages.th" to "Thai",
        "languages.tl" to "Tagalog",
        "languages.zh" to "Chinesisch",
        "legal.backToHome" to "Zur Startseite",
        "legal.imprint" to "Impressum",
        "legal.privacyPolicy" to "Datenschutzerklärung",
        "logs.actions" to "Aktionen",
        "logs.all" to "Alle",
        "logs.apiRequests" to "API-Requests",
        "logs.applyFilters" to "Filter anwenden",
        "logs.backend" to "Backend",
        "logs.clearFilters" to "Zurücksetzen",
        "logs.cronJobs" to "Cron-Jobs",
        "logs.details" to "Details",
        "logs.displayed" to "angezeigt",
        "logs.displayedLabel" to "Angezeigt",
        "logs.error" to "Fehler",
        "logs.errorLabel" to "Fehler",
        "logs.errorLoading" to "Fehler beim Laden der Logs",
        "logs.executionTime" to "Ausführungszeit",
        "logs.from" to "Von",
        "logs.httpMethod" to "HTTP-Methode",
        "logs.justNow" to "gerade eben",
        "logs.loadingLogs" to "Lade Logs...",
        "logs.logDetails" to "Log-Details",
        "logs.logDetailsLabels.error" to "Fehler",
        "logs.logDetailsLabels.executionTime" to "Ausführungszeit",
        "logs.logDetailsLabels.ip" to "IP",
        "logs.logDetailsLabels.method" to "Methode",
        "logs.logDetailsLabels.path" to "Pfad",
        "logs.logDetailsLabels.requestBody" to "Request Body",
        "logs.logDetailsLabels.responseBody" to "Response Body",
        "logs.logDetailsLabels.schedulerJob" to "Scheduler-Job",
        "logs.logDetailsLabels.status" to "Status",
        "logs.logDetailsLabels.time" to "Zeit",
        "logs.logDetailsLabels.type" to "Typ",
        "logs.logType" to "Log-Typ",
        "logs.logTypeLabels.api_request" to "API-Request",
        "logs.logTypeLabels.cron_job" to "Cron-Job",
        "logs.logTypeLabels.manual" to "Manuell",
        "logs.logTypeLabels.scheduler" to "Scheduler",
        "logs.manual" to "Manuelle Ausführungen",
        "logs.method" to "Methode",
        "logs.minutesAgo" to "vor {n} Minuten",
        "logs.mytischtennis" to "myTischtennis",
        "logs.next" to "Nächste",
        "logs.of" to "von",
        "logs.ownBackend" to "Eigenes Backend",
        "logs.page" to "Seite",
        "logs.path" to "Pfad",
        "logs.pathPlaceholder" to "z.B. /api/diary",
        "logs.previous" to "Vorherige",
        "logs.recordsFound" to "Datensätze gefunden",
        "logs.scheduler" to "Scheduler",
        "logs.secondsAgo" to "vor {n} Sekunden",
        "logs.status" to "Status",
        "logs.subtitle" to "Übersicht über alle API-Requests, Responses und Ausführungen",
        "logs.successfullyLoaded" to "Erfolgreich geladen",
        "logs.time" to "Zeit",
        "logs.title" to "System-Logs",
        "logs.to" to "Bis",
        "logs.total" to "Gesamt",
        "logs.type" to "Typ",
        "logs.viewDetails" to "Details",
        "matchReport.analyzeNuscore" to "nuscore analysieren",
        "matchReport.createLocalCopy" to "Lokale Kopie erstellen",
        "matchReport.hideAnalyzer" to "Analyzer verstecken",
        "matchReportApi.availablePlayers" to "Verfügbare Spieler",
        "matchReportApi.bothTeamsAppeared" to "Beide Mannschaften angetreten",
        "matchReportApi.clickToRemove" to "Klicken zum Entfernen",
        "matchReportApi.completed" to "Abgeschlossen",
        "matchReportApi.completion" to "Abschluss",
        "matchReportApi.endTime" to "Endzeit",
        "matchReportApi.errorLoading" to "Fehler beim Laden der Daten",
        "matchReportApi.general" to "Allgemein",
        "matchReportApi.greeting" to "Begrüßung",
        "matchReportApi.guestLineup" to "Aufstellung Gast",
        "matchReportApi.guestPin" to "PIN Gastverein",
        "matchReportApi.guestTeamNotAppeared" to "Gastmannschaft {team} nicht angetreten",
        "matchReportApi.homeLineup" to "Aufstellung Heim",
        "matchReportApi.homePin" to "PIN Heimverein",
        "matchReportApi.homeTeamNotAppeared" to "Heimmannschaft {team} nicht angetreten",
        "matchReportApi.loading" to "Lade Spielberichtsdaten...",
        "matchReportApi.noLineupData" to "Keine Aufstellungsdaten verfügbar",
        "matchReportApi.notAppeared" to "Nicht angetreten",
        "matchReportApi.pending" to "Ausstehend",
        "matchReportApi.pinInput" to "PIN-Eingabe",
        "matchReportApi.playSystem" to "Spielsystem",
        "matchReportApi.rank" to "Rang",
        "matchReportApi.result" to "Ergebniserfassung",
        "matchReportApi.retry" to "Erneut versuchen",
        "matchReportApi.selectedPlayers" to "Ausgewählte Spieler",
        "matchReportApi.setCurrentTime" to "Aktuelle Zeit setzen",
        "matchReportApi.signLineup" to "Aufstellung signieren",
        "matchReportApi.startTime" to "Startzeit",
        "matchReportApi.status" to "Status",
        "matchReportApi.vs" to "vs",
        "matchReportHeaderActions.copied" to "Kopiert!",
        "matchReportHeaderActions.copyError" to "Fehler beim Kopieren der PIN",
        "matchReportHeaderActions.copyPin" to "PIN kopieren",
        "matchReportHeaderActions.copyPinTitle" to "PIN in Zwischenablage kopieren",
        "matchReportHeaderActions.insertPin" to "PIN einfügen",
        "matchReportHeaderActions.insertPinTitle" to "PIN automatisch einfügen",
        "matchReportHeaderActions.noPinAvailable" to "Keine PIN verfügbar",
        "memberActivities.activity" to "Übung",
        "memberActivities.all" to "Alle",
        "memberActivities.close" to "Schließen",
        "memberActivities.dates" to "Daten",
        "memberActivities.frequency" to "Häufigkeit",
        "memberActivities.last3Months" to "Letzte 3 Monate",
        "memberActivities.last4Weeks" to "Letzte 4 Wochen",
        "memberActivities.last6Months" to "Letztes halbes Jahr",
        "memberActivities.lastYear" to "Letztes Jahr",
        "memberActivities.loading" to "Lade Übungen...",
        "memberActivities.more" to "weitere",
        "memberActivities.noActivities" to "Keine Übungen im gewählten Zeitraum gefunden.",
        "memberActivities.period" to "Zeitraum",
        "memberActivities.showLess" to "weniger anzeigen",
        "memberActivities.title" to "Übungen von",
        "memberGallery.imageSize" to "Bildgröße",
        "memberGallery.loading" to "Galerie wird geladen…",
        "memberGallery.noImage" to "Kein Bild",
        "memberGallery.noMembersWithImages" to "Keine Mitglieder mit Bildern gefunden.",
        "memberGallery.title" to "Mitglieder-Galerie",
        "memberGallery.titleWithDate" to "Mitglieder-Galerie - Klicken Sie auf ein Bild, um als Teilnehmer hinzuzufügen",
        "memberNotes.add" to "Hinzufügen",
        "memberNotes.memberImage" to "Mitgliedsbild",
        "memberNotes.newNote" to "Neue Notiz",
        "memberNotes.notes" to "Notizen",
        "memberNotes.phone" to "Telefon-Nr.",
        "memberNotes.selectTags" to "Tags auswählen",
        "memberNotes.tags" to "Tags",
        "memberNotes.title" to "Notizen für",
        "members.actions" to "Aktionen",
        "members.active" to "Aktiv",
        "members.activeMembers" to "Aktive Mitglieder",
        "members.addEmail" to "E-Mail-Adresse hinzufügen",
        "members.addGroup" to "Gruppe hinzufügen...",
        "members.addPhone" to "Telefonnummer hinzufügen",
        "members.address" to "Adresse",
        "members.adultReleaseApproved" to "Freigabe Erwachsene",
        "members.adultReserveApproved" to "Ersatz bei Erwachsenen",
        "members.adults" to "Erwachsene (18+)",
        "members.age" to "Alter",
        "members.ageFromPlaceholder" to "von",
        "members.ageGroup" to "Altersklasse",
        "members.ageRange" to "Alter von - bis",
        "members.ageToPlaceholder" to "bis",
        "members.batchFormsMarkedEmpty" to "In der aktuellen Auswahl gibt es keine ungeprüften Formulare.",
        "members.batchFormsMarkedSuccess" to "{count} Formular(e) als geprüft markiert.",
        "members.batchMarkedRegularEmpty" to "In der aktuellen Auswahl gibt es keine Probe-Mitglieder.",
        "members.batchMarkedRegularSuccess" to "{count} Probe-Mitglied(er) als regulär markiert.",
        "members.batchPartialFailure" to "{success} erfolgreich, {failed} fehlgeschlagen.",
        "members.birthdate" to "Geburtsdatum",
        "members.bulkActions" to "Sammelaktionen",
        "members.camera" to "Kamera",
        "members.change" to "Ändern",
        "members.city" to "Ort",
        "members.clearFields" to "Felder leeren",
        "members.clearFilters" to "Filter zurücksetzen",
        "members.clickTtRequestAction" to "Spielberechtigung in click-TT beantragen",
        "members.clickTtRequestConfirm" to "Soll für {name} der automatisierte Click-TT-Antrag gestartet werden?",
        "members.clickTtRequestError" to "Der Click-TT-Antrag konnte nicht eingereicht werden.",
        "members.clickTtRequestFailedLog" to "Click-TT-Antrag fehlgeschlagen",
        "members.clickTtRequestHint" to "Der Antrag wird im Backend automatisiert durch den Click-TT-Workflow geführt.",
        "members.clickTtRequestPending" to "Click-TT-Antrag läuft",
        "members.clickTtRequestPendingShort" to "Läuft ...",
        "members.clickTtRequestShort" to "Click-TT",
        "members.clickTtRequestSuccess" to "Bitte loggen Sie sich noch auf click-tt ein und senden Sie den Antrag ab.",
        "members.clickTtRequestTitle" to "Click-TT-Antrag starten",
        "members.clickTtSubmitted" to "Click-TT gestellt",
        "members.closeEditor" to "Editor schließen",
        "members.composeEmail" to "E-Mail vorbereiten",
        "members.contact" to "Kontakt",
        "members.copyContactSummary" to "Kontaktübersicht kopieren",
        "members.copyContactSummarySuccess" to "Kontaktübersicht in die Zwischenablage kopiert.",
        "members.copyEmails" to "E-Mails kopieren",
        "members.copyEmailsEmpty" to "In der aktuellen Auswahl gibt es keine E-Mail-Adressen.",
        "members.copyEmailsSuccess" to "E-Mail-Liste in die Zwischenablage kopiert.",
        "members.copyPhones" to "Telefone kopieren",
        "members.copyPhonesEmpty" to "In der aktuellen Auswahl gibt es keine Telefonnummern.",
        "members.copyPhonesSuccess" to "Telefonliste in die Zwischenablage kopiert.",
        "members.create" to "Anlegen",
        "members.createNewMember" to "Neues Mitglied anlegen",
        "members.dataIssueAddress" to "Adresse fehlt",
        "members.dataIssueBirthdate" to "Geburtsdatum fehlt",
        "members.dataIssueCity" to "Ort fehlt",
        "members.dataIssueEmail" to "E-Mail fehlt",
        "members.dataIssueGender" to "Geschlecht ungeklärt",
        "members.dataIssuePhone" to "Telefon fehlt",
        "members.dataIssuePostalCode" to "PLZ fehlt",
        "members.dataIssueStreet" to "Straße fehlt",
        "members.dataIssueTrainingGroup" to "Trainingsgruppe fehlt",
        "members.dataQuality" to "Datenqualität",
        "members.dataQualityComplete" to "Daten vollständig",
        "members.deactivateMember" to "Mitglied deaktivieren",
        "members.deactivateMemberConfirm" to "Möchten Sie \"{name}\" wirklich deaktivieren?",
        "members.deactivateMemberTitle" to "Mitglied deaktivieren",
        "members.deleteImageConfirm" to "Möchten Sie dieses Bild wirklich löschen?",
        "members.deleteImageTitle" to "Bild löschen",
        "members.editHint" to "Ein Klick auf eine Zeile öffnet den Editor.",
        "members.editMember" to "Mitglied bearbeiten",
        "members.editorAssignTrainingGroupHint" to "Bitte mindestens eine Trainingsgruppe zuordnen.",
        "members.editorCreateHint" to "Neues Mitglied anlegen und Kontaktdaten direkt erfassen.",
        "members.editorEditHint" to "Daten von {name} bearbeiten.",
        "members.editorRecommendedEntry" to "Empfohlener Eintrag",
        "members.emailAddress" to "E-Mail-Adresse",
        "members.emailAddressShort" to "Email-Adresse",
        "members.emails" to "E-Mail-Adressen",
        "members.errorAddingToGroup" to "Fehler beim Hinzufügen zur Gruppe",
        "members.errorDeactivatingMember" to "Fehler beim Deaktivieren des Mitglieds",
        "members.errorDeletingImage" to "Bild konnte nicht gelöscht werden",
        "members.errorLoadingImage" to "Fehler beim Laden des Bildes",
        "members.errorLoadingMembers" to "Laden der Mitgliederliste fehlgeschlagen.",
        "members.errorLoadingTrainingParticipations" to "Fehler beim Laden der Trainingsteilnahmen",
        "members.errorMarkingForm" to "Fehler beim Markieren des Formulars.",
        "members.errorRemovingFromGroup" to "Fehler beim Entfernen aus der Gruppe",
        "members.errorRemovingTestMembership" to "Fehler beim Entfernen der Testmitgliedschaft.",
        "members.errorRotatingImage" to "Fehler beim Drehen des Bildes",
        "members.errorSavingMember" to "Fehler beim Speichern des Mitglieds",
        "members.errorSettingPrimaryImage" to "Hauptbild konnte nicht gesetzt werden",
        "members.errorTransfer" to "Fehler bei der Übertragung",
        "members.errorUpdatingRatings" to "Fehler beim Aktualisieren der TTR/QTTR-Werte",
        "members.errorUploadingImage" to "Bild konnte nicht hochgeladen werden",
        "members.exercises" to "Übungen",
        "members.exportCsv" to "CSV exportieren",
        "members.exportCsvFile" to "mitglieder-auswahl.csv",
        "members.exportEmails" to "E-Mail",
        "members.exportMembersSelected" to "Mitglieder aktuell ausgewählt",
        "members.exportPhones" to "Telefon",
        "members.exportPreview" to "Exportvorschau",
        "members.exportPreviewEmpty" to "Keine Mitglieder in der aktuellen Auswahl",
        "members.exportPreviewNames" to "Vorschau",
        "members.exportReachableByEmail" to "mit E-Mail-Adresse",
        "members.exportReachableByPhone" to "mit Telefonnummer",
        "members.firstName" to "Vorname",
        "members.formHandedOver" to "Mitgliedsformular ausgehändigt",
        "members.formMarkedAsHandedOver" to "Mitgliedsformular als ausgehändigt markiert.",
        "members.gender" to "Geschlecht",
        "members.genderDiverse" to "Divers",
        "members.genderFemale" to "Weiblich",
        "members.genderMale" to "Männlich",
        "members.genderUnknown" to "Unbekannt",
        "members.generatePhoneList" to "Telefonliste generieren",
        "members.groupPhotoCrop" to "Gruppenfoto verarbeiten",
        "members.groupPhotoCropSaved" to "Mitgliedsfoto aus Gruppenfoto gespeichert.",
        "members.image" to "Bild",
        "members.imageDeleted" to "Bild wurde gelöscht.",
        "members.imageInternet" to "Bild (Inet?)",
        "members.imagePreview" to "Vorschau des Mitgliedsbildes",
        "members.imageUpdated" to "Bild wurde aktualisiert",
        "members.inactive" to "inaktiv",
        "members.inactiveMembers" to "Inaktive Mitglieder",
        "members.j11" to "J11",
        "members.j13" to "J13",
        "members.j15" to "J15",
        "members.j17" to "J17 (17 und jünger)",
        "members.j19" to "J19",
        "members.j9" to "J9",
        "members.lastName" to "Nachname",
        "members.lastTrainingFilter" to "Letztes Training",
        "members.lastTrainingFilterHasDate" to "Mit erfasstem Datum",
        "members.lastTrainingFilterHint" to "AK-Spalte: laufende und nächste Saison. Weitere Details (letztes Training, Teilnahmen) auch beim Überfahren der Zeile.",
        "members.lastTrainingFilterNoDate" to "Ohne letztes Training",
        "members.lastTrainingFilterNotInTraining" to "„Nicht mehr im Training“",
        "members.loadingMembers" to "Lade Mitglieder...",
        "members.m11" to "M11",
        "members.m13" to "M13",
        "members.m15" to "M15",
        "members.m19" to "M19",
        "members.m9" to "M9",
        "members.markFormReceived" to "Formular geprüft",
        "members.markFormsForSelection" to "Formulare für Auswahl prüfen",
        "members.markRegular" to "Als regulär markieren",
        "members.markRegularForSelection" to "Auswahl als regulär markieren",
        "members.memberDeactivated" to "Mitglied deaktiviert",
        "members.memberDetails" to "Mitgliedsdetails",
        "members.memberFormHandedOver" to "Mitgliedsformular ausgehändigt",
        "members.memberImage" to "Mitgliedsbild",
        "members.memberImages" to "Mitgliedsbilder",
        "members.memberInfo" to "Mitglieder-Info",
        "members.memberScope" to "Mitgliedsbereich",
        "members.missingTtrHistoryId" to "Keine myTischtennis-ID hinterlegt",
        "members.name" to "Name, Vorname",
        "members.newMember" to "Neues Mitglied",
        "members.noAddressShort" to "Keine Adresse",
        "members.noEmailShort" to "Keine E-Mail",
        "members.noGroupsAssigned" to "Keine Gruppen zugeordnet",
        "members.noGroupsAvailable" to "Keine Gruppen verfügbar",
        "members.noOpenTasks" to "Keine offenen Aufgaben",
        "members.noPhoneShort" to "Kein Telefon",
        "members.notes" to "Notizen",
        "members.noTestMembership" to "Keine Testmitgliedschaft mehr",
        "members.notInTrainingTooltip" to "Seit {weeks} Trainingswochen ohne Teilnahme",
        "members.onlyActiveMembers" to "Es werden nur aktive Mitglieder ausgegeben",
        "members.openTasks" to "Offene Aufgaben",
        "members.parent" to "Elternteil",
        "members.parentFallback" to "Elternteil",
        "members.parentName" to "Name (z.B. Mutter, Vater)",
        "members.phoneList" to "Telefonliste.pdf",
        "members.phoneListForSelection" to "Telefonliste für Auswahl",
        "members.phoneListSelectionFile" to "Telefonliste-Auswahl.pdf",
        "members.phoneNumber" to "Telefonnummer",
        "members.phoneNumberShort" to "Telefon-Nr.",
        "members.phones" to "Telefonnummern",
        "members.picsInInternetAllowed" to "Pics in Internet erlaubt",
        "members.postalCode" to "PLZ",
        "members.previewLastTraining" to "Letztes Training",
        "members.previewNoLastTraining" to "Noch keine Teilnahme",
        "members.primary" to "Primär",
        "members.primaryImageUpdated" to "Hauptbild wurde aktualisiert.",
        "members.remove" to "Entfernen",
        "members.resultsVisible" to "Mitglieder sichtbar",
        "members.rowTooltipSeparator" to "·",
        "members.scopeActive" to "Aktiv",
        "members.scopeActiveDataIncomplete" to "Aktiv + Daten unvollständig",
        "members.scopeActiveTest" to "Aktiv + Probe",
        "members.scopeAll" to "Alle",
        "members.scopeDataIncomplete" to "Daten unvollständig",
        "members.scopeInactive" to "Inaktiv",
        "members.scopeNeedsForm" to "Formular ungeprüft",
        "members.scopeNotTraining" to "Nicht mehr im Training",
        "members.scopeTest" to "Probe",
        "members.search" to "Suche",
        "members.searchAndFilter" to "Suche und Filter",
        "members.searchPlaceholder" to "Name, Ort, Telefon oder E-Mail suchen",
        "members.selectFile" to "Datei auswählen",
        "members.showInactiveMembers" to "Inaktive Mitglieder anzeigen",
        "members.showTrainingParticipationsColumn" to "Spalte „Trainingsteilnahmen“ anzeigen",
        "members.showTtrHistory" to "TTR-Historie anzeigen",
        "members.sixOrMoreParticipations" to "6 oder mehr Trainingsteilnahmen",
        "members.sortAge" to "Alter",
        "members.sortBirthday" to "Geburtstag",
        "members.sortBy" to "Sortieren nach",
        "members.sortFirstName" to "Vorname",
        "members.sortLastName" to "Nachname",
        "members.sortLastTraining" to "Letztes Training",
        "members.sortOpenTasks" to "Offene Aufgaben",
        "members.sortQttr" to "QTTR-Wert",
        "members.status" to "Status",
        "members.street" to "Straße",
        "members.subtitle" to "Mitglieder suchen, filtern und direkt bearbeiten.",
        "members.taskActionMarkRegular" to "Regulär setzen",
        "members.taskActionRequest" to "Anfragen",
        "members.taskActionReview" to "Öffnen",
        "members.taskActionVerify" to "Prüfen",
        "members.taskAssignTrainingGroup" to "Trainingsgruppe zuordnen",
        "members.taskCheckClickTt" to "Click-TT-Spielberechtigung prüfen",
        "members.taskCheckDataQuality" to "Datenqualität prüfen",
        "members.taskCheckTrainingStatus" to "Trainingsstatus prüfen",
        "members.taskReviewTrialStatus" to "Probe-Status prüfen",
        "members.taskVerifyForm" to "Formular prüfen",
        "members.testMember" to "Testm.",
        "members.testMembers" to "Testmitglieder",
        "members.testMembership" to "Testmitgliedschaft",
        "members.testMembershipRemoved" to "Testmitgliedschaft entfernt.",
        "members.threeOrMoreParticipations" to "3 oder mehr Trainingsteilnahmen",
        "members.title" to "Mitglieder",
        "members.toggleSortDirection" to "Sortierrichtung wechseln",
        "members.trainingGroups" to "Trainingsgruppen",
        "members.trainingParticipations" to "Trainingsteilnahmen",
        "members.transferErrorTitle" to "Fehler bei der Übertragung",
        "members.transferMembers" to "Mitglieder übertragen",
        "members.transferSuccessTitle" to "Übertragung erfolgreich",
        "members.ttAdult" to "Erwachsene (kein Jugend nach Stichtag)",
        "members.ttAgeClassCol" to "AK (TT)",
        "members.ttFilterGroupJ" to "Mädchen & Jungen (gemischt)",
        "members.ttFilterGroupM" to "Mädchen (nur weiblich)",
        "members.ttrQttr" to "TTR / QTTR",
        "members.ttSeasonCurrentTag" to "aktuell",
        "members.ttSeasonFilter" to "Saison (Stichtag)",
        "members.ttSeasonNextTag" to "kommend",
        "members.ttStichtagHint" to "Stichtag 1.1. (DTTB). Jungen: nur J-Klassen. Mädchen: J und M möglich.",
        "members.updateRatings" to "TTR/QTTR von myTischtennis aktualisieren",
        "members.updating" to "Aktualisiere...",
        "members.visibleMembers" to "Sichtbare Mitglieder",
        "members.wantsToPlay" to "Will spielen",
        "memberSelection.close" to "Schließen",
        "memberSelection.deselectAll" to "Alle abwählen",
        "memberSelection.generatePdf" to "PDF erzeugen",
        "memberSelection.members" to "Mitglieder",
        "memberSelection.noRecommendations" to "Keine passenden Empfehlungen gefunden.",
        "memberSelection.recommendations" to "Empfehlungen",
        "memberSelection.selectAll" to "Alle auswählen",
        "memberSelection.title" to "Mitglieder auswählen",
        "memberTransfer.additionalField" to "Zusätzliches Feld",
        "memberTransfer.additionalFieldExample1" to "Zusätzliches Feld (z.B. client_id)",
        "memberTransfer.additionalFieldExample2" to "Zusätzliches Feld (z.B. client_secret)",
        "memberTransfer.analyzeAndImport" to "Template analysieren und importieren",
        "memberTransfer.availablePlaceholders" to "Verfügbare Platzhalter",
        "memberTransfer.bulkMode" to "Bulk-Import-Modus (alle Mitglieder auf einmal übertragen)",
        "memberTransfer.bulkModeActive" to "Bulk-Modus aktiv",
        "memberTransfer.bulkModeActiveDescription" to "Das Template definiert das Format für ein einzelnes Mitglied. Die Mitglieder werden automatisch in ein Array gewrappt. Die äußere Struktur können Sie optional im \"Bulk-Wrapper-Template\" definieren (siehe unten).",
        "memberTransfer.bulkModeHint" to "Wenn aktiviert, werden alle Mitglieder in einem Request als Array übertragen.",
        "memberTransfer.bulkWrapperDescription" to "Optional können Sie die äußere Struktur definieren, in die die Mitglieder-Array eingefügt wird. Verwenden Sie PLACEHOLDER_MEMBERS als Platzhalter für das Array der Mitglieder.",
        "memberTransfer.bulkWrapperNote" to "Hinweis: Wenn kein Wrapper-Template angegeben wird, wird automatisch ein members-Array verwendet.",
        "memberTransfer.bulkWrapperTemplate" to "Bulk-Wrapper-Template (optional)",
        "memberTransfer.bulkWrapperWhat" to "Was ist ein Bulk-Wrapper-Template?",
        "memberTransfer.configDeleted" to "Konfiguration erfolgreich gelöscht!",
        "memberTransfer.configInfo" to "Konfigurieren Sie hier die Einstellungen für die Übertragung von Mitgliedern an externe Systeme. Diese Einstellungen werden vereinsspezifisch gespeichert.",
        "memberTransfer.configSaved" to "Konfiguration erfolgreich gespeichert!",
        "memberTransfer.confirmDelete" to "Konfiguration löschen",
        "memberTransfer.confirmDeleteMessage" to "Möchten Sie die Konfiguration wirklich löschen?",
        "memberTransfer.deleteConfig" to "Konfiguration löschen",
        "memberTransfer.deleting" to "Lösche...",
        "memberTransfer.errorDeleting" to "Fehler beim Löschen",
        "memberTransfer.errorLoading" to "Fehler beim Laden der Konfiguration",
        "memberTransfer.errorParsingTemplate" to "Fehler beim Parsen des Templates",
        "memberTransfer.errorSaving" to "Fehler beim Speichern",
        "memberTransfer.example" to "Beispiel",
        "memberTransfer.exampleFormData" to "Beispiel für Form-Data Format",
        "memberTransfer.exampleJson" to "Beispiel für JSON-Format (empfohlen)",
        "memberTransfer.exampleXml" to "Beispiel für XML-Format",
        "memberTransfer.formDataHint" to "Für Form-Data verwenden Sie ein einfaches Text-Template mit Zeilen im Format feldname=platzhalter:",
        "memberTransfer.httpMethod" to "HTTP-Methode",
        "memberTransfer.importTemplate" to "Template aus vollständigem Beispiel importieren",
        "memberTransfer.importTemplateHint" to "Fügen Sie ein vollständiges Beispiel-Template (mit Beispiel-Mitgliedern) ein. Das System erkennt automatisch das Mitglied-Template und das Bulk-Wrapper-Template.",
        "memberTransfer.importTemplatePlaceholder" to "Fügen Sie hier ein vollständiges Beispiel-Template ein, z.B.:\nLBRACE\n  DQUOTEmembersDQUOTE: [\n    LBRACE\n      DQUOTEfirstNameDQUOTE: DQUOTEMaxDQUOTE,\n      DQUOTElastNameDQUOTE: DQUOTEMustermannDQUOTE,\n      DQUOTEemailDQUOTE: DQUOTEmaxATexample.comDQUOTE\n    RBRACE\n  ]\nRBRACE",
        "memberTransfer.invalidJson" to "Bitte stellen Sie sicher, dass gültiges JSON verwendet wird.",
        "memberTransfer.invalidTemplateFormat" to "Ungültiges Template-Format",
        "memberTransfer.loadingConfig" to "Konfiguration wird geladen...",
        "memberTransfer.loginConfiguration" to "Login-Konfiguration",
        "memberTransfer.loginData" to "Login-Daten",
        "memberTransfer.loginEndpointHint" to "Optional: Relativer Pfad zum Login-Endpoint (z.B. /api/auth/login)",
        "memberTransfer.loginEndpointPath" to "Login-Endpoint Pfad",
        "memberTransfer.loginEndpointPlaceholder" to "/api/auth/login",
        "memberTransfer.loginFormat" to "Login-Format",
        "memberTransfer.membersArray" to "Mitglieder-Array",
        "memberTransfer.password" to "Passwort",
        "memberTransfer.passwordEncrypted" to "Passwörter werden verschlüsselt gespeichert",
        "memberTransfer.placeholderHint" to "Klicken Sie auf einen Platzhalter, um ihn an der aktuellen Cursor-Position einzufügen:",
        "memberTransfer.placeholders.address" to "Kombinierte Adresse",
        "memberTransfer.placeholders.addressDesc" to "Straße und Ort kombiniert",
        "memberTransfer.placeholders.birthDate" to "Geburtsdatum",
        "memberTransfer.placeholders.birthDateAlt" to "Geburtsdatum (alt)",
        "memberTransfer.placeholders.birthDateAltDesc" to "Geburtsdatum im Format YYYY-MM-DD (alternative Bezeichnung)",
        "memberTransfer.placeholders.birthDateDesc" to "Geburtsdatum im Format YYYY-MM-DD",
        "memberTransfer.placeholders.city" to "Ort",
        "memberTransfer.placeholders.cityDesc" to "Wohnort",
        "memberTransfer.placeholders.email" to "E-Mail-Adresse",
        "memberTransfer.placeholders.emailDesc" to "E-Mail-Adresse des Mitglieds",
        "memberTransfer.placeholders.firstName" to "Vorname",
        "memberTransfer.placeholders.firstNameDesc" to "Vorname des Mitglieds",
        "memberTransfer.placeholders.fullName" to "Vollständiger Name",
        "memberTransfer.placeholders.fullNameDesc" to "Vorname und Nachname kombiniert",
        "memberTransfer.placeholders.gender" to "Geschlecht",
        "memberTransfer.placeholders.genderDesc" to "Geschlecht des Mitglieds",
        "memberTransfer.placeholders.lastName" to "Nachname",
        "memberTransfer.placeholders.lastNameDesc" to "Nachname des Mitglieds",
        "memberTransfer.placeholders.phone" to "Telefonnummer",
        "memberTransfer.placeholders.phoneDesc" to "Telefonnummer des Mitglieds",
        "memberTransfer.placeholders.qttr" to "QTTR-Wert",
        "memberTransfer.placeholders.qttrDesc" to "QTTR-Wert des Mitglieds",
        "memberTransfer.placeholders.street" to "Straße",
        "memberTransfer.placeholders.streetDesc" to "Straße und Hausnummer",
        "memberTransfer.placeholders.ttr" to "TTR-Wert",
        "memberTransfer.placeholders.ttrDesc" to "TTR-Wert des Mitglieds",
        "memberTransfer.save" to "Speichern",
        "memberTransfer.saving" to "Speichere...",
        "memberTransfer.serverBaseUrl" to "Server-Basis-URL",
        "memberTransfer.serverBaseUrlHint" to "Basis-URL des Servers (z.B. https://example.com)",
        "memberTransfer.serverBaseUrlPlaceholder" to "https://example.com",
        "memberTransfer.serverConfiguration" to "Server-Konfiguration",
        "memberTransfer.templateDescription" to "Das Template definiert das Format, in dem die Mitgliederdaten an das externe System übertragen werden. Verwenden Sie Platzhalter wie PLACEHOLDER_FIRSTNAME, um die Daten automatisch zu ersetzen.",
        "memberTransfer.templateImported" to "Template erfolgreich importiert!",
        "memberTransfer.templateImportedBulk" to "Mitglied-Template erkannt, Bulk-Modus aktiviert.",
        "memberTransfer.templateImportedDetails" to "Mitglied- und Bulk-Wrapper-Template wurden erkannt und ausgefüllt.",
        "memberTransfer.templateImportedSingle" to "Einzelnes Mitglied-Template erkannt.",
        "memberTransfer.templateTip" to "Tipp: Setzen Sie den Cursor an die gewünschte Stelle im Template und klicken Sie auf einen Platzhalter, um ihn einzufügen. Platzhalter werden beim Übertragen automatisch durch die tatsächlichen Mitgliederdaten ersetzt.",
        "memberTransfer.templateWhat" to "Was ist ein Template?",
        "memberTransfer.title" to "Mitgliederübertragung",
        "memberTransfer.transferConfig" to "Übertragungskonfiguration",
        "memberTransfer.transferConfiguration" to "Übertragungskonfiguration",
        "memberTransfer.transferConfigurationTitle" to "Übertragungs-Konfiguration",
        "memberTransfer.transferEndpointHint" to "Relativer Pfad zum Übertragungs-Endpoint (z.B. /api/members/bulk)",
        "memberTransfer.transferEndpointPath" to "Übertragungs-Endpoint Pfad",
        "memberTransfer.transferEndpointPlaceholder" to "/api/members/bulk",
        "memberTransfer.transferFormat" to "Übertragungs-Format",
        "memberTransfer.transferTemplate" to "Übertragungs-Template",
        "memberTransfer.usernameEmail" to "Benutzername / Email",
        "memberTransferDialog.additionalErrors" to "Weitere Fehler",
        "memberTransferDialog.additionalFieldPlaceholder" to "Zusätzliches Feld (z.B. client_id)",
        "memberTransferDialog.additionalFieldPlaceholderForm" to "Feldname: Wert (z.B. client_id: abc123)",
        "memberTransferDialog.bulkImport" to "Bulk-Import",
        "memberTransferDialog.cancel" to "Abbrechen",
        "memberTransferDialog.editConfig" to "Konfiguration bearbeiten",
        "memberTransferDialog.endpoint" to "Endpoint",
        "memberTransferDialog.excludedMembers" to "Ausgeschlossene Mitglieder (fehlende Pflichtfelder)",
        "memberTransferDialog.format" to "Format",
        "memberTransferDialog.goToSettings" to "Zu den Einstellungen",
        "memberTransferDialog.loadingConfig" to "Gespeicherte Konfiguration wird geladen...",
        "memberTransferDialog.loginData" to "Login-Daten",
        "memberTransferDialog.loginDataHint" to "Die Login-Daten werden aus den Einstellungen verwendet. Sie können sie hier überschreiben, falls nötig.",
        "memberTransferDialog.loginDataOverride" to "Login-Daten (optional überschreiben)",
        "memberTransferDialog.loginDataOverrideHint" to "Nur ausfüllen, wenn Sie die gespeicherten Login-Daten überschreiben möchten. Leere Felder verwenden die gespeicherten Werte.",
        "memberTransferDialog.method" to "Methode",
        "memberTransferDialog.mode" to "Modus",
        "memberTransferDialog.noConfigFound" to "Keine Konfiguration gefunden",
        "memberTransferDialog.noConfigMessage" to "Bitte konfigurieren Sie zuerst die Mitgliederübertragung in den Einstellungen.",
        "memberTransferDialog.passwordPlaceholder" to "Passwort (leer lassen für gespeichertes)",
        "memberTransferDialog.server" to "Server",
        "memberTransferDialog.single" to "Einzeln",
        "memberTransferDialog.title" to "Mitglieder übertragen",
        "memberTransferDialog.transfer" to "Übertragen",
        "memberTransferDialog.transferConfiguration" to "Übertragungskonfiguration",
        "memberTransferDialog.transferError" to "Fehler bei der Übertragung",
        "memberTransferDialog.transferFailed" to "Übertragung fehlgeschlagen",
        "memberTransferDialog.transferring" to "Übertrage...",
        "memberTransferDialog.transferSuccess" to "{transferred} von {total} Mitgliedern erfolgreich übertragen.",
        "memberTransferDialog.usernameEmail" to "Benutzername / Email",
        "messages.cancel" to "Abbrechen",
        "messages.confirm" to "Bestätigen",
        "messages.error" to "Fehler",
        "messages.fileTooLarge" to "Datei zu groß",
        "messages.imageMaxSize" to "Das Bild darf maximal 5 MB groß sein.",
        "messages.info" to "Information",
        "messages.invalidFile" to "Ungültige Datei",
        "messages.note" to "Hinweis",
        "messages.pleaseSelectImageFile" to "Bitte wähle eine Bilddatei aus.",
        "messages.recordsDisplayed" to "angezeigt",
        "messages.recordsFound" to "Datensätze gefunden",
        "messages.success" to "Erfolg",
        "messages.successfullyLoaded" to "Erfolgreich geladen",
        "messages.warning" to "Warnung",
        "mobile.active" to "Aktiv",
        "mobile.add" to "Hinzufügen",
        "mobile.appLoading" to "App wird geladen",
        "mobile.calendarAgendaEmpty" to "Keine Termine in diesem Monat.",
        "mobile.calendarAgendaTitle" to "Termine im Monat",
        "mobile.calendarAllSourcesFailed" to "Kalenderdaten konnten nicht geladen werden.",
        "mobile.calendarCancellationEnd" to "Bis optional",
        "mobile.calendarCancellationHint" to "Blendet regelmäßige Trainingszeiten an den Tagen aus.",
        "mobile.calendarCancellationInMonth" to "Ausfälle diesen Monat",
        "mobile.calendarCancellationReason" to "Grund",
        "mobile.calendarCancellationSave" to "Eintragen",
        "mobile.calendarCancellationStart" to "Datum (YYYY-MM-DD)",
        "mobile.calendarCancellationTitle" to "Training fällt aus",
        "mobile.calendarGridTitle" to "Monat",
        "mobile.calendarLegend" to "Anzeige",
        "mobile.calendarLegendCancellation" to "Ausfall",
        "mobile.calendarLegendHoliday" to "Feiertag",
        "mobile.calendarLegendMatch" to "Punktspiel",
        "mobile.calendarLegendOfficial" to "Teilnahme",
        "mobile.calendarLegendSchool" to "Ferien",
        "mobile.calendarLegendTournament" to "Turnier",
        "mobile.calendarLegendTraining" to "Training",
        "mobile.calendarSourceCancellations" to "Trainingsausfälle",
        "mobile.calendarSourceDiary" to "Tagebuch",
        "mobile.calendarSourceFailed" to "nicht geladen",
        "mobile.calendarSourceHolidays" to "Ferien/Feiertage",
        "mobile.calendarSourceMatches" to "Punktspiele",
        "mobile.calendarSourceOfficial" to "Turnierteilnahmen",
        "mobile.calendarSourceTournaments" to "Turniere",
        "mobile.calendarSourceTrainingTimes" to "Trainingszeiten",
        "mobile.calendarSubtitle" to "Training, Turniere, Spiele und Feiertage im Monat.",
        "mobile.calendarTitle" to "Kalender",
        "mobile.calendarToday" to "Heute",
        "mobile.cancel" to "Abbrechen",
        "mobile.clubRequest" to "Zugriff anfragen",
        "mobile.clubRequested" to "Angefragt",
        "mobile.createDiaryEntry" to "Eintrag erstellen",
        "mobile.deleteNote" to "Notiz löschen",
        "mobile.deleteTag" to "Tag entfernen",
        "mobile.editTimes" to "Zeiten bearbeiten",
        "mobile.emailAndPasswordRequired" to "E-Mail und Passwort sind erforderlich",
        "mobile.entry" to "Eintrag",
        "mobile.inactive" to "Inaktiv",
        "mobile.language" to "Sprache",
        "mobile.lastTraining" to "Letztes Training",
        "mobile.loginFailed" to "Login fehlgeschlagen",
        "mobile.loginInProgress" to "Anmelden...",
        "mobile.more" to "Mehr",
        "mobile.new" to "Neu",
        "mobile.newNote" to "Neue Notiz",
        "mobile.newTag" to "Neuer Tag",
        "mobile.noDiaryEntries" to "Noch keine Tagebuch-Einträge",
        "mobile.noMembers" to "Keine Mitglieder gefunden",
        "mobile.noResults" to "Keine Treffer",
        "mobile.noTimes" to "Keine Zeiten",
        "mobile.offlineCacheHint" to "Keine Verbindung – zuletzt geladene Daten.",
        "mobile.participationTop" to "Top Teilnahmen",
        "mobile.refresh" to "Aktualisieren",
        "mobile.requestedAccess" to "Angefragt",
        "mobile.role" to "Rolle",
        "mobile.saveEntry" to "Speichern",
        "mobile.search" to "Suche",
        "mobile.select" to "Auswählen",
        "mobile.sessionCheck" to "Session prüfen",
        "mobile.sessionCheckFailed" to "Session check fehlgeschlagen",
        "mobile.sessionInvalid" to "Session ungültig",
        "mobile.sessionValid" to "Session gültig",
        "mobile.status" to "Status",
        "mobile.user" to "Benutzer",
        "myTischtennis.about" to "Über myTischtennis",
        "myTischtennis.aboutFeatures.fetch" to "Wettkampfdaten direkt abrufen",
        "myTischtennis.aboutFeatures.import" to "Automatisch Turnierdaten importieren",
        "myTischtennis.aboutFeatures.sync" to "Spielerergebnisse synchronisieren",
        "myTischtennis.aboutText" to "Durch die Verknüpfung Ihres myTischtennis-Accounts können Sie:",
        "myTischtennis.autoUpdates" to "Automatische Updates",
        "myTischtennis.club" to "Verein (myTischtennis)",
        "myTischtennis.deleteAccount" to "Account trennen",
        "myTischtennis.disabled" to "Deaktiviert",
        "myTischtennis.editAccount" to "Account bearbeiten",
        "myTischtennis.enabled" to "Aktiviert",
        "myTischtennis.fetchStatistics" to "Datenabruf-Statistiken",
        "myTischtennis.lastFetch" to "Letzter Abruf",
        "myTischtennis.lastLoginAttempt" to "Letzter Login-Versuch",
        "myTischtennis.lastSuccessfulLogin" to "Letzter erfolgreicher Login",
        "myTischtennis.leagueTables" to "Ligatabellen",
        "myTischtennis.linkAccount" to "Account verknüpfen",
        "myTischtennis.linkedAccount" to "Verknüpfter Account",
        "myTischtennis.loadingStats" to "Lade Statistiken...",
        "myTischtennis.matchResults" to "Spielergebnisse",
        "myTischtennis.neverFetched" to "Noch nie abgerufen",
        "myTischtennis.no" to "Nein",
        "myTischtennis.noAccount" to "Kein myTischtennis-Account verknüpft.",
        "myTischtennis.passwordNote" to "Hinweis: Das Speichern des Passworts ist optional. Wenn Sie es nicht speichern, werden Sie bei jeder Synchronisation nach dem Passwort gefragt.",
        "myTischtennis.passwordSaved" to "Passwort gespeichert",
        "myTischtennis.passwordsEncrypted" to "Passwörter werden verschlüsselt gespeichert",
        "myTischtennis.playerRatings" to "Spielerwertungen",
        "myTischtennis.refreshStats" to "Statistiken aktualisieren",
        "myTischtennis.testLogin" to "Erneut einloggen",
        "myTischtennis.title" to "myTischtennis-Account",
        "myTischtennis.updateHistory" to "Update-History",
        "myTischtennis.yes" to "Ja",
        "myTischtennisAccount.aboutDescription" to "Durch die Verknüpfung Ihres myTischtennis-Accounts können Sie:",
        "myTischtennisAccount.aboutFeature1" to "Automatisch Turnierdaten importieren",
        "myTischtennisAccount.aboutFeature2" to "Spielerergebnisse synchronisieren",
        "myTischtennisAccount.aboutFeature3" to "Wettkampfdaten direkt abrufen",
        "myTischtennisAccount.aboutHint" to "Das Speichern des Passworts ist optional. Wenn Sie es nicht speichern, werden Sie bei jeder Synchronisation nach dem Passwort gefragt.",
        "myTischtennisAccount.aboutMyTischtennis" to "Über myTischtennis",
        "myTischtennisAccount.accountSaved" to "myTischtennis-Account erfolgreich gespeichert",
        "myTischtennisAccount.accountUnlinked" to "myTischtennis-Account erfolgreich getrennt",
        "myTischtennisAccount.autoUpdates" to "Automatische Updates:",
        "myTischtennisAccount.club" to "Verein (myTischtennis):",
        "myTischtennisAccount.daysAgo" to "vor {count} Tagen",
        "myTischtennisAccount.disabled" to "Deaktiviert",
        "myTischtennisAccount.editAccount" to "Account bearbeiten",
        "myTischtennisAccount.email" to "E-Mail:",
        "myTischtennisAccount.enabled" to "Aktiviert",
        "myTischtennisAccount.errorLoadingAccount" to "Fehler beim Laden des myTischtennis-Accounts",
        "myTischtennisAccount.errorLoadingStatistics" to "Fehler beim Laden der Fetch-Statistiken",
        "myTischtennisAccount.errorUnlinking" to "Fehler beim Trennen des Accounts",
        "myTischtennisAccount.fetchStatistics" to "Datenabruf-Statistiken",
        "myTischtennisAccount.hoursAgo" to "vor {count} Std.",
        "myTischtennisAccount.justNow" to "Gerade eben",
        "myTischtennisAccount.lastFetch" to "Letzter Abruf:",
        "myTischtennisAccount.lastLoginAttempt" to "Letzter Login-Versuch:",
        "myTischtennisAccount.lastSuccessfulLogin" to "Letzter erfolgreicher Login:",
        "myTischtennisAccount.leagueTables" to "Ligatabellen",
        "myTischtennisAccount.linkAccount" to "Account verknüpfen",
        "myTischtennisAccount.linkedAccount" to "Verknüpfter Account",
        "myTischtennisAccount.loading" to "Lade...",
        "myTischtennisAccount.loadingStatistics" to "Lade Statistiken...",
        "myTischtennisAccount.loginAgain" to "Erneut einloggen",
        "myTischtennisAccount.loginFailed" to "Login fehlgeschlagen",
        "myTischtennisAccount.loginSuccessful" to "Login erfolgreich! Verbindungsdaten aktualisiert.",
        "myTischtennisAccount.matchResults" to "Spielergebnisse",
        "myTischtennisAccount.minutesAgo" to "vor {count} Min.",
        "myTischtennisAccount.never" to "Nie",
        "myTischtennisAccount.neverFetched" to "Noch nie abgerufen",
        "myTischtennisAccount.no" to "Nein",
        "myTischtennisAccount.noAccountLinked" to "Kein myTischtennis-Account verknüpft.",
        "myTischtennisAccount.passwordRequired" to "Passwort benötigt",
        "myTischtennisAccount.passwordSaved" to "Passwort gespeichert:",
        "myTischtennisAccount.playerRatings" to "Spielerwertungen",
        "myTischtennisAccount.playersUpdated" to "Spieler aktualisiert",
        "myTischtennisAccount.refreshStatistics" to "Statistiken aktualisieren",
        "myTischtennisAccount.results" to "Ergebnisse",
        "myTischtennisAccount.teams" to "Teams",
        "myTischtennisAccount.title" to "myTischtennis-Account",
        "myTischtennisAccount.unlinkAccount" to "Account trennen",
        "myTischtennisAccount.unlinkAccountConfirm" to "Möchten Sie die Verknüpfung zum myTischtennis-Account wirklich trennen?",
        "myTischtennisAccount.unlinkAccountTitle" to "Account trennen",
        "myTischtennisAccount.updateHistory" to "Update-History",
        "myTischtennisAccount.yes" to "Ja",
        "myTischtennisAccount.yesterday" to "Gestern",
        "myTischtennisDialog.appPassword" to "Ihr App-Passwort zur Bestätigung",
        "myTischtennisDialog.appPasswordHint" to "Aus Sicherheitsgründen benötigen wir Ihr App-Passwort, um das myTischtennis-Passwort zu speichern.",
        "myTischtennisDialog.appPasswordPlaceholder" to "Ihr Passwort für diese App",
        "myTischtennisDialog.autoUpdateRatings" to "Automatische Update-Ratings aktivieren",
        "myTischtennisDialog.autoUpdateRatingsHint" to "Täglich um 6:00 Uhr werden automatisch die neuesten Ratings von myTischtennis abgerufen. Erfordert gespeichertes Passwort.",
        "myTischtennisDialog.autoUpdateWarning" to "Für automatische Updates muss das myTischtennis-Passwort gespeichert werden.",
        "myTischtennisDialog.cancel" to "Abbrechen",
        "myTischtennisDialog.editAccount" to "myTischtennis-Account bearbeiten",
        "myTischtennisDialog.email" to "myTischtennis-E-Mail",
        "myTischtennisDialog.emailPlaceholder" to "Ihre myTischtennis-E-Mail-Adresse",
        "myTischtennisDialog.errorLogin" to "Fehler beim Einloggen",
        "myTischtennisDialog.errorSaving" to "Fehler beim Speichern des Accounts",
        "myTischtennisDialog.linkAccount" to "myTischtennis-Account verknüpfen",
        "myTischtennisDialog.loadingLoginForm" to "Lade Login-Formular...",
        "myTischtennisDialog.loggingIn" to "Logge ein...",
        "myTischtennisDialog.login" to "Einloggen",
        "myTischtennisDialog.password" to "myTischtennis-Passwort",
        "myTischtennisDialog.passwordPlaceholder" to "Ihr myTischtennis-Passwort",
        "myTischtennisDialog.passwordPlaceholderKeep" to "Leer lassen um beizubehalten",
        "myTischtennisDialog.save" to "Speichern",
        "myTischtennisDialog.savePassword" to "myTischtennis-Passwort speichern",
        "myTischtennisDialog.savePasswordHint" to "Wenn aktiviert, wird Ihr myTischtennis-Passwort verschlüsselt gespeichert, sodass automatische Synchronisationen möglich sind.",
        "myTischtennisDialog.saving" to "Speichere...",
        "myTischtennisHistory.close" to "Schließen",
        "myTischtennisHistory.failed" to "Fehlgeschlagen",
        "myTischtennisHistory.loading" to "Lade History...",
        "myTischtennisHistory.noHistory" to "Noch keine automatischen Updates durchgeführt.",
        "myTischtennisHistory.ratingsUpdated" to "Ratings aktualisiert",
        "myTischtennisHistory.successful" to "Erfolgreich",
        "myTischtennisHistory.title" to "Update-Ratings History",
        "navigation.approvals" to "Freigaben",
        "navigation.backToHome" to "Zur Startseite",
        "navigation.billing" to "Abrechnung",
        "navigation.clickTtAccount" to "HTTV / click-TT Account",
        "navigation.clickTtBrowser" to "HTTV / click-TT",
        "navigation.clubSettings" to "Vereinseinstellungen",
        "navigation.clubTournaments" to "Vereinsturniere",
        "navigation.competitions" to "Wettbewerbe",
        "navigation.dailyBusiness" to "Tagesgeschäft",
        "navigation.diary" to "Tagebuch",
        "navigation.home" to "Startseite",
        "navigation.login" to "Einloggen",
        "navigation.logout" to "Ausloggen",
        "navigation.logs" to "System-Logs",
        "navigation.members" to "Mitglieder",
        "navigation.memberTransfer" to "Mitgliederübertragung",
        "navigation.myTischtennisAccount" to "myTischtennis-Account",
        "navigation.orders" to "Bestellungen",
        "navigation.permissions" to "Berechtigungen",
        "navigation.personalSettings" to "Persönliche Einstellungen",
        "navigation.predefinedActivities" to "Vordefinierte Aktivitäten",
        "navigation.register" to "Registrieren",
        "navigation.schedule" to "Spielpläne",
        "navigation.settings" to "Einstellungen",
        "navigation.statistics" to "Trainings-Statistik",
        "navigation.teamManagement" to "Team-Verwaltung",
        "navigation.tournamentParticipations" to "Offizielle Turniere & Teilnahmen",
        "navigation.tournaments" to "Turniere",
        "nuscoreAnalyzer.analysisComplete" to "✅ Analyse abgeschlossen: {count} Ressourcen gefunden",
        "nuscoreAnalyzer.analyze" to "🔍 nuscore analysieren",
        "nuscoreAnalyzer.analyzing" to "🔄 Analysiere...",
        "nuscoreAnalyzer.createLocalCopy" to "🏗️ Lokale Kopie erstellen",
        "nuscoreAnalyzer.creating" to "🏗️ Erstelle...",
        "nuscoreAnalyzer.description" to "Analysiert und lädt nuscore-Ressourcen für lokale Nutzung herunter",
        "nuscoreAnalyzer.downloading" to "⬇️ Lade herunter...",
        "nuscoreAnalyzer.downloadResources" to "Ressourcen herunterladen",
        "nuscoreAnalyzer.foundResources" to "📋 Gefundene Ressourcen:",
        "nuscoreAnalyzer.log" to "📝 Log:",
        "nuscoreAnalyzer.pageLoaded" to "✅ nuscore-Seite geladen",
        "nuscoreAnalyzer.startAnalysis" to "🔍 Starte nuscore-Analyse...",
        "nuscoreAnalyzer.title" to "🔍 nuscore Analyzer",
        "officialTournaments.action" to "Aktion",
        "officialTournaments.age" to "Alter",
        "officialTournaments.ageClassCompetition" to "Altersklasse/Wettbewerb",
        "officialTournaments.ageClasses" to "Altersklassen:",
        "officialTournaments.all" to "Alle",
        "officialTournaments.birthDate" to "Geburtsdatum",
        "officialTournaments.checkBoxToActivate" to "Checkbox aktivieren",
        "officialTournaments.competition" to "Konkurrenz",
        "officialTournaments.competitions" to "Konkurrenzen",
        "officialTournaments.competitionTypes" to "Konkurrenztypen:",
        "officialTournaments.cutoffDate" to "Stichtag:",
        "officialTournaments.date" to "Datum",
        "officialTournaments.dateTime" to "Termin:",
        "officialTournaments.deadlineDate" to "Meldeschluss (Datum):",
        "officialTournaments.deadlineOnline" to "Meldeschluss (Online):",
        "officialTournaments.deadlines" to "Meldeschlüsse:",
        "officialTournaments.deadlinesByAgeClass" to "Meldeschlüsse je AK:",
        "officialTournaments.delete" to "Löschen",
        "officialTournaments.editTitle" to "Titel bearbeiten",
        "officialTournaments.eligible" to "Teilnahmeberechtigt",
        "officialTournaments.entryFee" to "Startgeld",
        "officialTournaments.entryFees" to "Teilnahmegebühren:",
        "officialTournaments.events" to "Veranstaltungen",
        "officialTournaments.finalRound" to "Endrunde:",
        "officialTournaments.hasPlayed" to "Hat gespielt",
        "officialTournaments.last12Months" to "Letzte 12 Monate",
        "officialTournaments.last2Years" to "Letzte 2 Jahre",
        "officialTournaments.last3Months" to "Letzte 3 Monate",
        "officialTournaments.last6Months" to "Letzte 6 Monate",
        "officialTournaments.markAsParticipated" to "Als teilgenommen markieren",
        "officialTournaments.markAsRegistered" to "Als angemeldet markieren",
        "officialTournaments.member" to "Mitglied",
        "officialTournaments.name" to "Name",
        "officialTournaments.noEvents" to "Noch keine Veranstaltungen vorhanden. Laden Sie ein PDF hoch, um zu beginnen.",
        "officialTournaments.notInterested" to "Nicht interessiert",
        "officialTournaments.openTo" to "Offen für:",
        "officialTournaments.participants" to "Teilnehmer",
        "officialTournaments.participantsPdf" to "Teilnehmer-PDF",
        "officialTournaments.participated" to "Teilgenommen",
        "officialTournaments.participations" to "Turnierbeteiligungen",
        "officialTournaments.pdfForSelectedMembers" to "PDF für markierte Mitglieder",
        "officialTournaments.placement" to "Platzierung",
        "officialTournaments.preliminaryRound" to "Vorrunde:",
        "officialTournaments.previousSeason" to "Vorherige Saison",
        "officialTournaments.registered" to "Angemeldet",
        "officialTournaments.resetStatus" to "Status zurücksetzen",
        "officialTournaments.results" to "Ergebnisse",
        "officialTournaments.savedEvents" to "Gespeicherte Veranstaltungen",
        "officialTournaments.selectMembers" to "Mitglieder auswählen",
        "officialTournaments.showCompetitions" to "Konkurrenzen anzeigen",
        "officialTournaments.showEvents" to "Gespeicherte Veranstaltungen anzeigen",
        "officialTournaments.showParticipants" to "Teilnehmer anzeigen",
        "officialTournaments.showParticipations" to "Turnierbeteiligungen anzeigen",
        "officialTournaments.showResults" to "Ergebnisse anzeigen",
        "officialTournaments.startTime" to "Startzeit",
        "officialTournaments.startTimes" to "Startzeiten:",
        "officialTournaments.status" to "Status",
        "officialTournaments.timeRange" to "Zeitraum:",
        "officialTournaments.title" to "Titel:",
        "officialTournaments.tournament" to "Turnier",
        "officialTournaments.updatePlacementError" to "Fehler beim Aktualisieren der Platzierung",
        "officialTournaments.updateStatusError" to "Fehler beim Aktualisieren des Status",
        "officialTournaments.updateTitleError" to "Titel konnte nicht gespeichert werden.",
        "officialTournaments.uploadError" to "Fehler beim Hochladen der PDF.",
        "officialTournaments.uploadPdf" to "PDF hochladen",
        "officialTournaments.venues" to "Austragungsorte:",
        "officialTournaments.wantsToParticipate" to "Möchte teilnehmen",
        "orders.addOrder" to "Bestellung anlegen",
        "orders.budget" to "Budget",
        "orders.club" to "Verein",
        "orders.cost" to "Kosten",
        "orders.dateAutoHint" to "Datum wird automatisch gesetzt und jede Änderung mit Datum protokolliert.",
        "orders.errorLoading" to "Bestellungen konnten nicht geladen werden.",
        "orders.errorSaving" to "Bestellung konnte nicht gespeichert werden.",
        "orders.filterAllClubs" to "Alle Vereine",
        "orders.filterAllCompletionStates" to "Alle Abschlüsse",
        "orders.filterAllStatuses" to "Alle Status",
        "orders.filterHandedOver" to "Artikel ausgehändigt",
        "orders.filterPaid" to "Hat bezahlt",
        "orders.globalSubtitle" to "Hier werden alle Bestellungen vereinsübergreifend angezeigt und verwaltet.",
        "orders.globalTitle" to "Bestellungen aller Vereine",
        "orders.history" to "Verlauf",
        "orders.item" to "Was",
        "orders.itemPlaceholder" to "z. B. Trikot, Hoodie oder Schlägerhülle",
        "orders.loading" to "Lade Bestellungen...",
        "orders.member" to "Mitglied",
        "orders.memberTitle" to "Bestellungen: {name}",
        "orders.noOrdersGlobal" to "Es gibt aktuell keine Bestellungen.",
        "orders.noOrdersMember" to "Für dieses Mitglied gibt es noch keine Bestellungen.",
        "orders.open" to "Noch offen",
        "orders.orderDate" to "Erfasst am",
        "orders.paid" to "Bezahlt",
        "orders.paidConfirmed" to "Hat bezahlt",
        "orders.searchPlaceholder" to "Nach Verein, Mitglied oder Artikel suchen",
        "orders.showCompleted" to "Abgeschlossene einblenden",
        "orders.status" to "Status",
        "orders.statusArrived" to "Artikel angekommen",
        "orders.statusDate" to "Letzte Änderung",
        "orders.statusHandedOver" to "Artikel ausgehändigt",
        "orders.statusOrdered" to "bestellt",
        "orders.statusRequested" to "gewünscht",
        "orders.title" to "Bestellungen",
        "pdfGenerator.activityTimeBlock" to "Aktivität / Zeitblock",
        "pdfGenerator.allGames" to "Alle Spiele",
        "pdfGenerator.alsoPlayable" to "Ebenfalls spielbar",
        "pdfGenerator.birthDate" to "Geburtsdatum",
        "pdfGenerator.clubLabel" to "Verein:",
        "pdfGenerator.competition" to "Wettbewerb",
        "pdfGenerator.competitionName" to "Konkurrenz",
        "pdfGenerator.date" to "Datum:",
        "pdfGenerator.diff" to "Diff",
        "pdfGenerator.duration" to "Dauer (Min)",
        "pdfGenerator.fee" to "Gebühr",
        "pdfGenerator.generatedAt" to "Erstellt:",
        "pdfGenerator.group" to "Gruppe",
        "pdfGenerator.groupLabel" to "Gruppe",
        "pdfGenerator.groupMatrices" to "Gruppen-Matrizen",
        "pdfGenerator.hallShoes" to "Hallenschuhe (dürfen auf Boden nicht abfärben)",
        "pdfGenerator.hints" to "Hinweise:",
        "pdfGenerator.informTrainer" to "Da der Verein die Meldung übernehmen möchte, die Trainer mind. eine Woche vor dem Turnier über die Teilnahme informieren",
        "pdfGenerator.leagueLabel" to "Spielklasse:",
        "pdfGenerator.lineupQttr" to "(Q)TTR",
        "pdfGenerator.member" to "Mitglied:",
        "pdfGenerator.nameFirstName" to "Name, Vorname",
        "pdfGenerator.noActivities" to "Keine Aktivitäten für diesen Trainingstag erfasst.",
        "pdfGenerator.noWhiteJersey" to "Kein weißes Trikot",
        "pdfGenerator.officialTournament" to "Offizielles Turnier",
        "pdfGenerator.oneHourBefore" to "Eine Stunde vor Beginn der Konkurrenz in der Halle sein",
        "pdfGenerator.overallRanking" to "Gesamt-Ranking (K.O.-Runden)",
        "pdfGenerator.periodLabel" to "Meldung für:",
        "pdfGenerator.phoneList" to "Telefonliste - Aktive Mitglieder",
        "pdfGenerator.phoneNumber" to "Telefon-Nr.",
        "pdfGenerator.place" to "Platz",
        "pdfGenerator.placement" to "Platzierung",
        "pdfGenerator.plannedLeagueLabel" to "Geplante Spielklasse:",
        "pdfGenerator.player" to "Spieler",
        "pdfGenerator.player1" to "Spieler 1",
        "pdfGenerator.player2" to "Spieler 2",
        "pdfGenerator.points" to "Punkte",
        "pdfGenerator.recommendations" to "Empfehlungen",
        "pdfGenerator.result" to "Ergebnis",
        "pdfGenerator.round" to "Runde",
        "pdfGenerator.seasonLabel" to "Saison:",
        "pdfGenerator.sets" to "Sätze",
        "pdfGenerator.sportShorts" to "Sportshorts (oder Sportröckchen), am besten auch nicht weiß",
        "pdfGenerator.startTime" to "Startzeit",
        "pdfGenerator.status" to "Status",
        "pdfGenerator.teamAgeGroupLabel" to "Team Altersklasse:",
        "pdfGenerator.teamGenderLabel" to "Team Geschlecht:",
        "pdfGenerator.teamLineupTitle" to "Mannschaftsaufstellung",
        "pdfGenerator.teamNameLabel" to "Mannschaft:",
        "pdfGenerator.time" to "Uhrzeit:",
        "pdfGenerator.timeBlock" to "Zeitblock",
        "pdfGenerator.tournament" to "Turnier",
        "pdfGenerator.trainersPresent" to "Die Trainer probieren bei allen Turnieren anwesend zu sein.",
        "pdfGenerator.trainingPlan" to "Trainingsplan",
        "pdfGenerator.venue" to "Austragungsort",
        "pdfGenerator.venues" to "Austragungsorte",
        "pdfGenerator.waterBottle" to "Eine Flasche Wasser dabei haben",
        "pendingApprovals.actions" to "Aktionen",
        "pendingApprovals.approve" to "Genehmigen",
        "pendingApprovals.email" to "Email",
        "pendingApprovals.errorApproving" to "Fehler beim Genehmigen des Benutzers",
        "pendingApprovals.errorLoadingRequests" to "Fehler beim Laden der ausstehenden Anfragen",
        "pendingApprovals.errorRejecting" to "Fehler beim Ablehnen des Benutzers",
        "pendingApprovals.firstName" to "Vorname",
        "pendingApprovals.lastName" to "Nachname",
        "pendingApprovals.noPendingRequests" to "Keine ausstehenden Benutzeranfragen.",
        "pendingApprovals.noPermission" to "Keine Berechtigung",
        "pendingApprovals.noPermissionDetails" to "Nur Administratoren können Mitgliedsanfragen bearbeiten.",
        "pendingApprovals.noPermissionMessage" to "Sie haben keine Berechtigung, Freigaben zu verwalten.",
        "pendingApprovals.reject" to "Ablehnen",
        "pendingApprovals.title" to "Ausstehende Benutzeranfragen",
        "permissions.actions" to "Aktionen",
        "permissions.active" to "Aktiv",
        "permissions.availableRoles" to "Verfügbare Rollen",
        "permissions.baseRole" to "Basis-Rolle",
        "permissions.cancel" to "Abbrechen",
        "permissions.clickToActivate" to "Klicken zum Aktivieren",
        "permissions.clickToDeactivate" to "Klicken zum Deaktivieren",
        "permissions.close" to "Abbrechen",
        "permissions.clubMembers" to "Clubmitglieder",
        "permissions.creator" to "Ersteller",
        "permissions.customize" to "Anpassen",
        "permissions.customizeInfo" to "Hier können Sie individuelle Anpassungen vornehmen.",
        "permissions.email" to "Email",
        "permissions.errorLoadingData" to "Fehler beim Laden der Daten",
        "permissions.errorSavingPermissions" to "Fehler beim Speichern der Berechtigungen",
        "permissions.errorUpdatingRole" to "Fehler beim Aktualisieren der Rolle",
        "permissions.inactive" to "Deaktiviert",
        "permissions.loadingMembers" to "Lade Mitglieder...",
        "permissions.permissionsFor" to "Berechtigungen für",
        "permissions.reset" to "Zurücksetzen",
        "permissions.resetAll" to "Alle zurücksetzen",
        "permissions.resetResource" to "Zurücksetzen",
        "permissions.role" to "Rolle",
        "permissions.save" to "Speichern",
        "permissions.status" to "Status",
        "permissions.subtitle" to "Verwalten Sie die Zugriffsrechte für Clubmitglieder",
        "permissions.title" to "Berechtigungsverwaltung",
        "predefinedActivities.addImage" to "Bild hinzufügen",
        "predefinedActivities.cancel" to "Abbrechen",
        "predefinedActivities.code" to "Kürzel",
        "predefinedActivities.createDrawing" to "Übungszeichnung erstellen",
        "predefinedActivities.deduplicate" to "Doppelungen zusammenführen",
        "predefinedActivities.delete" to "Löschen",
        "predefinedActivities.description" to "Beschreibung",
        "predefinedActivities.duration" to "Dauer (Minuten)",
        "predefinedActivities.durationText" to "Dauer (Text)",
        "predefinedActivities.durationTextPlaceholder" to "z.B. 2x7",
        "predefinedActivities.editActivity" to "Aktivität bearbeiten",
        "predefinedActivities.editDrawing" to "Übungszeichnung bearbeiten",
        "predefinedActivities.excludeFromStats" to "Nicht in Statistik berücksichtigen",
        "predefinedActivities.filterAll" to "Alle",
        "predefinedActivities.filterCustom" to "Selbstdefiniert",
        "predefinedActivities.filterStandard" to "Standard-Aktivitäten",
        "predefinedActivities.imageHelp" to "Du kannst entweder einen Link zu einem Bild eingeben oder ein Bild hochladen:",
        "predefinedActivities.imageLink" to "Bild-Link (optional)",
        "predefinedActivities.imageLinkPlaceholder" to "z.B. https://example.com/bild.jpg oder /api/predefined-activities/:id/image/:imageId",
        "predefinedActivities.merge" to "Zusammenführen",
        "predefinedActivities.min" to "min",
        "predefinedActivities.name" to "Name",
        "predefinedActivities.new" to "Neu",
        "predefinedActivities.newActivity" to "Neue Aktivität",
        "predefinedActivities.orUploadImage" to "Oder Bild hochladen:",
        "predefinedActivities.reload" to "Neu laden",
        "predefinedActivities.searchPlaceholder" to "Kürzel suchen (z.B. 'as vh us' oder 'vh as us')...",
        "predefinedActivities.selectSource" to "Quelle wählen…",
        "predefinedActivities.selectTarget" to "Ziel wählen…",
        "predefinedActivities.title" to "Vordefinierte Aktivitäten",
        "predefinedActivities.upload" to "Hochladen",
        "predefinedActivities.uploadAfterSave" to "Nach Speichern hochladen",
        "predefinedActivities.uploadedImages" to "Hochgeladene Bilder:",
        "predefinedActivities.uploadNote" to "Hinweis: Das Bild wird erst nach dem Speichern der Aktivität hochgeladen.",
        "privacy.clubData" to "Vereins-/Aktivitätsdaten",
        "privacy.consent" to "Einwilligungsbasierte Vorgänge",
        "privacy.cookies" to "Cookies/Local Storage",
        "privacy.dataCategories" to "Kategorien personenbezogener Daten",
        "privacy.logData" to "Logdaten",
        "privacy.memberData" to "Mitgliederdaten",
        "privacy.myTischtennisData" to "MyTischtennis-Daten",
        "privacy.purposes" to "Zwecke und Rechtsgrundlagen der Verarbeitung",
        "privacy.recipients" to "Empfänger",
        "privacy.registrationData" to "Registrierungs-/Profildaten",
        "privacy.responsible" to "Verantwortlicher",
        "privacy.title" to "Datenschutzerklärung",
        "privacy.tournamentData" to "Turnierdaten",
        "privacy.trainingData" to "Trainingsdaten",
        "privacy.usage" to "Nutzung des TrainingsTagebuchs",
        "privacy.usageData" to "Nutzungsdaten",
        "privacy.website" to "Bereitstellung der Website",
        "quickAddMember.birthDate" to "Geburtsdatum (optional)",
        "quickAddMember.cancel" to "Abbrechen",
        "quickAddMember.createAndAdd" to "Erstellen & Hinzufügen",
        "quickAddMember.firstName" to "Vorname",
        "quickAddMember.gender" to "Geschlecht",
        "quickAddMember.lastName" to "Nachname (optional)",
        "quickAddMember.pleaseSelect" to "Bitte wählen",
        "quickAddMember.title" to "Neues Mitglied hinzufügen",
        "schedule.activeSelection" to "Aktive Auswahl",
        "schedule.addressLabel" to "Adresse",
        "schedule.adultSchedule" to "Spielplan Erwachsene",
        "schedule.ageClass" to "Altersklasse",
        "schedule.allLeagueMatches" to "Alle Spiele",
        "schedule.balls" to "Bälle",
        "schedule.cancel" to "Abbrechen",
        "schedule.cityLabel" to "PLZ / Ort",
        "schedule.code" to "Code",
        "schedule.completedShort" to "Abgeschlossen",
        "schedule.copyCode" to "Code kopieren",
        "schedule.copyGuestPin" to "Gast-PIN kopieren",
        "schedule.copyHomePin" to "Heim-PIN kopieren",
        "schedule.date" to "Datum",
        "schedule.downloadPDF" to "Download PDF",
        "schedule.errorCopying" to "Fehler beim Kopieren",
        "schedule.errorImportingCSV" to "Fehler beim Importieren der CSV-Datei",
        "schedule.errorLoadingAdultSchedule" to "Fehler beim Laden des Erwachsenenspielplans",
        "schedule.errorLoadingGallery" to "Galerie konnte nicht geladen werden.",
        "schedule.errorLoadingMatches" to "Fehler beim Laden der Matches",
        "schedule.errorLoadingMembers" to "Laden der Mitgliederliste fehlgeschlagen.",
        "schedule.errorLoadingOverallSchedule" to "Fehler beim Laden des Gesamtspielplans",
        "schedule.errorLoadingTable" to "Fehler beim Laden der Tabellendaten von MyTischtennis",
        "schedule.errorLoadingTeams" to "Fehler beim Laden der Teams",
        "schedule.errorSavingPlayerSelection" to "Fehler beim Speichern der Spielerauswahl",
        "schedule.fetchDataFailed" to "Teamdaten konnten nicht abgerufen werden.",
        "schedule.fetchingTeamData" to "Abruf läuft…",
        "schedule.fetchStartFailed" to "Abruf konnte nicht gestartet werden.",
        "schedule.fetchTeamData" to "Spielplan & Ergebnisse abrufen",
        "schedule.fetchTimedOut" to "Zeitüberschreitung beim Abruf.",
        "schedule.gallery" to "Mitglieder-Galerie",
        "schedule.galleryLoading" to "Galerie wird geladen…",
        "schedule.galleryTitle" to "Mitglieder-Galerie - Klicken Sie auf ein Bild, um als 'Bereit' zu markieren",
        "schedule.gamesFor" to "Spiele für",
        "schedule.guestPin" to "Gast-PIN",
        "schedule.guestTeam" to "Gastmannschaft",
        "schedule.homePin" to "Heim-PIN",
        "schedule.homeTeam" to "Heimmannschaft",
        "schedule.imageSize" to "Bildgröße",
        "schedule.importSchedule" to "Spielplanimport",
        "schedule.leagueTable" to "Ligatabelle",
        "schedule.loadingMembers" to "Lade Mitglieder...",
        "schedule.locationDialogTitle" to "Spiellokal",
        "schedule.locationInfo" to "Ort",
        "schedule.locationName" to "Spiellokal",
        "schedule.matches" to "Matches",
        "schedule.matchLabel" to "Spiel",
        "schedule.matchOverviewDescription" to "Steuert, welche Spiele aus der aktuell gewählten Liga im Spielplan angezeigt werden.",
        "schedule.matchOverviewTitle" to "Spielübersicht",
        "schedule.nextMatch" to "Nächstes Spiel",
        "schedule.noActiveMembers" to "Keine aktiven Mitglieder gefunden",
        "schedule.noGames" to "Keine Spiele vorhanden",
        "schedule.noLeagueForTeam" to "Für dieses Team ist keine Liga hinterlegt. Bitte zuerst eine Liga zuordnen.",
        "schedule.noMatchesForPDF" to "Keine Matches gefunden, um PDF zu generieren.",
        "schedule.noMatchingTeams" to "Keine Teams passen zur aktuellen Suche.",
        "schedule.noMembersWithImages" to "Keine Mitglieder mit Bildern gefunden.",
        "schedule.noSelectionMessage" to "Wählen Sie links einen Gesamtspielplan, den Erwachsenenspielplan oder ein Team aus.",
        "schedule.noSelectionTitle" to "Noch keine Auswahl aktiv",
        "schedule.noTableData" to "Keine Tabellendaten verfügbar",
        "schedule.noTeamsFound" to "Keine Teams für diese Saison gefunden",
        "schedule.openMatchReport" to "Spielberichtsbogen öffnen",
        "schedule.otherTeamMatches" to "Andere Mannschaft",
        "schedule.overallSchedule" to "Gesamtspielplan",
        "schedule.ownTeamMatches" to "Eigene Mannschaft",
        "schedule.pendingShort" to "Offen",
        "schedule.planned" to "Vorgesehen",
        "schedule.played" to "Gespielt",
        "schedule.player" to "Spieler",
        "schedule.playerSelection" to "Spielerauswahl",
        "schedule.playerSelectionSaved" to "Spielerauswahl gespeichert",
        "schedule.pleaseSelectGame" to "Bitte wählen Sie zuerst ein Spiel aus",
        "schedule.points" to "Pkt.",
        "schedule.position" to "Platz",
        "schedule.ready" to "Bereit",
        "schedule.refreshTable" to "Tabelle aktualisieren",
        "schedule.result" to "Ergebnis",
        "schedule.save" to "Speichern",
        "schedule.scheduleImportSuccess" to "Spielplan erfolgreich importiert!",
        "schedule.schedulePDF" to "Spielpläne.pdf",
        "schedule.scheduleTab" to "Spielplan",
        "schedule.searchTeams" to "Team oder Liga suchen",
        "schedule.selection" to "Auswahl",
        "schedule.selectOtherTeam" to "Andere Mannschaft wählen",
        "schedule.selectSpecificLeague" to "Bitte wählen Sie eine spezifische Liga aus, um die Tabelle zu laden.",
        "schedule.sets" to "Sätze",
        "schedule.showLocation" to "Spiellokal anzeigen",
        "schedule.subtitle" to "Teams auswählen, Spieltage prüfen und Ligatabellen im Blick behalten.",
        "schedule.tableDataLoaded" to "Tabellendaten erfolgreich von MyTischtennis geladen!",
        "schedule.tableLoading" to "Tabelle wird geladen…",
        "schedule.tableTab" to "Tabelle",
        "schedule.team" to "Team",
        "schedule.teamDataFetched" to "Teamdaten erfolgreich aktualisiert.",
        "schedule.teamDataFetchedDetails" to "Mannschaft: {team}\nVerarbeitete Datensätze: {count}",
        "schedule.teams" to "Teams",
        "schedule.time" to "Uhrzeit",
        "schedule.title" to "Spielpläne",
        "schedule.vs" to "vs",
        "schedule.workspaceScheduleDescription" to "{matches} Spiele, davon {completed} abgeschlossen und {pending} offen.",
        "schedule.workspaceTableDescription" to "{count} Tabellenzeilen aktuell geladen.",
        "seasonSelector.addSeason" to "Neue Saison hinzufügen",
        "seasonSelector.alreadyExists" to "Diese Saison existiert bereits!",
        "seasonSelector.cancel" to "Abbrechen",
        "seasonSelector.create" to "Erstellen",
        "seasonSelector.errorCreating" to "Fehler beim Erstellen der Saison",
        "seasonSelector.errorLoading" to "Fehler beim Laden der Saisons",
        "seasonSelector.hint" to "Hinweis",
        "seasonSelector.label" to "Saison:",
        "seasonSelector.loading" to "Lade...",
        "seasonSelector.newSeason" to "Neue Saison:",
        "seasonSelector.placeholder" to "z.B. 2023/2024",
        "seasonSelector.selectSeason" to "Saison wählen...",
        "settings.language" to "Sprache",
        "settings.languageChanged" to "Sprache erfolgreich geändert",
        "settings.languageDescription" to "Wähle deine bevorzugte Sprache für die Anwendung",
        "settings.personalSettings" to "Persönliche Einstellungen",
        "settings.selectLanguage" to "Sprache auswählen",
        "settings.title" to "Einstellungen",
        "tagHistory.noHistory" to "Keine Tag-Historie vorhanden",
        "tagHistory.selectTags" to "Tags auswählen",
        "tagHistory.title" to "Tag-Historie",
        "teamManagement.activeTeam" to "Aktives Team",
        "teamManagement.addPlanningTeam" to "Planungs-Team hinzufügen",
        "teamManagement.allMembersAssigned" to "Alle Mitglieder sind aktuell zugeordnet.",
        "teamManagement.assignLeagueBeforeDocuments" to "Bitte ordnen Sie dem Team zuerst eine Liga zu, damit Dokumente verarbeitet werden können.",
        "teamManagement.assignLeagueBeforeParsing" to "Bitte ordnen Sie dem Team zuerst eine Liga zu, um PDF-Dateien zu parsen.",
        "teamManagement.assignMemberToTeam" to "Zu Team hinzufügen",
        "teamManagement.association" to "Verband",
        "teamManagement.asyncJobStartFailed" to "Async-Job konnte nicht gestartet werden.",
        "teamManagement.autoFetchEnabled" to "Automatischer Datenabruf ist aktiviert",
        "teamManagement.automaticJobs" to "Automatische Jobs",
        "teamManagement.autoSaved" to "Automatisch gespeichert",
        "teamManagement.autoSaveError" to "Automatisches Speichern fehlgeschlagen",
        "teamManagement.availableLineupMembers" to "Verfügbare Spieler",
        "teamManagement.basicSettings" to "Grundeinstellungen",
        "teamManagement.basicSettingsIntro" to "Teamname und Liga in einem ruhigen Formular prüfen und anpassen.",
        "teamManagement.change" to "Ändern",
        "teamManagement.clearFields" to "Felder leeren",
        "teamManagement.codeList" to "Code-Liste",
        "teamManagement.configurationStatus" to "Konfigurationsstatus",
        "teamManagement.configureLeagueDetails" to "Verband: {association}\nSaison: {season}\nLiga: {league}\nGruppen-ID: {groupId}\n\nMöchten Sie diese Liga in der Datenbank konfigurieren? Dies ermöglicht es, Tabellendaten automatisch abzurufen.",
        "teamManagement.configureLeagueTitle" to "Liga konfigurieren?",
        "teamManagement.createAndEdit" to "Anlegen & Bearbeiten",
        "teamManagement.created" to "Erstellt",
        "teamManagement.createNewTeam" to "Neues Team anlegen",
        "teamManagement.dataFetchFailed" to "Daten konnten nicht abgerufen werden.",
        "teamManagement.delete" to "Löschen",
        "teamManagement.deleteTeamConfirm" to "Möchten Sie das Club-Team \"{name}\" wirklich löschen?",
        "teamManagement.deleteTeamTitle" to "Club-Team löschen",
        "teamManagement.documentAvailable" to "Vorhanden",
        "teamManagement.documentMissing" to "Fehlt",
        "teamManagement.documentNotFound" to "Das ausgewählte Dokument wurde nicht gefunden.",
        "teamManagement.documentParsedSummary" to "{label} erfolgreich hochgeladen und geparst!\n\nGefundene Spiele: {matchesFound}\nNeue Spiele erstellt: {created}\nSpiele aktualisiert: {updated}",
        "teamManagement.documents" to "Dokumente",
        "teamManagement.documentsIntro" to "Code- und PIN-Listen hochladen, prüfen und bei Bedarf erneut parsen.",
        "teamManagement.documentUploaded" to "{label} \"{fileName}\" wurde erfolgreich hochgeladen!",
        "teamManagement.edit" to "Bearbeiten",
        "teamManagement.editTeam" to "Team bearbeiten",
        "teamManagement.eligibility" to "Einsatz",
        "teamManagement.eligibilityAdultRelease" to "Freigabe Erwachsene",
        "teamManagement.eligibilityAdultReleaseAndReserve" to "Freigabe + Ersatz Erwachsene",
        "teamManagement.eligibilityAdultReserve" to "Ersatz Erwachsene",
        "teamManagement.eligibilityRegular" to "Regulär",
        "teamManagement.enterUrlForAutoConfig" to "MyTischtennis-URL eingeben für automatische Konfiguration",
        "teamManagement.error" to "Fehler",
        "teamManagement.errorConfiguringLeague" to "Liga konnte nicht konfiguriert werden.",
        "teamManagement.errorConfiguringTeam" to "Team konnte nicht konfiguriert werden.",
        "teamManagement.errorDeletingTeam" to "Fehler beim Löschen des Club-Teams.",
        "teamManagement.errorLoadingPdf" to "Fehler beim Laden des PDFs.",
        "teamManagement.errorLoadingStats" to "Statistiken konnten nicht geladen werden.",
        "teamManagement.errorParsingPdf" to "Fehler beim Parsen der PDF-Datei",
        "teamManagement.errorParsingUrl" to "URL konnte nicht geparst werden. Bitte überprüfen Sie das Format.",
        "teamManagement.errorsCount" to "Fehler: {count}",
        "teamManagement.errorUploadingDocument" to "Fehler beim Hochladen und Parsen der Datei.",
        "teamManagement.exportLineupPdf" to "Aufstellung als PDF",
        "teamManagement.fetched" to "abgerufen",
        "teamManagement.fetchTimedOut" to "Zeitüberschreitung beim Abruf (Async-Job läuft zu lange).",
        "teamManagement.fetchTimeoutShort" to "Zeitüberschreitung beim Abruf (Timeout).",
        "teamManagement.fileTooLarge" to "{label} darf maximal 10 MB groß sein.",
        "teamManagement.fileTooLargeTitle" to "Datei zu groß",
        "teamManagement.filterAll" to "Alle",
        "teamManagement.filterConfigured" to "Konfiguriert",
        "teamManagement.filterNeedsAttention" to "Prüfen",
        "teamManagement.filterNoLeague" to "Ohne Liga",
        "teamManagement.firstHalf" to "Vorrunde",
        "teamManagement.firstHalfFull" to "Vorrunde (Juli - Dezember)",
        "teamManagement.fullyConfigured" to "Vollständig konfiguriert",
        "teamManagement.groupId" to "Gruppen-ID",
        "teamManagement.groupName" to "Gruppenname",
        "teamManagement.invalidFileExtension" to "{label} muss eine der folgenden Endungen haben: {extensions}.",
        "teamManagement.invalidFileTypeTitle" to "Ungültiger Dateityp",
        "teamManagement.invalidMimeType" to "{label} weist einen unerwarteten MIME-Typ auf: {type}.",
        "teamManagement.lastRun" to "Zuletzt",
        "teamManagement.lastUpdated" to "Zuletzt aktualisiert",
        "teamManagement.latestUpload" to "Zuletzt hochgeladen: {date}",
        "teamManagement.league" to "Spielklasse",
        "teamManagement.leagueConfiguredDetails" to "Liga: {league}\nSaison: {season}\nVerband: {association}\nGruppen-ID: {groupId}\n\nTabellendaten können jetzt automatisch abgerufen werden.",
        "teamManagement.leagueConfiguredSuccess" to "Liga erfolgreich konfiguriert! Tabellendaten können jetzt automatisch abgerufen werden.",
        "teamManagement.leagueFieldRequired" to "Bitte eine Spielklasse auswählen und speichern.",
        "teamManagement.lineupEmpty" to "Noch keine Spieler für diese Mannschaft gemeldet.",
        "teamManagement.lineupPdfEmpty" to "Es sind keine Spieler in der Aufstellung – PDF kann nicht erstellt werden.",
        "teamManagement.lineupPdfFilePrefix" to "Aufstellung",
        "teamManagement.lineupProposal" to "Mannschaftsmeldung nach QTTR",
        "teamManagement.lineupSaved" to "Mannschaftsmeldung gespeichert.",
        "teamManagement.lineupSaveError" to "Mannschaftsmeldung konnte nicht gespeichert werden.",
        "teamManagement.lineupUnsavedChanges" to "Ungespeicherte Änderungen in der Mannschaftsmeldung.",
        "teamManagement.lineupValidationTooLargeGap" to "{higher} hat mehr als 30 QTTR Punkte Vorsprung vor {lower}. Diese Reihenfolge bitte korrigieren.",
        "teamManagement.loadingStats" to "Lade Statistiken...",
        "teamManagement.manualFetch" to "Abrufen",
        "teamManagement.markAsInterested" to "Als interessiert markieren",
        "teamManagement.matchesSummary" to "Gefundene Spiele: {matchesFound}\nNeue Spiele erstellt: {created}\nSpiele aktualisiert: {updated}",
        "teamManagement.matchResults" to "Spielergebnisse",
        "teamManagement.missingConfigSummary" to "Fehlende Angaben:",
        "teamManagement.missingItems" to "Fehlend: {items}",
        "teamManagement.missingLeagueForTeam" to "Für das ausgewählte Team wurde keine Liga übermittelt.",
        "teamManagement.moreErrors" to "... und {count} weitere",
        "teamManagement.myTischtennis" to "MyTischtennis",
        "teamManagement.myTischtennisIntro" to "URL einfügen, Konfiguration prüfen und bei Bedarf Daten manuell abrufen.",
        "teamManagement.mytischtennisLoginRequired" to "Login bei myTischtennis erforderlich",
        "teamManagement.myTischtennisUrlPlaceholder" to "MyTischtennis URL...",
        "teamManagement.myTischtennisUrlRequired" to "MyTischtennis-URL einfügen und parsen, um Team-ID und Ligendaten zu übernehmen.",
        "teamManagement.never" to "Nie",
        "teamManagement.newTeam" to "Neues Team",
        "teamManagement.noAssignment" to "Keine Zuordnung",
        "teamManagement.noAutomaticUpdate" to "Noch keine automatische Aktualisierung",
        "teamManagement.noDocumentUploadYet" to "Noch kein Dokument hochgeladen.",
        "teamManagement.noIssues" to "Keine offenen Konfigurationsprobleme.",
        "teamManagement.noLeague" to "Keine Spielklasse",
        "teamManagement.noMatchesFoundDetails" to "Hinweis: Keine Spiele erkannt.\nZeilen im Dokument: {lines}",
        "teamManagement.noMatchesFoundTitle" to "Keine Spiele gefunden",
        "teamManagement.noMatchingTeams" to "Keine Teams passen zur aktuellen Suche oder Filterung.",
        "teamManagement.noMembersInPool" to "Keine passenden Mitglieder gefunden.",
        "teamManagement.noPlannedLeague" to "Keine geplante Spielklasse",
        "teamManagement.noPlayerStats" to "Keine Spieleinsätze erfasst.",
        "teamManagement.notConfigured" to "Nicht konfiguriert",
        "teamManagement.notCreated" to "Nicht erstellt",
        "teamManagement.noTeamsYet" to "Noch keine Teams vorhanden. Erstellen Sie Ihr erstes Team!",
        "teamManagement.openDocument" to "Anzeigen",
        "teamManagement.openInWorkspace" to "Zum Bearbeiten öffnen",
        "teamManagement.parseDocument" to "Neu parsen",
        "teamManagement.parseUrlAction" to "URL prüfen",
        "teamManagement.partiallyConfigured" to "Teilweise konfiguriert",
        "teamManagement.pdfFileNotFound" to "Die PDF-Datei konnte nicht gefunden werden.",
        "teamManagement.pinList" to "Pin-Liste",
        "teamManagement.plannedLeague" to "Geplante Spielklasse",
        "teamManagement.plannedLeagueHint" to "Optional. Unabhängig von der gemeldeten Liga (MyTischtennis).",
        "teamManagement.plannedLeaguePlaceholder" to "z. B. Bezirksliga, nach nächster Meldung …",
        "teamManagement.planningSubtitle" to "Mitglieder auf geplante Teams verteilen, Reihenfolge festlegen und offene Zuordnungen sehen.",
        "teamManagement.planningTitle" to "Mannschaftsplanung",
        "teamManagement.player" to "Spieler",
        "teamManagement.playersPoolSubtitle" to "Alle aktiven Mitglieder mit Spielinteresse",
        "teamManagement.playerStats" to "Spieleinsätze",
        "teamManagement.playerStatsIntro" to "Schneller Überblick über Einsätze der Mannschaft in dieser Saison.",
        "teamManagement.playersWantToPlay" to "Wollen spielen",
        "teamManagement.qttr" to "(Q)TTR-Wert",
        "teamManagement.ratingUpdates" to "Rating-Updates",
        "teamManagement.refreshStats" to "Aktualisieren",
        "teamManagement.reuploadFile" to "Bitte laden Sie die Datei erneut hoch und versuchen Sie es noch einmal.",
        "teamManagement.searchMembers" to "Mitglied suchen",
        "teamManagement.searchTeams" to "Team suchen",
        "teamManagement.season" to "Saison",
        "teamManagement.seasonFull" to "Gesamte Saison (ab 1. Juli)",
        "teamManagement.seasonUnknown" to "unbekannt",
        "teamManagement.secondHalf" to "Rückrunde",
        "teamManagement.secondHalfFull" to "Rückrunde (ab 1. Januar)",
        "teamManagement.selectedLineup" to "Gemeldete Spieler",
        "teamManagement.selectMember" to "Mitglied auswählen",
        "teamManagement.selectTeam" to "Team auswählen",
        "teamManagement.selectTeamFirst" to "Bitte wählen Sie zuerst ein Team aus",
        "teamManagement.selectTeamForConfiguration" to "Um die MyTischtennis-Konfiguration zu aktivieren, müssen Sie zuerst ein Team aus der Liste auswählen.",
        "teamManagement.selectTeamTitle" to "Team auswählen",
        "teamManagement.showCodeList" to "Code-Liste anzeigen",
        "teamManagement.showPinList" to "Pin-Liste anzeigen",
        "teamManagement.sortFirstLast" to "Sortierung: Vorname Nachname",
        "teamManagement.sortLastFirst" to "Sortierung: Nachname Vorname",
        "teamManagement.status" to "Status",
        "teamManagement.subtitle" to "Teams auswählen, Konfiguration prüfen und Liga-Daten an einem Ort pflegen.",
        "teamManagement.successful" to "Erfolgreich",
        "teamManagement.tableUpdateLabel" to "Tabellenaktualisierung:",
        "teamManagement.tableUrlDetected" to "Tabellen-URL erkannt",
        "teamManagement.team" to "Team",
        "teamManagement.teamAgeGroup" to "Altersklasse",
        "teamManagement.teamConfiguredDetails" to "Liga: {league}\nSaison: {season}\nAutomatischer Datenabruf ist jetzt aktiv.",
        "teamManagement.teamConfiguredSuccess" to "Team erfolgreich konfiguriert! Automatischer Datenabruf ist jetzt aktiv.",
        "teamManagement.teamDataFetched" to "Teamdaten erfolgreich abgerufen.",
        "teamManagement.teamDataFetchedDetails" to "Team: {team}\nAbgerufene Datensätze: {count}",
        "teamManagement.teamGender" to "Geschlecht",
        "teamManagement.teamGenderFemale" to "Weiblich",
        "teamManagement.teamGenderOpen" to "Offen",
        "teamManagement.teamHasNoLeague" to "Dieses Team ist keiner Liga zugeordnet.",
        "teamManagement.teamId" to "Team-ID",
        "teamManagement.teamName" to "Team-Name",
        "teamManagement.teamNamePlaceholder" to "z.B. Herren 1, Damen 2",
        "teamManagement.teams" to "Teams",
        "teamManagement.title" to "Team-Verwaltung",
        "teamManagement.unassignedMembers" to "Noch nicht zugeordnet",
        "teamManagement.unassignedMembersSubtitle" to "Mitglieder ohne Team-Zuordnung",
        "teamManagement.unknown" to "Unbekannt",
        "teamManagement.unknownTeam" to "Unbekanntes Team",
        "teamManagement.updated" to "aktualisiert",
        "teamManagement.uploadNewVersion" to "Neue Version hochladen",
        "tournament.apply" to "Übernehmen",
        "tournaments.action" to "Aktion",
        "tournaments.add" to "Hinzufügen",
        "tournaments.addClass" to "Klasse hinzufügen",
        "tournaments.addClubMember" to "Vereinsmitglied hinzufügen",
        "tournaments.addExternalParticipant" to "Externen Teilnehmer hinzufügen",
        "tournaments.addPairing" to "Paarung hinzufügen",
        "tournaments.addPoolRule" to "Pool-Regel hinzufügen",
        "tournaments.address" to "Adresse",
        "tournaments.adjustTournamentSearch" to "Passe den Suchbegriff an oder lege ein neues Turnier an.",
        "tournaments.advancersPerGroup" to "Aufsteiger pro Gruppe",
        "tournaments.allClasses" to "Alle Klassen",
        "tournaments.allDataComplete" to "Alle Teilnehmerdaten sind vollständig.",
        "tournaments.allDataCompleteTop3" to "Alle Daten der Top-3-Platzierten sind vollständig.",
        "tournaments.apply" to "Übernehmen",
        "tournaments.assignmentReviewTitle" to "{count} Teilnehmer brauchen eine Auswahl:",
        "tournaments.atLeastOnePoolRule" to "Bitte mindestens eine Pool-Regel für {label} anlegen (z. B. Plätze 1,2).",
        "tournaments.autoAssignableParticipantsHint" to "{count} davon können automatisch zugeordnet werden.",
        "tournaments.autoAssignEligible" to "Automatisch zuweisen",
        "tournaments.autoAssignEligibleDone" to "{count} Teilnehmer wurden automatisch zugeordnet.",
        "tournaments.autoAssignEligibleNone" to "Aktuell gibt es keine Teilnehmer mit eindeutiger automatischer Klassenzuweisung.",
        "tournaments.autoAssignEligiblePartial" to "{successCount} Teilnehmer wurden automatisch zugeordnet, {errorCount} nicht.",
        "tournaments.birthdate" to "Geburtsdatum",
        "tournaments.cancel" to "Abbrechen",
        "tournaments.class" to "Klasse",
        "tournaments.classes" to "Klassen",
        "tournaments.className" to "Klassenname",
        "tournaments.cleanupOrphanedMatches" to "Verwaiste Spiele aufräumen",
        "tournaments.club" to "Verein",
        "tournaments.clubMember" to "(Vereinsmitglied)",
        "tournaments.conflictSuggestionLabel" to "Vorschläge:",
        "tournaments.correctMatch" to "Korrigieren",
        "tournaments.create" to "Erstellen",
        "tournaments.createFinalFromIntermediate" to "Endrunde aus Zwischenrunde erstellen",
        "tournaments.createFinalFromPreliminary" to "Endrunde aus Vorrunde erstellen",
        "tournaments.createGroupMatches" to "Gruppenspiele berechnen",
        "tournaments.createGroups" to "Gruppen erstellen",
        "tournaments.createIntermediateFromPreliminary" to "Zwischenrunde aus Vorrunde erstellen",
        "tournaments.createMatches" to "Spiele erstellen",
        "tournaments.createSuggestedPairings" to "Partner bilden",
        "tournaments.currentClass" to "Aktive Klasse",
        "tournaments.dataNotRecorded" to "Noch nicht erfasst",
        "tournaments.date" to "Datum",
        "tournaments.delete" to "Löschen",
        "tournaments.deleteClassConfirm" to "Möchten Sie die Klasse \"{name}\" wirklich löschen?",
        "tournaments.deleteClassParticipantsDetached" to "Alle Teilnehmer werden von dieser Klasse entfernt.",
        "tournaments.deleteClassTitle" to "Klasse löschen",
        "tournaments.deleteExistingPairingsConfirm" to "Bestehende Paarungen werden gelöscht. Fortfahren?",
        "tournaments.deleteKORound" to "K.o.-Runde",
        "tournaments.diff" to "Diff",
        "tournaments.distributeTables" to "Freie Tische verteilen",
        "tournaments.distributeTablesResult" to "Tischverteilung",
        "tournaments.doubles" to "Doppel",
        "tournaments.doublesPairingHint" to "{count} Teilnehmer in dieser Doppelklasse haben noch keinen Partner.",
        "tournaments.doublesTournament" to "Doppel-Turnier",
        "tournaments.doublesTournamentHint" to "Schaltet alle vorhandenen Klassen auf Doppel und legt neue Klassen standardmäßig als Doppel an.",
        "tournaments.edit" to "Bearbeiten",
        "tournaments.eligibleClassesHint" to "Passt zu: {classes}",
        "tournaments.email" to "E-Mail",
        "tournaments.encounter" to "Begegnung",
        "tournaments.enterClassName" to "Bitte geben Sie einen Klassennamen ein.",
        "tournaments.enterExternalParticipantName" to "Bitte geben Sie mindestens Vorname und Nachname ein.",
        "tournaments.enterMiniLocation" to "Bitte geben Sie einen Ort ein.",
        "tournaments.errorCreatingGroups" to "Fehler beim Erstellen der Gruppen.",
        "tournaments.errorCreatingTournament" to "Fehler beim Erstellen des Turniers.",
        "tournaments.errorDistributingTables" to "Fehler beim Verteilen der Tische.",
        "tournaments.errorGeneratingPdf" to "Fehler beim Generieren des PDFs.",
        "tournaments.errorMergingClasses" to "Fehler beim Zusammenlegen der Klassen.",
        "tournaments.errorMoreSeededThanUnseeded" to "Es gibt mehr gesetzte als nicht gesetzte Spieler. Zufällige Paarungen können nicht erstellt werden.",
        "tournaments.errorResettingKORound" to "Fehler beim Zurücksetzen der K.o.-Runde.",
        "tournaments.errorUpdatingTournament" to "Fehler beim Aktualisieren des Turniers.",
        "tournaments.events" to "Veranstaltungen",
        "tournaments.exportPDF" to "PDF exportieren",
        "tournaments.external" to "Extern",
        "tournaments.finalPlacements" to "Endplatzierungen",
        "tournaments.finalRound" to "Endrunde",
        "tournaments.finishMatch" to "Abschließen",
        "tournaments.firstName" to "Vorname",
        "tournaments.forForwarding" to "für Weitermeldung",
        "tournaments.gaveUp" to "Aufgegeben",
        "tournaments.gaveUpHint" to "Spieler hat aufgegeben – alle Spiele zählen für den Gegner (11:0) bzw. 0:0 bei beiden aufgegeben.",
        "tournaments.genderAll" to "Alle",
        "tournaments.genderMixed" to "Mixed",
        "tournaments.generatingPDF" to "PDF wird erstellt...",
        "tournaments.group" to "Gruppe",
        "tournaments.groupMatches" to "Gruppenspiele",
        "tournaments.groupNumber" to "Gruppe",
        "tournaments.groupPlacements" to "Gruppenplatzierungen",
        "tournaments.groupsLabel" to "Gruppen",
        "tournaments.groupsOverview" to "Gruppenübersicht",
        "tournaments.groupsPerClass" to "Gruppen",
        "tournaments.groupsPerClassHint" to "Geben Sie für jede Klasse die Anzahl der Gruppen ein (0 = keine Gruppen für diese Klasse):",
        "tournaments.index" to "Index",
        "tournaments.intermediateRound" to "Zwischenrunde (Runde 2)",
        "tournaments.internalStatsAbsoluteRank" to "Rangliste Gesamtwertung",
        "tournaments.internalStatsAgeFilter" to "Altersklassen & Geschlecht (Einzel)",
        "tournaments.internalStatsAgeFilterAll" to "Alle Altersklassen",
        "tournaments.internalStatsAgeFilterNone" to "Keine Altersklasse ausgewählt",
        "tournaments.internalStatsAgeNoClass" to "Ohne Klassenzuordnung",
        "tournaments.internalStatsAgeSelectAll" to "Alle",
        "tournaments.internalStatsAgeSelectNone" to "Keine",
        "tournaments.internalStatsAverageRank" to "Rangliste Durchschnitt (pro Turnier)",
        "tournaments.internalStatsAvgPoints" to "Ø",
        "tournaments.internalStatsEmpty" to "Keine auswertbaren Daten im gewählten Zeitraum.",
        "tournaments.internalStatsExportPdf" to "Als PDF exportieren",
        "tournaments.internalStatsFilterAgeBands" to "Altersklassen",
        "tournaments.internalStatsFilterGenderColumn" to "Geschlecht",
        "tournaments.internalStatsGenderScopeAll" to "Alle",
        "tournaments.internalStatsGenderScopeGirls" to "Mädchen",
        "tournaments.internalStatsLast12Months" to "Letzte 12 Monate",
        "tournaments.internalStatsLast3Months" to "Letzte 3 Monate",
        "tournaments.internalStatsLast6Months" to "Letzte 6 Monate",
        "tournaments.internalStatsOpenButton" to "Turnierstatistik (Einzel)",
        "tournaments.internalStatsPeriod" to "Zeitraum",
        "tournaments.internalStatsPoints" to "Summe",
        "tournaments.internalStatsPointsExplain" to "Wertung: Pro Gruppe wird die Platzierung als Prozentzahl ausgedrückt (bei N Teilnehmern mit Platzierung: 1. = 100 %, Letzter = 0 %, dazwischen linear; gleiche Platzierung = gleicher Wert). N umfasst alle Platzierten in der Gruppe (inkl. Gäste). Bei nur einem Teilnehmer: 100 %. Wer die K.-o.-Runde erreicht, erhält den höchsten Gruppenwert der Klasse plus 1, danach je gewonnenes K.-o.-Spiel einen weiteren Punkt. Nur Vereinsmitglieder (Einzel).",
        "tournaments.internalStatsTitle" to "Statistik interne Turniere (Einzel)",
        "tournaments.internalStatsTournamentsInPeriod" to "{count} Turnier(e) im Zeitraum (ohne Minimeisterschaften).",
        "tournaments.internalStatsTtAdult" to "Erwachsene",
        "tournaments.internalTournaments" to "Interne Turniere",
        "tournaments.knockoutLabel" to "KO",
        "tournaments.koRound" to "K.-o.-Runde",
        "tournaments.lastName" to "Nachname",
        "tournaments.livePosition" to "Live-Platz",
        "tournaments.loadFromTraining" to "Aus Trainingstag laden",
        "tournaments.markMatchLive" to "Als laufend markieren",
        "tournaments.maxGroupSize" to "Maximale Gruppengröße",
        "tournaments.mergeClasses" to "Klassen zusammenlegen (gemeinsame Gruppenphase)",
        "tournaments.mergeDistribute" to "Spieler aus A auf alle Gruppen (von B) verteilen",
        "tournaments.mergeSingleGroup" to "Alle Spieler aus A in eine Gruppe (bei B)",
        "tournaments.minBirthYear" to "Geboren im Jahr oder später",
        "tournaments.miniChampionshipLocation" to "Ort",
        "tournaments.miniChampionships" to "Minimeisterschaften",
        "tournaments.miniChampionshipYear" to "Jahr",
        "tournaments.miniChampionshipYearHint" to "12 = in diesem Jahr 12 oder 13 Jahre, 10 = 10 oder 11, 8 = 9 und jünger",
        "tournaments.minimumParticipantsForPairings" to "Mindestens 2 Teilnehmer für Paarungen erforderlich.",
        "tournaments.missingDataPDF" to "Fehlende Daten als PDF",
        "tournaments.missingDataPDFSubtitle" to "Bitte die fehlenden Daten (markiert mit ____) bei den Teilnehmern erfragen und hier notieren.",
        "tournaments.missingDataPDFSubtitleTop3" to "Fehlende Daten der ersten 3 Plätze (markiert mit ____) bitte erfragen und hier notieren.",
        "tournaments.missingDataPDFTitle" to "Fehlende Teilnehmerdaten – Minimeisterschaft",
        "tournaments.missingDataPDFTitleTop3" to "Fehlende Daten – Top 3 Minimeisterschaft",
        "tournaments.name" to "Name",
        "tournaments.newMiniChampionship" to "Neue Minimeisterschaft",
        "tournaments.setShort" to "Satz",
        "tournaments.newTournament" to "Neues Turnier",
        "tournaments.noAssignableMatches" to "Keine Spiele verfügbar, bei denen beide Spieler frei sind.",
        "tournaments.noClassesYet" to "Noch keine Klassen vorhanden. Fügen Sie eine neue Klasse hinzu.",
        "tournaments.noEligibleClass" to "Keine passende Klasse gefunden.",
        "tournaments.noFreeTables" to "Keine freien Tische verfügbar.",
        "tournaments.noMatchingTournamentsTitle" to "Keine passenden Turniere",
        "tournaments.noOrphanedMatchesFound" to "Keine verwaisten Spiele gefunden.",
        "tournaments.noPlacementsYet" to "Noch keine Platzierungen vorhanden.",
        "tournaments.noPlayerDataAvailable" to "Keine Spielerdaten verfügbar",
        "tournaments.noPoolRulesYet12" to "Noch keine Regeln. Beispiel: Plätze 1 und 2 -> obere Runde-2-Gruppen.",
        "tournaments.noPoolRulesYetFinal" to "Noch keine Regeln. Beispiel: Plätze 1 und 2 -> Endrunde.",
        "tournaments.noTop3Yet" to "Es stehen noch keine Top-3-Platzierungen fest.",
        "tournaments.noTournamentDate" to "Kein Turnierdatum vorhanden.",
        "tournaments.noTournamentsCreatedYet" to "Es wurden noch keine Turniere angelegt.",
        "tournaments.noTrainingOnDate" to "Kein Trainingstag für {date} gefunden.",
        "tournaments.noTrainingParticipants" to "Keine Teilnehmer im Trainingstag für dieses Datum gefunden.",
        "tournaments.noValidTrainingParticipants" to "Keine gültigen Teilnehmer im Trainingstag für dieses Datum gefunden.",
        "tournaments.numberOfGroups" to "Anzahl Gruppen",
        "tournaments.numberOfTables" to "Anzahl Tische",
        "tournaments.openTournaments" to "Offene Turniere",
        "tournaments.optional" to "optional",
        "tournaments.orphanedMatchesRemoved" to "{count} verwaiste Spiele entfernt.",
        "tournaments.outOfCompetition" to "Spieler aus A außer Konkurrenz",
        "tournaments.page" to "Seite",
        "tournaments.pairingAlreadyExists" to "Diese Paarung existiert bereits.",
        "tournaments.pairings" to "Doppel-Paarungen",
        "tournaments.pairingsCreatedWithErrors" to "{successCount} Paarungen erstellt, {errorCount} Fehler.",
        "tournaments.participantConflicts" to "Konflikte",
        "tournaments.participantNotFound" to "Teilnehmer nicht gefunden.",
        "tournaments.participants" to "Teilnehmer",
        "tournaments.participantsNeedClassAssignment" to "{count} Teilnehmer sind noch keiner Klasse zugeordnet. Diese sollten zuerst zugeordnet werden.",
        "tournaments.participations" to "Turnierbeteiligungen",
        "tournaments.phone" to "Telefon",
        "tournaments.placementsPendingFinals" to "Endplatzierungen erscheinen, sobald mehrere Gruppen oder eine Endrunde vorhanden sind.",
        "tournaments.placementsPendingGroups" to "Gruppenplatzierungen erscheinen, sobald Gruppenspiele vorhanden sind.",
        "tournaments.placementsPendingNoGroups" to "Sobald Gruppenspiele oder eine Endrunde vorhanden sind, erscheinen hier die Platzierungen.",
        "tournaments.placementsPendingSelectedClass" to "Für die aktuell gewählte Klasse gibt es noch keine Platzierungen.",
        "tournaments.placementsPendingTitle" to "Platzierungen noch nicht verfügbar",
        "tournaments.placesFromEachGroup" to "Plätze aus jeder Gruppe (z. B. 1,2)",
        "tournaments.player" to "Spieler",
        "tournaments.playerOne" to "Spieler 1",
        "tournaments.playerTwo" to "Spieler 2",
        "tournaments.playInGroups" to "Spielen in Gruppen",
        "tournaments.playThirdPlace" to "Platz 3 ausspielen",
        "tournaments.pleaseEnterDate" to "Bitte geben Sie ein Datum ein!",
        "tournaments.pleaseSelectParticipant" to "Bitte wählen Sie einen Teilnehmer aus!",
        "tournaments.points" to "Punkte",
        "tournaments.pointsRatio" to "Spielpunkte",
        "tournaments.poolRuleLabel" to "Regel {number}",
        "tournaments.poolRulePlacesHelp" to "Beispiel: 1 oder 1,2",
        "tournaments.poolRulePlacesLabel" to "Welche Plätze kommen weiter?",
        "tournaments.poolRulePreview" to "Aus jeder Gruppe gehen Platz {places} weiter in {target}.",
        "tournaments.poolRuleQuickExamples" to "Schnellbeispiele:",
        "tournaments.poolRuleSummary" to "Plätze {places} gehen in {target}",
        "tournaments.poolRuleTargetGroupsDetailed" to "{count} Zielgruppen",
        "tournaments.poolRuleTargetKnockout" to "das K.-o.-Feld",
        "tournaments.poolRuleTargetLabel" to "Wohin gehen diese Plätze?",
        "tournaments.position" to "Platz",
        "tournaments.problemConfigDescription" to "Prüfe Datum, Name und Gewinnsätze.",
        "tournaments.problemConfigTitle" to "Konfiguration unvollständig",
        "tournaments.problemConflictsDescription" to "Prüfe unpassende Klassen, fehlende Daten oder unklare Zuordnungen.",
        "tournaments.problemConflictsTitle" to "{count} Teilnehmer mit Konflikten",
        "tournaments.problemDoublesAutoDescription" to "Die offene Doppelklasse kann direkt automatisch gepaart werden.",
        "tournaments.problemDoublesDescription" to "Ein oder mehrere Doppelklassen brauchen noch Partnerzuordnungen.",
        "tournaments.problemDoublesTitle" to "{count} offene Doppelpartner",
        "tournaments.problemGroupMatchesDescription" to "Die Gruppen sind bereit, aber die Spiele wurden noch nicht erstellt.",
        "tournaments.problemGroupMatchesTitle" to "Gruppenspiele noch nicht erzeugt",
        "tournaments.problemGroupsMissingDescription" to "Für das Gruppenturnier müssen zuerst Gruppen angelegt werden.",
        "tournaments.problemGroupsMissingTitle" to "Gruppen noch nicht erstellt",
        "tournaments.problemKnockoutReadyDescription" to "Die Gruppenphase ist abgeschlossen und die Endrunde kann jetzt erzeugt werden.",
        "tournaments.problemKnockoutReadyTitle" to "K.-o.-Runde kann gestartet werden",
        "tournaments.problemUnassignedAutoDescription" to "{count} davon können direkt automatisch zugeordnet werden.",
        "tournaments.problemUnassignedDescription" to "Diese Teilnehmer brauchen noch eine manuelle Klassenzuordnung.",
        "tournaments.problemUnassignedTitle" to "{count} Teilnehmer ohne Klasse",
        "tournaments.promotionRule12" to "Weiterkommen: Vorrunde → Zwischenrunde (1→2)",
        "tournaments.promotionRuleDescription12" to "Hier legst du fest, welche Plätze aus jeder Vorrundengruppe in die Zwischenrunde kommen.",
        "tournaments.promotionRuleDescriptionFinalGroups" to "Hier legst du fest, welche Plätze aus der vorherigen Runde in die Gruppen der Endrunde kommen.",
        "tournaments.promotionRuleDescriptionFinalKnockout" to "Hier legst du fest, welche Plätze aus der vorherigen Runde in das K.-o.-Feld kommen.",
        "tournaments.promotionRuleFinal" to "Weiterkommen: Runde {from} → Runde {to}",
        "tournaments.randomizeGroups" to "Zufällig verteilen",
        "tournaments.randomPairings" to "Zufällige Doppel-Paarungen",
        "tournaments.randomPairingsCreated" to "Zufällige Paarungen wurden erstellt.",
        "tournaments.resetGroupMatches" to "Gruppenspiele",
        "tournaments.resetGroups" to "Gruppen zurücksetzen",
        "tournaments.result" to "Ergebnis",
        "tournaments.resultsRanking" to "Rangliste",
        "tournaments.round" to "Runde",
        "tournaments.roundGroupCount" to "Anzahl Gruppen",
        "tournaments.roundMode" to "Modus",
        "tournaments.ruleStatusBlocked" to "Blockiert",
        "tournaments.ruleStatusOk" to "Passt",
        "tournaments.ruleStatusOkDescription" to "Diese Regel passt zur aktuellen Zielrunde und kann so verwendet werden.",
        "tournaments.ruleStatusReview" to "Prüfen",
        "tournaments.save" to "Speichern",
        "tournaments.saveRounds" to "Runden speichern",
        "tournaments.seeded" to "Gesetzt",
        "tournaments.selectClass" to "Klasse auswählen",
        "tournaments.selectClassPrompt" to "Bitte wählen Sie oben eine Klasse aus.",
        "tournaments.selectedTournament" to "Aktives Turnier",
        "tournaments.selectParticipant" to "-- Teilnehmer auswählen --",
        "tournaments.selectPlayer" to "Spieler auswählen",
        "tournaments.selectTournamentFirst" to "Bitte wählen Sie zuerst ein Turnier aus.",
        "tournaments.selectTwoDifferentPlayers" to "Bitte wählen Sie zwei verschiedene Spieler aus.",
        "tournaments.setDiff" to "Satzdifferenz",
        "tournaments.sets" to "Sätze",
        "tournaments.showClass" to "Klasse anzeigen",
        "tournaments.showEvents" to "Gespeicherte Veranstaltungen anzeigen",
        "tournaments.showingTournamentCount" to "{visible} von {total}",
        "tournaments.showParticipations" to "Turnierbeteiligungen anzeigen",
        "tournaments.showPlayerDetails" to "Spielerdetails anzeigen",
        "tournaments.singles" to "Einzel",
        "tournaments.sourceClass" to "Quelle",
        "tournaments.stageActionMissingRulesHint" to "Lege zuerst mindestens eine Weiterkommens-Regel an, bevor du Spieler in die nächste Runde übernimmst.",
        "tournaments.stageActionRun" to "Jetzt ausführen",
        "tournaments.stageActionsDescription" to "Diese Schritte übernehmen qualifizierte Spieler in die nächste Runde.",
        "tournaments.stageActionsTitle" to "Nächste Aktionen",
        "tournaments.stageConfigBadServerResponse" to "Fehlerhafte Antwort vom Server.",
        "tournaments.stageConfigCurrentSetup" to "Aktuelle Struktur",
        "tournaments.stageConfigIntro" to "Zwischenrunde ist optional. Wenn du sie aktivierst, gibt es danach immer eine Endrunde. KO-Endrunde wird als ein einziges Feld erzeugt.",
        "tournaments.stageConfigLoadError" to "Fehler beim Laden der Rundenkonfiguration.",
        "tournaments.stageConfigLoading" to "Lade Zwischenrunden …",
        "tournaments.stageConfigMissingIds" to "Kann nicht speichern: Vereins- oder Turnier-ID fehlt.",
        "tournaments.stageConfigTitle" to "Zwischenrunde & Endrunde",
        "tournaments.stageCreated" to "Runde {round} wurde erstellt.",
        "tournaments.stageFinalDescription" to "Bestimme, ob die Endrunde als Gruppenphase oder direkt als K.-o.-Feld gespielt wird.",
        "tournaments.stageFlowBreakdownActionAddRule" to "Regel anlegen",
        "tournaments.stageFlowBreakdownActionOpen" to "Regel öffnen",
        "tournaments.stageFlowBreakdownActionReview" to "Fehler prüfen",
        "tournaments.stageFlowBreakdownErrors" to "{count} Fehler blockieren",
        "tournaments.stageFlowBreakdownMissingRule" to "Noch keine vollständige Regel angelegt",
        "tournaments.stageFlowBreakdownOk" to "Konfiguration passt",
        "tournaments.stageFlowBreakdownWarnings" to "{count} Hinweis(e) offen",
        "tournaments.stageFlowDirectFinal" to "Vorrunde -> Endrunde ({final})",
        "tournaments.stageFlowHealthBlocked" to "Rundenlogik widersprüchlich",
        "tournaments.stageFlowHealthBlockedDescription" to "Mindestens eine Regel passt aktuell nicht zur Zielrunde oder enthält blockierende Konfigurationsfehler.",
        "tournaments.stageFlowHealthIncomplete" to "Rundenlogik unvollständig",
        "tournaments.stageFlowHealthMissingRules" to "Mindestens ein Übergang hat noch keine vollständige Weiterkommens-Regel.",
        "tournaments.stageFlowHealthOk" to "Rundenlogik passt",
        "tournaments.stageFlowHealthOkDescription" to "Die Übergänge zwischen den Runden sind vollständig konfiguriert und aktuell stimmig.",
        "tournaments.stageFlowHealthReviewDescription" to "Die Rundenlogik ist grundsätzlich nutzbar, sollte aber wegen offener Hinweise noch geprüft werden.",
        "tournaments.stageFlowPreviewMissing" to "Noch keine Regel konfiguriert.",
        "tournaments.stageFlowPreviewRule" to "Plätze {places} gehen in {target}",
        "tournaments.stageFlowPreviewRuleWithCount" to "{base} (voraussichtlich {count} Qualifizierte)",
        "tournaments.stageFlowQualifiedPreviewEntry" to "G{group} · Platz {position} · {name}",
        "tournaments.stageFlowQualifiedPreviewTitle" to "Aktuell qualifiziert",
        "tournaments.stageFlowReadinessIncompleteGroups" to "{count} Gruppe(n) sind noch nicht vollständig entschieden",
        "tournaments.stageFlowReadinessNoGroups" to "Noch keine passenden Gruppen vorhanden",
        "tournaments.stageFlowReadinessReady" to "Übergang ist fachlich startklar",
        "tournaments.stageFlowRecommendationError" to "Prüfe zuerst den ersten blockierenden Fehler in der Rundenlogik.",
        "tournaments.stageFlowRecommendationFixes" to "Die typischen Konfigurationsprobleme können direkt automatisch bereinigt werden.",
        "tournaments.stageFlowRecommendationMissingRule" to "Für {label} fehlt noch eine vollständige Regel. Lege am besten damit los.",
        "tournaments.stageFlowRecommendationSave" to "Die Rundenlogik ist stimmig. Du kannst die Konfiguration jetzt speichern.",
        "tournaments.stageFlowRecommendationTitle" to "Empfohlener nächster Schritt",
        "tournaments.stageFlowRecommendationWarnings" to "Es gibt noch Hinweise, die du vor dem Speichern prüfen solltest.",
        "tournaments.stageFlowWithIntermediate" to "Vorrunde -> Zwischenrunde ({stage2}) -> Endrunde ({final})",
        "tournaments.stageParticipantsTransferred" to "Qualifizierte Spieler wurden in {round} übernommen.",
        "tournaments.stageStep1" to "Schritt 1",
        "tournaments.stageStep1Description" to "Entscheide zuerst, ob nach der Vorrunde noch eine zusätzliche Runde gespielt werden soll.",
        "tournaments.stageStep1Title" to "Zwischenrunde festlegen",
        "tournaments.stageStep2" to "Schritt 2",
        "tournaments.stageStep2Description" to "Lege fest, wie die Zwischenrunde aussieht und wie viele Gruppen dort gebraucht werden.",
        "tournaments.stageStep3" to "Schritt 3",
        "tournaments.stageValidationApplyAllFixes" to "{count} Schnellkorrektur(en) anwenden",
        "tournaments.stageValidationApplyFix" to "Übernehmen",
        "tournaments.stageValidationApplyTargetGroupFix" to "Auf {count} Zielgruppen setzen",
        "tournaments.stageValidationApplyTargetTypeFix" to "Auf {target} umstellen",
        "tournaments.stageValidationDescription" to "Fix these points before saving or moving players into the next round.",
        "tournaments.stageValidationGroupCountRequired" to "Please set at least one valid group count.",
        "tournaments.stageValidationKnockoutByesLikely" to "Mit voraussichtlich {count} Qualifizierten wird das K.-o.-Feld sehr wahrscheinlich Freilose enthalten.",
        "tournaments.stageValidationKnockoutNeedsTwoPlayers" to "Für ein K.-o.-Feld werden mindestens 2 Qualifizierte benötigt.",
        "tournaments.stageValidationKnockoutTargetOnly" to "For a knockout final round, only the knockout bracket is allowed as the target here.",
        "tournaments.stageValidationNoRules" to "There is no advancement rule yet for {stage}.",
        "tournaments.stageValidationNotEnoughQualifiersForGroups" to "Mit nur {count} Qualifizierten für {groups} Zielgruppen würden leere Gruppen entstehen.",
        "tournaments.stageValidationRulePlacesDuplicate" to "A single rule must not contain the same place more than once.",
        "tournaments.stageValidationRulePlacesGap" to "Die Platzangabe hat Lücken. Meist ist eine zusammenhängende Reihenfolge wie 1,2 oder 1,2,3 gemeint.",
        "tournaments.stageValidationRulePlacesInvalid" to "The place definition is invalid. Only positive whole numbers such as 1 or 1,2 are allowed.",
        "tournaments.stageValidationRulePlacesRequired" to "Enter at least one place that should advance.",
        "tournaments.stageValidationRulesOverlap" to "Place {place} is assigned twice, in rule {first} and rule {second}.",
        "tournaments.stageValidationSaveBlocked" to "Please fix the highlighted configuration errors first.",
        "tournaments.stageValidationSuggestion" to "Vorschlag: {value}",
        "tournaments.stageValidationTargetGroupCountMismatch" to "Die Anzahl der Zielgruppen muss zur Zielrunde passen. Erwartet: {expected}.",
        "tournaments.stageValidationTargetGroupsRequired" to "Please enter a valid number of target groups.",
        "tournaments.stageValidationTargetTypeMismatch" to "Das Ziel dieser Regel muss zur Zielrunde passen. Erwartet: {target}.",
        "tournaments.stageValidationThinGroupsLikely" to "Mit {count} Qualifizierten auf {groups} Zielgruppen werden die Gruppen vermutlich sehr klein.",
        "tournaments.stageValidationTitle" to "Review configuration",
        "tournaments.startKORound" to "K.o.-Runde starten",
        "tournaments.statusActionAssign" to "Zuweisen",
        "tournaments.statusActionCreate" to "Erstellen",
        "tournaments.statusActionGenerate" to "Erzeugen",
        "tournaments.statusActionPair" to "Paaren",
        "tournaments.statusActionReview" to "Prüfen",
        "tournaments.statusActionStart" to "Starten",
        "tournaments.statusConfigIncomplete" to "Konfiguration unvollständig",
        "tournaments.statusConfigReady" to "Konfiguration bereit",
        "tournaments.statusFinished" to "Fertig",
        "tournaments.statusGroupsMissing" to "Gruppen noch nicht erstellt",
        "tournaments.statusGroupsReady" to "Gruppen bereit",
        "tournaments.statusGroupsRunning" to "Gruppenphase läuft",
        "tournaments.statusKnockoutReady" to "K.-o.-Runde startklar",
        "tournaments.statusKnockoutRunning" to "K.-o.-Runde läuft",
        "tournaments.statusLive" to "Live",
        "tournaments.statusOpen" to "Offen",
        "tournaments.statusParticipantsConflicts" to "{count} Teilnehmer mit Konflikten",
        "tournaments.statusParticipantsReady" to "{count} Teilnehmer konfliktfrei",
        "tournaments.statusParticipantsUnassigned" to "{count} ohne Klasse",
        "tournaments.statusTournamentCompleted" to "Turnier abgeschlossen",
        "tournaments.statusUnpairedDoubles" to "{count} Doppel ohne Partner",
        "tournaments.strategy" to "Strategie",
        "tournaments.tabConfig" to "Konfiguration",
        "tournaments.tabGroups" to "Gruppen",
        "tournaments.table" to "Tisch",
        "tournaments.tablesDistributed" to "Tische wurden verteilt.",
        "tournaments.tabParticipants" to "Teilnehmer",
        "tournaments.tabPlacements" to "Platzierungen",
        "tournaments.tabResults" to "Ergebnisse",
        "tournaments.target" to "Ziel",
        "tournaments.targetClass" to "Ziel",
        "tournaments.targetGroupCount" to "Ziel-Gruppenanzahl",
        "tournaments.targetGroupsLabel" to "{count} Gruppen",
        "tournaments.title" to "Turniere",
        "tournaments.tournamentClassGenderFemale" to "Weiblich",
        "tournaments.tournamentClassGenderOpen" to "Alle",
        "tournaments.tournamentName" to "Turniername",
        "tournaments.tournamentParticipations" to "Offizielle Turniere & Teilnahmen",
        "tournaments.transferQualifiedToFinalFromIntermediate" to "Qualifizierte Spieler in die Endrunde übernehmen",
        "tournaments.transferQualifiedToFinalFromIntermediateDesc" to "Nutzt die Regeln Zwischenrunde -> Endrunde und übernimmt die qualifizierten Teilnehmer.",
        "tournaments.transferQualifiedToFinalFromPreliminary" to "Qualifizierte Spieler direkt in die Endrunde übernehmen",
        "tournaments.transferQualifiedToFinalFromPreliminaryDesc" to "Nutzt die Regeln Vorrunde -> Endrunde und erzeugt daraus direkt die qualifizierten Teilnehmer.",
        "tournaments.transferQualifiedToIntermediate" to "Qualifizierte Spieler in die Zwischenrunde übernehmen",
        "tournaments.transferQualifiedToIntermediateDesc" to "Nutzt die Regeln Vorrunde -> Zwischenrunde und übernimmt die qualifizierten Teilnehmer.",
        "tournaments.unknown" to "Unbekannt",
        "tournaments.unknownDate" to "Unbekanntes Datum",
        "tournaments.unmarkMatchLive" to "Laufend-Markierung entfernen",
        "tournaments.unpairedDoubles" to "Doppel ohne Partner",
        "tournaments.useIntermediateStage" to "Zwischenrunde verwenden",
        "tournaments.warningBirthDateMissing" to "Geburtsdatum fehlt für diese Klasse",
        "tournaments.warningClassMissing" to "Klasse nicht gefunden",
        "tournaments.warningGenderMismatch" to "Geschlecht passt nicht zur Klasse",
        "tournaments.warningGenderMissing" to "Geschlecht fehlt für diese Klasse",
        "tournaments.warningMissingPairing" to "Doppelpartner fehlt",
        "tournaments.warningTooOldForClass" to "Zu alt für diese Klasse",
        "tournaments.warningTooYoungForClass" to "Zu jung für diese Klasse",
        "tournaments.winningSets" to "Gewinnsätze",
        "tournaments.withoutClass" to "Ohne Klasse",
        "tournaments.workspaceProblemsTitle" to "{count} offene Punkte",
        "trainingDetails.birthdate" to "Geburtsdatum",
        "trainingDetails.birthYear" to "Geburtsjahr",
        "trainingDetails.last12Months" to "Letzte 12 Monate",
        "trainingDetails.last3Months" to "Letzte 3 Monate",
        "trainingDetails.maxBirthYear" to "Geboren ≤ Jahr",
        "trainingDetails.noTrainings" to "Keine Trainingsteilnahmen vorhanden",
        "trainingDetails.title" to "Trainings-Details",
        "trainingDetails.total" to "Gesamt",
        "trainingDetails.trainingParticipations" to "Trainingsteilnahmen (absteigend sortiert)",
        "trainingGroupsTab.addMember" to "Mitglied hinzufügen...",
        "trainingGroupsTab.cancel" to "Abbrechen",
        "trainingGroupsTab.create" to "Erstellen",
        "trainingGroupsTab.delete" to "Löschen",
        "trainingGroupsTab.edit" to "Bearbeiten",
        "trainingGroupsTab.editGroup" to "Gruppe bearbeiten",
        "trainingGroupsTab.groupName" to "Gruppenname",
        "trainingGroupsTab.groups" to "Gruppen",
        "trainingGroupsTab.members" to "Mitglieder",
        "trainingGroupsTab.newGroup" to "+ Neue Gruppe",
        "trainingGroupsTab.noMembersAvailable" to "Keine Mitglieder verfügbar",
        "trainingGroupsTab.remove" to "Entfernen",
        "trainingStats.actions" to "Aktionen",
        "trainingStats.activeMembers" to "Aktive Mitglieder",
        "trainingStats.allTrainingDays" to "Alle Trainingstage",
        "trainingStats.attendingMembers" to "Anwesende Mitglieder",
        "trainingStats.averageParticipationCurrentMonth" to "Durchschnittliche Teilnahme (aktueller Monat)",
        "trainingStats.averageParticipationHalfYear" to "Durchschnittliche Teilnahme (Halbjahr)",
        "trainingStats.averageParticipationLastMonth" to "Durchschnittliche Teilnahme (letzter Monat)",
        "trainingStats.averageParticipationQuarter" to "Durchschnittliche Teilnahme (Quartal)",
        "trainingStats.averageParticipationYear" to "Durchschnittliche Teilnahme (Jahr)",
        "trainingStats.birthdate" to "Geburtsdatum",
        "trainingStats.date" to "Datum",
        "trainingStats.lastTraining" to "Letztes Training",
        "trainingStats.memberParticipations" to "Mitglieder-Teilnahmen",
        "trainingStats.name" to "Name",
        "trainingStats.noParticipants" to "Keine Teilnehmer",
        "trainingStats.panelAgeGroups" to "Anwesenheit nach Altersklasse",
        "trainingStats.panelBestDay" to "Stärkster Trainingstag",
        "trainingStats.panelGroupPerformance" to "Entwicklung pro Gruppe",
        "trainingStats.panelMemberStructure" to "Mitgliederstruktur",
        "trainingStats.panelMonthlyTrend" to "Monatlicher Verlauf",
        "trainingStats.panelSummary" to "Kennzahlen (Filter)",
        "trainingStats.panelWeekdayStats" to "Trainingstage nach Wochentag",
        "trainingStats.participants" to "Teilnehmer",
        "trainingStats.participations12Months" to "Teilnahmen (12 Monate)",
        "trainingStats.participations3Months" to "Teilnahmen (3 Monate)",
        "trainingStats.participationsTotal" to "Teilnahmen (Gesamt)",
        "trainingStats.qttr" to "QTTR",
        "trainingStats.showDetails" to "Details anzeigen",
        "trainingStats.title" to "Trainings-Statistik",
        "trainingStats.trainingDayFilter" to "Trainingstag",
        "trainingStats.trainingDays" to "Trainingstage (letzte 12 Monate)",
        "trainingStats.ttr" to "TTR",
        "trainingStats.weekday" to "Wochentag",
        "trainingTimesTab.addTime" to "+ Zeit hinzufügen",
        "trainingTimesTab.cancel" to "Abbrechen",
        "trainingTimesTab.create" to "Erstellen",
        "trainingTimesTab.delete" to "Löschen",
        "trainingTimesTab.edit" to "Bearbeiten",
        "trainingTimesTab.editTime" to "Trainingszeit bearbeiten",
        "trainingTimesTab.excludeFromQuickDiaryCreate" to "Vom Schnellanlegen (Tagebuch) ausnehmen",
        "trainingTimesTab.excludeFromQuickDiarySaveError" to "Die Einstellung konnte nicht gespeichert werden.",
        "trainingTimesTab.friday" to "Freitag",
        "trainingTimesTab.from" to "Von:",
        "trainingTimesTab.loading" to "Lade Trainingszeiten...",
        "trainingTimesTab.monday" to "Montag",
        "trainingTimesTab.noTimes" to "Keine Trainingszeiten definiert",
        "trainingTimesTab.saturday" to "Samstag",
        "trainingTimesTab.save" to "Speichern",
        "trainingTimesTab.saveError" to "Fehler beim Speichern der Trainingszeit",
        "trainingTimesTab.sunday" to "Sonntag",
        "trainingTimesTab.thursday" to "Donnerstag",
        "trainingTimesTab.to" to "Bis:",
        "trainingTimesTab.tuesday" to "Dienstag",
        "trainingTimesTab.wednesday" to "Mittwoch",
        "trainingTimesTab.weekday" to "Wochentag:",
        "unknown" to "Unbekannt",
    ) }

    private val de: Map<String, String> by lazy { mapOf(
        "accident.accident" to "Unfall",
        "accident.accidentDescription" to "Beschreibung des Unfalls...",
        "accident.close" to "Schließen",
        "accident.member" to "Mitglied",
        "accident.pleaseSelect" to "Bitte wählen",
        "accident.reportAccident" to "Unfall melden",
        "accident.reportedAccidents" to "Gemeldete Unfälle",
        "accident.submit" to "Eintragen",
        "activityStats.activityStatistics" to "Statistik der Übungen",
        "activityStats.last3Participations" to "Letzte 3 Teilnahmen",
        "activityStats.noParticipations" to "Keine Teilnahmen vorhanden",
        "activityStats.noStatistics" to "Keine Statistiken vorhanden",
        "activityStats.title" to "Übungs-Statistiken",
        "app.name" to "Trainingstagebuch",
        "app.title" to "Trainingstagebuch",
        "auth.accountActivated" to "Account aktiviert! Du kannst dich jetzt anmelden.",
        "auth.activate" to "Aktivieren",
        "auth.activateAccount" to "Account aktivieren",
        "auth.activationFailed" to "Aktivierung fehlgeschlagen. Bitte überprüfe den Link oder versuche es erneut.",
        "auth.confirmPassword" to "Passwort bestätigen",
        "auth.email" to "E-Mail",
        "auth.forgotPassword" to "Passwort vergessen?",
        "auth.forgotPasswordDescription" to "Gib deine E-Mail-Adresse ein. Du erhältst einen Link, um dein Passwort zurückzusetzen.",
        "auth.hasAccount" to "Bereits ein Konto?",
        "auth.login" to "Einloggen",
        "auth.loginFailed" to "Login fehlgeschlagen. Bitte Zugangsdaten prüfen und erneut versuchen.",
        "auth.loginSuccess" to "Erfolgreich eingeloggt",
        "auth.logout" to "Ausloggen",
        "auth.logoutSuccess" to "Erfolgreich ausgeloggt",
        "auth.newPassword" to "Neues Passwort",
        "auth.noAccount" to "Noch kein Konto?",
        "auth.password" to "Passwort",
        "auth.passwordResetSuccess" to "Dein Passwort wurde erfolgreich geändert. Du kannst dich jetzt mit deinem neuen Passwort anmelden.",
        "auth.passwordsDoNotMatch" to "Die Passwörter stimmen nicht überein.",
        "auth.passwordTooShort" to "Das Passwort muss mindestens 6 Zeichen lang sein.",
        "auth.register" to "Registrieren",
        "auth.registerFailed" to "Registrierung fehlgeschlagen. Bitte versuchen Sie es erneut.",
        "auth.registerSuccess" to "Registrierung erfolgreich! Bitte prüfen Sie Ihre E-Mails, um den Account zu aktivieren.",
        "auth.rememberMe" to "Angemeldet bleiben",
        "auth.resetEmailSent" to "Falls ein Konto mit dieser E-Mail existiert, wurde ein Link zum Zurücksetzen gesendet. Bitte prüfe dein Postfach (auch den Spam-Ordner).",
        "auth.resetFailed" to "Passwort konnte nicht geändert werden. Der Link ist möglicherweise abgelaufen.",
        "auth.resetPassword" to "Neues Passwort vergeben",
        "auth.resetRequestFailed" to "Anfrage fehlgeschlagen. Bitte versuche es erneut.",
        "auth.saveNewPassword" to "Passwort speichern",
        "auth.saving" to "Wird gespeichert...",
        "auth.sending" to "Wird gesendet...",
        "auth.sendResetLink" to "Link senden",
        "auth.sessionExpired" to "Deine Sitzung ist abgelaufen. Du wirst abgemeldet.",
        "auth.toLogin" to "Zum Login",
        "baseDialog.close" to "Schließen",
        "baseDialog.minimize" to "Minimieren",
        "baseDialog.resize" to "Größe ändern",
        "billing.autoSuggestMapping" to "Auto-Vorschläge",
        "billing.deleteBilling" to "Löschen",
        "billing.deleteConfirm" to "Diese erzeugte Abrechnung wirklich löschen?",
        "billing.deleteError" to "Abrechnung konnte nicht gelöscht werden.",
        "billing.deleteSuccess" to "Abrechnung wurde gelöscht.",
        "billing.deleteTemplate" to "Vorlage löschen",
        "billing.deleteTemplateConfirm" to "Diese Vorlage wirklich löschen?",
        "billing.deleteTemplateError" to "Vorlage konnte nicht gelöscht werden.",
        "billing.deleteTemplateSuccess" to "Vorlage wurde gelöscht.",
        "billing.documentDate" to "Datum",
        "billing.downloadError" to "PDF konnte nicht heruntergeladen werden.",
        "billing.downloadPdf" to "PDF herunterladen",
        "billing.generateAndDownloadPdf" to "PDF erzeugen + herunterladen",
        "billing.generateError" to "PDF konnte nicht erzeugt werden.",
        "billing.generateOwnBilling" to "Eigene Abrechnung erzeugen",
        "billing.generatePdf" to "PDF erzeugen",
        "billing.generateSuccess" to "PDF wurde erzeugt.",
        "billing.generatingPdf" to "Erzeuge PDF...",
        "billing.hourlyRate" to "Stunden-Gehalt",
        "billing.hoursAutoHint" to "Anzahl Stunden wird automatisch aus den Trainingstagen berechnet: {hours} h ({count} Einheiten).",
        "billing.hoursTotal" to "Anzahl Stunden",
        "billing.iban" to "IBAN",
        "billing.ibanBoxesReset" to "IBAN-Boxen wurden zurückgesetzt.",
        "billing.ibanLearnCancel" to "IBAN-Lernen abbrechen",
        "billing.ibanLearnDone" to "IBAN-Boxen wurden aus dem gewählten Bereich zugewiesen.",
        "billing.ibanLearnStart" to "IBAN einlernen",
        "billing.ibanLearnStep1" to "IBAN-Lernen: bitte auf die erste zu nutzende IBAN-Box klicken.",
        "billing.ibanLearnStep2" to "IBAN-Lernen: bitte auf die letzte zu nutzende IBAN-Box klicken.",
        "billing.ibanWithoutCountry" to "ohne Länderkennung",
        "billing.locationText" to "Ort",
        "billing.mappingEditorHint" to "Feld auswählen, dann in die PDF klicken. Die Position wird direkt übernommen.",
        "billing.mappingEditorTitle" to "Felder im PDF per Klick zuweisen",
        "billing.mappingField" to "Feld",
        "billing.mappingHint" to "Koordinaten je Feld einmalig anpassen und speichern. Diese Positionen werden bei „PDF erzeugen“ verwendet.",
        "billing.mappingPreviewError" to "PDF-Vorschau für Mapping konnte nicht geladen werden.",
        "billing.mappingSaved" to "Mapping wurde gespeichert.",
        "billing.mappingSaveError" to "Mapping konnte nicht gespeichert werden.",
        "billing.mappingSuggested" to "Auto-Vorschläge wurden eingetragen. Bitte prüfen und feinjustieren.",
        "billing.mappingSuggestError" to "Auto-Vorschläge konnten nicht ermittelt werden.",
        "billing.mappingTitle" to "Positions-Mapping",
        "billing.monthFrom" to "Monat von",
        "billing.monthTo" to "Monat bis",
        "billing.noRuns" to "Noch keine Abrechnungen vorhanden.",
        "billing.noSessionsInRange" to "Keine Trainingseinheiten im gewählten Zeitraum gefunden.",
        "billing.noTemplates" to "Noch keine Vorlagen vorhanden.",
        "billing.omitField" to "nicht angeben",
        "billing.openMappingEditor" to "Mapping per Klick",
        "billing.resetIbanBoxes" to "IBAN-Boxen reset",
        "billing.runSection" to "Abrechnungslauf",
        "billing.runsTitle" to "Bisherige Abrechnungen",
        "billing.sameAccountCheckbox" to "Gleiches Konto wie letzte Abrechnung",
        "billing.saveMapping" to "Mapping speichern",
        "billing.selfRecipientName" to "Eigener Name",
        "billing.sessionHours" to "Stunden",
        "billing.sessionLabel" to "Bezeichner",
        "billing.sessionTime" to "Zeit",
        "billing.step1" to "Schritt 1: Vorlage hinterlegen",
        "billing.step2" to "Schritt 2: Abrechnungslauf anlegen",
        "billing.step3" to "Schritt 3: PDF erzeugen und herunterladen",
        "billing.subtitle" to "Erstelle deine eigene monatliche Übungsstunden-Abrechnung.",
        "billing.template" to "Vorlage",
        "billing.templateDescription" to "Beschreibung",
        "billing.templateName" to "Vorlagenname",
        "billing.templatePdf" to "PDF-Vorlage",
        "billing.templateSection" to "Vorlage hochladen",
        "billing.title" to "Abrechnung",
        "billing.uploadTemplate" to "Vorlage speichern",
        "calendar.agendaEmpty" to "Keine Termine in diesem Monat.",
        "calendar.agendaTitle" to "Termine im Monat",
        "calendar.cancelCancellation.confirm" to "Ausfall stornieren",
        "calendar.cancelCancellation.message" to "Trainingsausfall „{title}“ am {date} wirklich stornieren?",
        "calendar.cancelCancellation.title" to "Trainingsausfall stornieren",
        "calendar.cancellation.date" to "Datum",
        "calendar.cancellation.description" to "Blendet regelmäßige Trainingszeiten aus.",
        "calendar.cancellation.fallbackTitle" to "Training fällt aus",
        "calendar.cancellation.reasonPlaceholder" to "Grund (optional)",
        "calendar.cancellation.saving" to "Speichern...",
        "calendar.cancellation.submit" to "Eintragen",
        "calendar.cancellation.subtitle" to "Trainingsausfall",
        "calendar.cancellation.title" to "Training fällt aus",
        "calendar.cancellation.trainingGroups" to "Trainingsgruppen",
        "calendar.cancellation.untilOptional" to "Bis optional",
        "calendar.customEvent.categoryPlaceholder" to "Kategorie (optional)",
        "calendar.customEvent.description" to "Kreistage, Sitzungen, interne Meetings, ...",
        "calendar.customEvent.saving" to "Speichern...",
        "calendar.customEvent.submit" to "Anlegen",
        "calendar.customEvent.subtitleFallback" to "Eigener Termin",
        "calendar.customEvent.title" to "Eigene Termine",
        "calendar.customEvent.titlePlaceholder" to "Titel",
        "calendar.description" to "Trainingstage, Vereinsturniere und Punktspiele in einer Monatsansicht.",
        "calendar.eventTitles.match" to "Punktspiel",
        "calendar.eventTitles.officialTournament" to "Turnierteilnahme",
        "calendar.eventTitles.tournament" to "Turnier",
        "calendar.eventTitles.training" to "Training",
        "calendar.eyebrow" to "Vereinskalender",
        "calendar.holidayTypes.holiday" to "Feiertag",
        "calendar.holidayTypes.schoolHoliday" to "Schulferien",
        "calendar.legend.customEvent" to "Termin",
        "calendar.legend.holiday" to "Feiertag",
        "calendar.legend.match" to "Punktspiel",
        "calendar.legend.officialTournament" to "Teilnahme",
        "calendar.legend.schoolHoliday" to "Ferien",
        "calendar.legend.tournament" to "Turnier",
        "calendar.legend.training" to "Training",
        "calendar.legend.trainingCancellation" to "Ausfall",
        "calendar.loadError" to "Kalenderdaten konnten nicht geladen werden.",
        "calendar.loading" to "Kalenderdaten werden geladen...",
        "calendar.match.guest" to "Gast",
        "calendar.match.home" to "Heim",
        "calendar.noClub" to "Bitte zuerst einen Verein auswählen.",
        "calendar.options.subtitle" to "Ausfälle & eigene Termine",
        "calendar.options.title" to "Optionen",
        "calendar.participants" to "{count} Teilnehmer",
        "calendar.quickCancellation.confirm" to "Ausfall eintragen",
        "calendar.quickCancellation.message" to "„{title}“ als Trainingsausfall markieren?",
        "calendar.quickCancellation.noGroups" to "Es sind keine Trainingsgruppen mit Trainingszeiten vorhanden.",
        "calendar.quickCancellation.title" to "Trainingsausfall",
        "calendar.quickCancellation.trainingGroups" to "Betroffene Trainingsgruppen",
        "calendar.quickCancellation.useWholeRange" to "Für den gesamten Zeitraum ({start} bis {end}) eintragen",
        "calendar.recurringTrainingTime" to "Regelmäßige Trainingszeit",
        "calendar.sources.customEvents" to "Eigene Termine",
        "calendar.sources.holidays" to "Ferien/Feiertage",
        "calendar.sources.matches" to "Punktspiele",
        "calendar.sources.officialTournaments" to "Turnierteilnahmen",
        "calendar.sources.tournaments" to "Turniere",
        "calendar.sources.trainingCancellations" to "Trainingsausfälle",
        "calendar.sources.trainingDays" to "Trainingstage",
        "calendar.sources.trainingTimes" to "Trainingszeiten",
        "calendar.sourceWarning" to "{source} konnte nicht geladen werden",
        "calendar.starts" to "{count} Starts",
        "calendar.title" to "Kalender",
        "calendar.today" to "Heute",
        "calendar.tournament.club" to "Vereinsturnier",
        "calendar.tournament.open" to "Offenes Turnier",
        "calendar.weekdays.friday" to "Fr",
        "calendar.weekdays.monday" to "Mo",
        "calendar.weekdays.saturday" to "Sa",
        "calendar.weekdays.sunday" to "So",
        "calendar.weekdays.thursday" to "Do",
        "calendar.weekdays.tuesday" to "Di",
        "calendar.weekdays.wednesday" to "Mi",
        "club.accessDenied" to "Zugriff auf den Verein nicht gestattet.",
        "club.accessRequested" to "Zugriff wurde angefragt.",
        "club.accessRequestFailed" to "Zugriffsanfrage konnte nicht gestellt werden.",
        "club.accessRequestPending" to "Der Zugriff auf diesen Verein ist beantragt. Bitte haben Sie etwas Geduld.",
        "club.create" to "Verein erstellen",
        "club.createTitle" to "Verein anlegen",
        "club.diary" to "Trainingstagebuch",
        "club.errorLoadingRequests" to "Fehler beim Laden der offenen Anfragen",
        "club.load" to "Laden",
        "club.members" to "Mitglieder",
        "club.mobileSelectHint" to "Bitte wähle zuerst einen Verein aus, um die App auf dem Smartphone zu nutzen.",
        "club.name" to "Vereinsname",
        "club.new" to "Neuer Verein",
        "club.noAccess" to "Für diesen Verein wurde Dir noch kein Zugriff gestattet.",
        "club.openAccessRequests" to "Offene Anfragen auf Zugriff",
        "club.openRequests" to "Offene Anfragen auf Zugriff",
        "club.requestAccess" to "Zugriff beantragen",
        "club.select" to "Verein auswählen",
        "club.selectPlaceholder" to "Verein wählen...",
        "club.title" to "Verein",
        "club.trainingDiary" to "Trainingstagebuch",
        "clubSettings.associationMemberNumber" to "Verbands-Mitgliedsnummer",
        "clubSettings.associationMemberNumberPlaceholder" to "z. B. 12-3456",
        "clubSettings.autoFetchRankings" to "Ranglisten automatisch abrufen",
        "clubSettings.greetingHint" to "Dieser Text erscheint im Reiter \"Begrüßung\" des Spielberichtsbogens.",
        "clubSettings.greetingPlaceholder" to "Begrüßungstext für Heimspiele...",
        "clubSettings.greetingText" to "Begrüßungstext",
        "clubSettings.guestPlayers" to "Spieler und Doppel Gastmannschaft",
        "clubSettings.guestTeam" to "Name Gastmannschaft",
        "clubSettings.homePlayers" to "Spieler und Doppel Heimmannschaft",
        "clubSettings.homeTeam" to "Name Heimmannschaft",
        "clubSettings.loadFailed" to "Einstellungen konnten nicht geladen werden",
        "clubSettings.memberDataQuality" to "Datenqualität Mitglieder",
        "clubSettings.memberDataQualityHint" to "Diese Felder zählen auf der Mitgliederseite als nötig. Alle Felder bleiben weiterhin eingebbar.",
        "clubSettings.myTischtennisFedNickname" to "Verbandskürzel",
        "clubSettings.myTischtennisFedNicknamePlaceholder" to "z. B. HeTTV",
        "clubSettings.myTischtennisRankings" to "myTischtennis TTR/QTTR-Ranglisten",
        "clubSettings.myTischtennisRankingsHint" to "Automatischer Abruf der Vereins-Rangliste für TTR- und QTTR-Updates der Mitglieder.",
        "clubSettings.noClubSelected" to "Bitte wählen Sie zuerst einen Verein aus.",
        "clubSettings.placeholders" to "Platzhalter",
        "clubSettings.rankingsUsesAssociationNumber" to "Die Vereinsnummer für den Ranglisten-Abruf entspricht der Verbands-Mitgliedsnummer oben.",
        "clubSettings.requireCity" to "Ort nötig",
        "clubSettings.requireEmail" to "E-Mail-Adresse nötig",
        "clubSettings.requirePhone" to "Telefonnummer nötig",
        "clubSettings.requirePostalCode" to "PLZ nötig",
        "clubSettings.requireStreet" to "Straße nötig",
        "clubSettings.save" to "Speichern",
        "clubSettings.saved" to "Gespeichert",
        "clubSettings.saveFailed" to "Speichern fehlgeschlagen",
        "clubSettings.settings" to "Einstellungen",
        "clubSettings.title" to "Vereins-Einstellungen",
        "clubSettings.trainingGroups" to "Trainingsgruppen",
        "clubSettings.trainingTimes" to "Trainingszeiten",
        "common.actions" to "Aktionen",
        "common.active" to "Aktiv",
        "common.add" to "Hinzufügen",
        "common.all" to "Alle",
        "common.apply" to "Anwenden",
        "common.back" to "Zurück",
        "common.cancel" to "Abbrechen",
        "common.choose" to "Wählen",
        "common.clear" to "Löschen",
        "common.close" to "Schließen",
        "common.confirm" to "Bestätigen",
        "common.create" to "Erstellen",
        "common.date" to "Datum",
        "common.days" to "Tage",
        "common.delete" to "Löschen",
        "common.description" to "Beschreibung",
        "common.details" to "Details",
        "common.disabled" to "Deaktiviert",
        "common.download" to "herunterladen",
        "common.edit" to "Bearbeiten",
        "common.enabled" to "Aktiviert",
        "common.filter" to "Filter",
        "common.hours" to "Stunden",
        "common.in" to "in",
        "common.inactive" to "Inaktiv",
        "common.loading" to "Lade...",
        "common.min" to "Min",
        "common.minutes" to "Minuten",
        "common.months" to "Monate",
        "common.move" to "Verschieben",
        "common.name" to "Name",
        "common.new" to "Neu",
        "common.next" to "Weiter",
        "common.no" to "Nein",
        "common.ok" to "OK",
        "common.optional" to "Optional",
        "common.period" to "Zeitraum",
        "common.previous" to "Zurück",
        "common.refresh" to "Neu laden",
        "common.remove" to "Entfernen",
        "common.required" to "Erforderlich",
        "common.reset" to "Zurücksetzen",
        "common.save" to "Speichern",
        "common.saved" to "Gespeichert",
        "common.saving" to "Speichere...",
        "common.search" to "Suchen",
        "common.select" to "Auswählen",
        "common.status" to "Status",
        "common.submit" to "Absenden",
        "common.time" to "Zeit",
        "common.today" to "Heute",
        "common.type" to "Typ",
        "common.update" to "Aktualisieren",
        "common.view" to "Anzeigen",
        "common.weeks" to "Wochen",
        "common.years" to "Jahre",
        "common.yes" to "Ja",
        "courtDrawing.cancel" to "Abbrechen",
        "courtDrawing.durationMinutes" to "Dauer (Minuten)",
        "courtDrawing.durationText" to "Dauer (Text)",
        "courtDrawing.durationTextPlaceholder" to "z.B. 2x5",
        "courtDrawing.group" to "Gruppe",
        "courtDrawing.ok" to "OK",
        "courtDrawing.selectGroup" to "Gruppe auswählen...",
        "courtDrawing.title" to "Tischtennis-Übung konfigurieren",
        "courtDrawingRender.animationRunning" to "Animation läuft...",
        "courtDrawingRender.startAnimation" to "Animation starten",
        "courtDrawingTool.addStroke" to "Schlag hinzufügen",
        "courtDrawingTool.backhand" to "Rückhand",
        "courtDrawingTool.codeLabel" to "Kürzel",
        "courtDrawingTool.completeFirstStroke" to "1. Schlag vervollständigen",
        "courtDrawingTool.completeFirstStrokeHint" to "Wähle Startposition, Schlagseite, Rotation und Ziel. Danach erscheint die grafische Darstellung.",
        "courtDrawingTool.configureExercise" to "Übung konfigurieren",
        "courtDrawingTool.counterSpin" to "Gegenläufer",
        "courtDrawingTool.forehand" to "Vorhand",
        "courtDrawingTool.noAdditionalStrokes" to "Noch keine Folgeschläge angelegt.",
        "courtDrawingTool.preview" to "Vorschau",
        "courtDrawingTool.previewHint" to "Die Grafik erscheint, sobald der erste Schlag vollständig gesetzt ist.",
        "courtDrawingTool.service" to "Aufschlag:",
        "courtDrawingTool.serviceTitle" to "Aufschlag",
        "courtDrawingTool.sidespin" to "Seitschnitt",
        "courtDrawingTool.sideUnderspin" to "Seitunterschnitt",
        "courtDrawingTool.spin" to "Schnitt:",
        "courtDrawingTool.startLeft" to "links",
        "courtDrawingTool.startMiddle" to "mitte",
        "courtDrawingTool.startRight" to "rechts",
        "courtDrawingTool.stepAdditionalStrokes" to "4. Folgeschläge",
        "courtDrawingTool.stepAdditionalStrokesHint" to "Optional weitere Bälle als Liste aufbauen.",
        "courtDrawingTool.stepFirstStroke" to "2. 1. Schlag",
        "courtDrawingTool.stepFirstStrokeHint" to "Schlagseite und Rotation für den ersten Ball festlegen.",
        "courtDrawingTool.stepStartPosition" to "1. Startposition",
        "courtDrawingTool.stepStartPositionHint" to "Aus welcher Aufschlagposition startet die Übung?",
        "courtDrawingTool.stepTarget" to "3. Ziel",
        "courtDrawingTool.stepTargetHint" to "Zielzone für den ersten Schlag auswählen.",
        "courtDrawingTool.strokeSide" to "Seite",
        "courtDrawingTool.strokeTypeBlock" to "Block",
        "courtDrawingTool.strokeTypeChopDefense" to "Schnittabwehr",
        "courtDrawingTool.strokeTypeCounter" to "Konter",
        "courtDrawingTool.strokeTypeFlip" to "Flip",
        "courtDrawingTool.strokeTypeLabel" to "Schlagart",
        "courtDrawingTool.strokeTypeLobDefense" to "Ballonabwehr",
        "courtDrawingTool.strokeTypePush" to "Schupf",
        "courtDrawingTool.strokeTypeSmash" to "Schuss",
        "courtDrawingTool.strokeTypeTopspin" to "Topspin",
        "courtDrawingTool.targetBackhandHalfLong" to "Rückhand halblang",
        "courtDrawingTool.targetBackhandLong" to "Rückhand lang",
        "courtDrawingTool.targetBackhandShort" to "Rückhand kurz",
        "courtDrawingTool.targetForehandHalfLong" to "Vorhand halblang",
        "courtDrawingTool.targetForehandLong" to "Vorhand lang",
        "courtDrawingTool.targetForehandShort" to "Vorhand kurz",
        "courtDrawingTool.targetMiddleHalfLong" to "Mitte halblang",
        "courtDrawingTool.targetMiddleLong" to "Mitte lang",
        "courtDrawingTool.targetMiddleShort" to "Mitte kurz",
        "courtDrawingTool.targetPosition" to "Zielposition:",
        "courtDrawingTool.targetPositionLabel" to "Zielposition",
        "courtDrawingTool.title" to "Tischtennis-Übungszeichnung",
        "courtDrawingTool.titleLabel" to "Titel",
        "courtDrawingTool.topspin" to "Überschnitt",
        "courtDrawingTool.toTarget" to "nach",
        "courtDrawingTool.underspin" to "Unterschnitt",
        "createClub.clubExists" to "Der Verein existiert bereits.",
        "createClub.clubName" to "Name des Vereins:",
        "createClub.create" to "Verein anlegen",
        "createClub.nameRequired" to "Bitte gib dem Verein einen aussagekräftigen Namen.",
        "createClub.title" to "Verein anlegen",
        "createClub.unknownError" to "Ein unbekannter Fehler ist aufgetreten. Bitte versuchen Sie es erneut.",
        "csvImport.cancel" to "Abbrechen",
        "csvImport.import" to "Importieren",
        "csvImport.title" to "Spielplan importieren",
        "csvImport.uploadCsvFile" to "CSV-Datei hochladen",
        "dialogExamples.composableConfirmDetails" to "Dies ist ein Beispiel für das useConfirm Composable.",
        "dialogExamples.composableConfirmMessage" to "Möchten Sie fortfahren?",
        "dialogExamples.composableConfirmTitle" to "useConfirm Beispiel",
        "dialogExamples.composableDialogText" to "Dieser Dialog verwendet das useDialog Composable.",
        "dialogExamples.composableDialogText2" to "Das macht die Verwaltung einfacher!",
        "dialogExamples.composableDialogTitle" to "Dialog mit useDialog Composable",
        "dialogExamples.composableUsage" to "Composable-Verwendung",
        "dialogExamples.confirmDeleteMessage" to "Möchten Sie diesen Eintrag wirklich löschen?",
        "dialogExamples.confirmDeleteTitle" to "Löschen bestätigen",
        "dialogExamples.confirmDialogs" to "Bestätigungs-Dialoge",
        "dialogExamples.confirmWarningDetails" to "Diese Aktion kann nicht rückgängig gemacht werden.",
        "dialogExamples.confirmWarningMessage" to "Sind Sie sicher, dass Sie fortfahren möchten?",
        "dialogExamples.error" to "Fehler",
        "dialogExamples.errorDetails" to "Bitte versuchen Sie es später erneut.",
        "dialogExamples.errorMessage" to "Ein Fehler ist aufgetreten.",
        "dialogExamples.fullscreenModal" to "Fullscreen Modal",
        "dialogExamples.fullscreenModalText" to "Dies ist ein Fullscreen-Dialog.",
        "dialogExamples.fullscreenModalText2" to "Er nimmt fast den gesamten Bildschirm ein (90vw x 90vh).",
        "dialogExamples.fullscreenModalTitle" to "Fullscreen Modal Dialog",
        "dialogExamples.info" to "Info",
        "dialogExamples.infoDialogs" to "Informations-Dialoge",
        "dialogExamples.infoMessage" to "Dies ist eine Informationsmeldung.",
        "dialogExamples.information" to "Information",
        "dialogExamples.largeModal" to "Großer Modal",
        "dialogExamples.largeModalText" to "Dies ist ein großer modaler Dialog.",
        "dialogExamples.largeModalText2" to "Er bietet mehr Platz für Inhalte.",
        "dialogExamples.largeModalTitle" to "Großer Modal Dialog",
        "dialogExamples.minimizedDialogs" to "Minimierte Dialoge:",
        "dialogExamples.modalDialogs" to "Modale Dialoge",
        "dialogExamples.multipleDialogs" to "Mehrere Dialoge",
        "dialogExamples.nonModalDialog" to "Nicht-modaler Dialog",
        "dialogExamples.nonModalDialogs" to "Nicht-modale Dialoge",
        "dialogExamples.nonModalText" to "Dies ist ein nicht-modaler Dialog.",
        "dialogExamples.nonModalText2" to "Sie können ihn verschieben und mehrere gleichzeitig öffnen!",
        "dialogExamples.nonModalTitle" to "Nicht-modaler Dialog",
        "dialogExamples.scrollArea" to "Scroll-Bereich für viel Inhalt...",
        "dialogExamples.secondNonModalText" to "Noch ein nicht-modaler Dialog!",
        "dialogExamples.secondNonModalTitle" to "Zweiter nicht-modaler Dialog",
        "dialogExamples.simpleModal" to "Einfacher Modal",
        "dialogExamples.simpleModalText" to "Dies ist ein einfacher modaler Dialog mit mittlerer Größe.",
        "dialogExamples.simpleModalText2" to "Klicken Sie außerhalb oder auf das X, um zu schließen.",
        "dialogExamples.simpleModalTitle" to "Einfacher Modal Dialog",
        "dialogExamples.success" to "Erfolg",
        "dialogExamples.successDetails" to "Alle Änderungen wurden gespeichert.",
        "dialogExamples.successMessage" to "Der Vorgang wurde erfolgreich abgeschlossen!",
        "dialogExamples.title" to "Dialog-Beispiele",
        "dialogExamples.useConfirmExample" to "useConfirm Beispiel",
        "dialogExamples.useDialogExample" to "useDialog Beispiel",
        "dialogExamples.warning" to "Warnung",
        "dialogExamples.warningDetails" to "Einige Felder sind möglicherweise nicht vollständig ausgefüllt.",
        "dialogExamples.warningMessage" to "Bitte beachten Sie folgende Hinweise.",
        "dialogManager.close" to "Schließen",
        "dialogManager.minimize" to "Minimieren",
        "dialogManager.noMinimizedDialogs" to "Keine minimierten Dialoge",
        "dialogs.confirm.cancel" to "Abbrechen",
        "dialogs.confirm.ok" to "OK",
        "dialogs.confirm.title" to "Bestätigung",
        "dialogs.info.ok" to "OK",
        "dialogs.info.title" to "Information",
        "diary.activeTrainingDay" to "Aktiver Trainingstag",
        "diary.activities" to "Aktivitäten",
        "diary.activity" to "Aktivität",
        "diary.activityDrawing" to "Aktivitätszeichnung",
        "diary.activityImage" to "Aktivitätsbild",
        "diary.activityNotFound" to "Aktivität nicht gefunden. Bitte wählen Sie eine aus der Liste aus.",
        "diary.activityOrTimeblock" to "Aktivität / Zeitblock",
        "diary.activityPlaceholder" to "Aktivität",
        "diary.activityRequired" to "Bitte geben Sie eine Aktivität ein.",
        "diary.addActivity" to "Aktivität hinzufügen",
        "diary.addGroup" to "Gruppe hinzufügen",
        "diary.addGroupActivity" to "Gruppen-Aktivität hinzufügen",
        "diary.addGroupButton" to "+ Gruppe",
        "diary.addTimeblock" to "Zeitblock",
        "diary.all" to "Alle",
        "diary.applySuggestion" to "Vorschlag übernehmen",
        "diary.assignParticipants" to "Teilnehmer zuordnen",
        "diary.assignParticipantsForGroupActivity" to "Teilnehmer für Gruppen-Aktivität zuordnen",
        "diary.assignShort" to "Zuordnen",
        "diary.bookAccident" to "Unfall buchen",
        "diary.confirmDelete" to "Löschen bestätigen",
        "diary.confirmDeleteDate" to "Möchten Sie dieses Datum wirklich löschen?",
        "diary.confirmDeleteDateDetails" to "Alle zugehörigen Daten werden ebenfalls gelöscht.",
        "diary.confirmDeleteGroup" to "Möchten Sie die Gruppe \"{name}\" wirklich löschen?",
        "diary.createDate" to "Datum anlegen",
        "diary.createDrawing" to "Übungszeichnung erstellen",
        "diary.createGroups" to "Gruppen erstellen",
        "diary.createNew" to "Neu anlegen",
        "diary.createNewDate" to "Neues Datum anlegen",
        "diary.date" to "Datum",
        "diary.dateCannotBeDeleted" to "Datum kann nicht gelöscht werden",
        "diary.dateCannotBeDeletedDetails" to "Es sind noch Inhalte vorhanden (Trainingplan, Teilnehmer, Aktivitäten, Unfälle oder Notizen).",
        "diary.dateNoLongerCurrent" to "Ausgewähltes Datum war nicht mehr aktuell. Bitte erneut versuchen.",
        "diary.delete" to "Löschen",
        "diary.deleteDate" to "Datum löschen",
        "diary.deleteGroup" to "Gruppe löschen",
        "diary.duration" to "Dauer",
        "diary.durationExampleLong" to "z.B. 2x7 oder 3*5",
        "diary.durationExampleShort" to "z.B. 2x7",
        "diary.durationMinutes" to "Dauer (Min)",
        "diary.editActivity" to "Aktivität bearbeiten",
        "diary.editGroupActivity" to "Gruppen-Aktivität bearbeiten",
        "diary.editTrainingTimes" to "Trainingszeiten bearbeiten",
        "diary.errorCreatingActivity" to "Fehler beim Erstellen der Aktivität",
        "diary.errorCreatingGroups" to "Fehler beim Erstellen der Gruppen",
        "diary.errorDeletingGroup" to "Fehler beim Löschen der Gruppe",
        "diary.errorLoadingPredefinedActivities" to "Fehler beim Laden der vordefinierten Aktivitäten",
        "diary.errorMarkingForm" to "Fehler beim Markieren des Mitgliedsformulars",
        "diary.errorOccurred" to "Ein Fehler ist aufgetreten. Bitte versuchen Sie es erneut.",
        "diary.existingGroups" to "Vorhandene Gruppen",
        "diary.filterAbsent" to "Abwesend",
        "diary.filterAll" to "Alle",
        "diary.filterExcused" to "Entschuldigt",
        "diary.filterPresent" to "Anwesend",
        "diary.filterTest" to "Probe",
        "diary.formHandedOver" to "Mitgliedsformular ausgehändigt",
        "diary.formMarkedAsHandedOver" to "Mitgliedsformular als ausgehändigt markiert",
        "diary.freeActivities" to "Freie Aktivitäten",
        "diary.gallery" to "Mitglieder-Galerie",
        "diary.galleryCreating" to "Galerie wird erstellt…",
        "diary.group" to "Gruppe...",
        "diary.groupDeletedSuccessfully" to "Gruppe wurde erfolgreich gelöscht!",
        "diary.groupManagement" to "Gruppenverwaltung",
        "diary.groupsCreated" to "{count} Gruppen wurden erfolgreich erstellt!",
        "diary.groupsLabel" to "Gruppen",
        "diary.groupsSection" to "Gruppen",
        "diary.leader" to "Leiter",
        "diary.min" to "Min",
        "diary.minutes" to "Minuten",
        "diary.mustCreateAtLeastTwoGroups" to "Beim ersten Erstellen müssen mindestens 2 Gruppen erstellt werden!",
        "diary.nextAppointment" to "Nächster Termin",
        "diary.noActiveTrainingDay" to "Kein Trainingstag ausgewählt.",
        "diary.noEntries" to "Keine Einträge",
        "diary.noFreeActivitiesYet" to "Noch keine freien Aktivitäten erfasst.",
        "diary.noParticipants" to "Keine Teilnehmer für diesen Trainingstag vorhanden.",
        "diary.numberOfGroups" to "Anzahl Gruppen",
        "diary.oneGroupAdded" to "1 Gruppe wurde erfolgreich hinzugefügt!",
        "diary.openPlanItems" to "{count} offen",
        "diary.openPlanItemsLabel" to "Plan-Status",
        "diary.overallActivity" to "Gesamt-Aktivität",
        "diary.participants" to "Teilnehmer",
        "diary.participantStatusCancelled" to "Abgesagt",
        "diary.participantStatusExcused" to "Entschuldigt",
        "diary.participantStatusNone" to "Kein Status",
        "diary.planActivitiesCount" to "Plan-Aktivitäten",
        "diary.planAddHint" to "Neue Plan-Elemente fügst du über die Aktionen oben hinzu.",
        "diary.planEmptyState" to "Im Trainingsplan ist noch nichts eingetragen.",
        "diary.quickAdd" to "+ Schnell hinzufügen",
        "diary.quickCreate" to "Schnellanlegen",
        "diary.quickCreateFailed" to "Der Trainingstag konnte nicht angelegt werden.",
        "diary.quickCreateNoSlot" to "Kein freier Trainingstermin gefunden (gemäß Gruppenzeiten, ein Jahr voraus).",
        "diary.searchParticipants" to "Teilnehmer suchen",
        "diary.selectGroup" to "Gruppe auswählen...",
        "diary.selectGroupAndActivity" to "Bitte wählen Sie eine Gruppe und geben Sie eine Aktivität ein.",
        "diary.selectParticipantAndNote" to "Bitte wählen Sie einen Teilnehmer aus und geben Sie einen Notiztext ein.",
        "diary.selectTags" to "Tags auswählen",
        "diary.selectTrainingGroup" to "Trainingsgruppe auswählen",
        "diary.selectTrainingGroupPlaceholder" to "Bitte wählen...",
        "diary.showImage" to "Bild/Zeichnung anzeigen",
        "diary.skipSuggestion" to "Ohne Vorschlag fortfahren",
        "diary.standardActivities" to "Standard-Aktivitäten",
        "diary.standardActivityAddError" to "Standard-Aktivität konnte nicht hinzugefügt werden.",
        "diary.standardDurationShort" to "Min",
        "diary.startTime" to "Startzeit",
        "diary.statusEmpty" to "Dieser Trainingstag ist noch leer.",
        "diary.statusInProgress" to "Dieser Trainingstag ist teilweise vorbereitet.",
        "diary.statusOpenShort" to "Offen",
        "diary.statusReady" to "Zeiten und Trainingsplan sind gepflegt.",
        "diary.statusReadyShort" to "Bereit",
        "diary.suggestion" to "Vorschlag",
        "diary.timeblock" to "Zeitblock",
        "diary.timeblocksCount" to "Zeitblöcke",
        "diary.title" to "Trainingstagebuch",
        "diary.today" to "Heute",
        "diary.trainingDayAsPDF" to "Trainingstag als PDF herunterladen",
        "diary.trainingDayAsPDFShort" to "Trainingstag als PDF",
        "diary.trainingDayChecklist" to "Abschlusscheck",
        "diary.trainingDaySection" to "Trainingstag",
        "diary.trainingDaySummaryPdfShort" to "Teilnehmerübersicht als PDF",
        "diary.trainingEnd" to "Trainingsende",
        "diary.trainingPlan" to "Trainingsplan",
        "diary.trainingPlanAsPDF" to "Trainingsplan als PDF",
        "diary.trainingPlanPdfShort" to "Ablaufplan als PDF",
        "diary.trainingStart" to "Trainingsbeginn",
        "diary.trainingTimesUpdated" to "Trainingszeiten erfolgreich aktualisiert.",
        "diary.trainingWindow" to "Trainingsfenster",
        "diary.trainingWindowUnset" to "Noch nicht gesetzt",
        "diary.unassignedPlanItems" to "{count} offen",
        "diary.updateTimes" to "Zeiten aktualisieren",
        "errors.ERROR_ACTIVITY_IMAGE_DELETE_FAILED" to "Fehler beim Löschen des Bildes",
        "errors.ERROR_BAD_REQUEST" to "Ungültige Anfrage.",
        "errors.ERROR_CLUB_ALREADY_EXISTS" to "Der Verein existiert bereits.",
        "errors.ERROR_CLUB_NAME_REQUIRED" to "Bitte gib dem Verein einen aussagekräftigen Namen.",
        "errors.ERROR_CLUB_NAME_TOO_SHORT" to "Bitte gib dem Verein einen aussagekräftigen Namen.",
        "errors.ERROR_CLUB_NOT_FOUND" to "Verein nicht gefunden.",
        "errors.ERROR_DIARY_ACTIVITY_PARTICIPANTS_UPDATE_FAILED" to "Fehler beim Aktualisieren der Aktivitäts-Teilnehmer",
        "errors.ERROR_DIARY_ASSIGN_ALL_PARTICIPANTS_FAILED" to "Fehler beim Zuordnen aller Teilnehmer",
        "errors.ERROR_DIARY_ASSIGN_GROUP_FAILED" to "Fehler beim Zuordnen der Gruppe",
        "errors.ERROR_DIARY_DATE_NOT_FOUND" to "Datum nicht gefunden.",
        "errors.ERROR_DIARY_DATE_UPDATED" to "Datum war nicht (mehr) vorhanden. Die Datums-Auswahl wurde aktualisiert. Bitte erneut versuchen.",
        "errors.ERROR_DIARY_GROUP_ASSIGNMENT_UPDATE_FAILED" to "Fehler beim Aktualisieren der Gruppenzuordnung",
        "errors.ERROR_DIARY_IMAGE_LOAD_FAILED" to "Bild konnte nicht geladen werden.",
        "errors.ERROR_DIARY_MEMBER_CREATE_FAILED" to "Fehler beim Erstellen des Mitglieds",
        "errors.ERROR_DIARY_NO_EXERCISE_DATA" to "Keine Übungsdaten erhalten",
        "errors.ERROR_DIARY_NO_PARTICIPANTS" to "Keine Teilnehmer für diesen Trainingstag vorhanden.",
        "errors.ERROR_DIARY_PARTICIPANT_ASSIGN_FAILED" to "Teilnehmer konnte nicht zugeordnet werden.",
        "errors.ERROR_DIARY_PARTICIPANT_GROUP_ASSIGNMENT_UPDATE_FAILED" to "Fehler beim Aktualisieren der Teilnehmer-Gruppenzuordnung",
        "errors.ERROR_DIARY_PDF_GENERATION_FAILED" to "Fehler beim Generieren des PDFs.",
        "errors.ERROR_DIARY_STATS_LOAD_FAILED" to "Fehler beim Laden der Statistiken.",
        "errors.ERROR_FORBIDDEN" to "Zugriff verweigert.",
        "errors.ERROR_GROUP_ALREADY_EXISTS" to "Eine Gruppe mit diesem Namen existiert bereits.",
        "errors.ERROR_GROUP_CANNOT_RENAME_PRESET" to "Vorgaben-Gruppen können nicht umbenannt werden.",
        "errors.ERROR_GROUP_INVALID_PRESET_TYPE" to "Ungültiger Preset-Typ.",
        "errors.ERROR_GROUP_NAME_REQUIRED" to "Bitte geben Sie einen Gruppennamen ein.",
        "errors.ERROR_GROUP_NOT_FOUND" to "Gruppe nicht gefunden.",
        "errors.ERROR_INTERNAL_SERVER_ERROR" to "Ein interner Serverfehler ist aufgetreten.",
        "errors.ERROR_INVALID_PASSWORD" to "Ungültiges Passwort.",
        "errors.ERROR_LOG_NOT_FOUND" to "Log-Eintrag nicht gefunden.",
        "errors.ERROR_LOGIN_FAILED" to "Login fehlgeschlagen.",
        "errors.ERROR_MEMBER_ALREADY_EXISTS" to "Mitglied existiert bereits.",
        "errors.ERROR_MEMBER_FIRSTNAME_REQUIRED" to "Vorname ist erforderlich.",
        "errors.ERROR_MEMBER_LASTNAME_REQUIRED" to "Nachname ist erforderlich.",
        "errors.ERROR_MEMBER_NOT_FOUND" to "Mitglied nicht gefunden.",
        "errors.ERROR_MEMBER_TRANSFER_BULK_FAILED" to "Fehler bei der Bulk-Übertragung: {message}",
        "errors.ERROR_MYTISCHTENNIS_ACCOUNT_NOT_LINKED" to "Kein myTischtennis-Account verknüpft.",
        "errors.ERROR_MYTISCHTENNIS_CAPTCHA_REQUIRED" to "CAPTCHA erforderlich. MyTischtennis verwendet jetzt ein CAPTCHA beim Login. Bitte loggen Sie sich einmal direkt auf mytischtennis.de ein, um das CAPTCHA zu lösen, oder kontaktieren Sie den Support.",
        "errors.ERROR_MYTISCHTENNIS_INVALID_PASSWORD" to "Ungültiges myTischtennis-Passwort.",
        "errors.ERROR_MYTISCHTENNIS_LOGIN_FAILED" to "myTischtennis-Login fehlgeschlagen. Bitte überprüfen Sie Ihre Zugangsdaten.",
        "errors.ERROR_MYTISCHTENNIS_NO_PASSWORD_SAVED" to "Kein Passwort gespeichert und Session abgelaufen. Bitte Passwort eingeben.",
        "errors.ERROR_MYTISCHTENNIS_PASSWORD_NOT_SAVED" to "Kein Passwort gespeichert. Bitte geben Sie Ihr Passwort ein.",
        "errors.ERROR_MYTISCHTENNIS_SESSION_EXPIRED" to "Session abgelaufen. Bitte erneut einloggen.",
        "errors.ERROR_MYTISCHTENNIS_USER_NOT_FOUND" to "myTischtennis-Benutzer nicht gefunden.",
        "errors.ERROR_NOT_FOUND" to "Nicht gefunden.",
        "errors.ERROR_OFFICIAL_TOURNAMENT_PDF_UPLOAD" to "Fehler beim Hochladen der PDF.",
        "errors.ERROR_SESSION_EXPIRED" to "Sitzung abgelaufen.",
        "errors.ERROR_TEAM_LINK_TO_LEAGUE_REQUIRED" to "Bitte ordnen Sie dem Team zuerst eine Liga zu, damit Dokumente verarbeitet werden können.",
        "errors.ERROR_TEAM_NOT_LINKED_TO_LEAGUE" to "Dieses Team ist keiner Liga zugeordnet.",
        "errors.ERROR_TEAM_PDF_LOAD_FAILED" to "Fehler beim Laden des PDFs",
        "errors.ERROR_TEAM_STATS_LOAD_FAILED" to "Statistiken konnten nicht geladen werden.",
        "errors.ERROR_TOURNAMENT_CLASS_NAME_REQUIRED" to "Bitte geben Sie einen Klassennamen ein!",
        "errors.ERROR_TOURNAMENT_NO_DATE" to "Kein Turnierdatum vorhanden!",
        "errors.ERROR_TOURNAMENT_NO_PARTICIPANTS" to "Keine Teilnehmer im Trainingstag für dieses Datum gefunden!",
        "errors.ERROR_TOURNAMENT_NO_TRAINING_DAY" to "Kein Trainingstag für {date} gefunden!",
        "errors.ERROR_TOURNAMENT_NO_VALID_PARTICIPANTS" to "Keine gültigen Teilnehmer im Trainingstag für dieses Datum gefunden!",
        "errors.ERROR_TOURNAMENT_NOT_FOUND" to "Turnier nicht gefunden.",
        "errors.ERROR_TOURNAMENT_PDF_GENERATION_FAILED" to "Fehler beim Generieren des PDFs",
        "errors.ERROR_TOURNAMENT_SELECT_FIRST" to "Bitte wählen Sie zuerst ein Turnier aus.",
        "errors.ERROR_TRAINING_STATS_LOAD_FAILED" to "Fehler beim Laden der Trainings-Statistik",
        "errors.ERROR_UNAUTHORIZED" to "Nicht autorisiert.",
        "errors.ERROR_UNKNOWN_ERROR" to "Ein unbekannter Fehler ist aufgetreten.",
        "errors.ERROR_USER_NOT_FOUND" to "Benutzer nicht gefunden.",
        "errors.ERROR_VALIDATION_FAILED" to "Validierung fehlgeschlagen.",
        "errors.SUCCESS_DIARY_GROUP_ASSIGNMENT_UPDATED" to "Gruppenzuordnung aktualisiert",
        "errors.SUCCESS_DIARY_MEMBER_CREATED" to "Mitglied \"{name}\" wurde erfolgreich erstellt und hinzugefügt!",
        "errors.SUCCESS_OFFICIAL_TOURNAMENT_PDF_UPLOAD" to "PDF erfolgreich hochgeladen.",
        "home.authenticatedFeatures.keepDiary" to "Trainingstagebuch führen",
        "home.authenticatedFeatures.keepDiaryDesc" to "Dokumentiere Trainingsaktivitäten, Teilnehmer, Aktivitäten und Notizen für jeden Trainingstag.",
        "home.authenticatedFeatures.manageMembers" to "Mitglieder verwalten",
        "home.authenticatedFeatures.manageMembersDesc" to "Verwalte deine Vereinsmitglieder, erstelle Trainingsgruppen und behalte den Überblick über alle Teilnehmer.",
        "home.authenticatedFeatures.manageTournaments" to "Turniere verwalten",
        "home.authenticatedFeatures.manageTournamentsDesc" to "Erstelle interne und offene Turniere, importiere offizielle Turniere und verwalte Teilnahmen.",
        "home.authenticatedFeatures.myTischtennisIntegration" to "MyTischtennis-Integration",
        "home.authenticatedFeatures.myTischtennisIntegrationDesc" to "Synchronisiere automatisch Spielergebnisse und Statistiken mit MyTischtennis.de.",
        "home.authenticatedFeatures.pdfExport" to "PDF-Export",
        "home.authenticatedFeatures.pdfExportDesc" to "Exportiere Trainingstage als PDF mit Teilnehmern, Aktivitäten und Statistiken.",
        "home.authenticatedFeatures.statistics" to "Statistiken & Auswertungen",
        "home.authenticatedFeatures.statisticsDesc" to "Erhalte detaillierte Trainings- und Teilnahmeübersichten sowie Aktivitätsstatistiken.",
        "home.authenticatedFeatures.teamManagement" to "Team-Management",
        "home.authenticatedFeatures.teamManagementDesc" to "Verwalte Mannschaften, Ligen, Spielpläne und Ergebnisse für deinen Verein.",
        "home.authenticatedFeatures.trainingGroups" to "Trainingsgruppen & Zeiten",
        "home.authenticatedFeatures.trainingGroupsDesc" to "Organisiere Trainingsgruppen, definiere Trainingszeiten und verwalte Gruppenzuordnungen.",
        "home.faq" to "Häufige Fragen",
        "home.faqFree.answer" to "Ja, du kannst kostenlos starten. Erweiterungen können später folgen.",
        "home.faqFree.question" to "Ist die Nutzung kostenlos?",
        "home.faqInstallation.answer" to "Nein, es handelt sich um eine Web‑Anwendung. Du nutzt sie direkt im Browser – auf Desktop, Tablet und Smartphone.",
        "home.faqInstallation.question" to "Benötige ich eine Installation?",
        "home.faqMyTischtennis.answer" to "Ja, nach der Einrichtung synchronisiert sich die Anwendung automatisch mit MyTischtennis.de und importiert Spielergebnisse und Statistiken.",
        "home.faqMyTischtennis.question" to "Funktioniert die MyTischtennis-Integration automatisch?",
        "home.faqPermissions.answer" to "Es gibt vier Rollen: Admin, Trainer, Mannschaftsführer und Mitglied. Jede Rolle hat spezifische Berechtigungen, die individuell angepasst werden können.",
        "home.faqPermissions.question" to "Wie funktioniert das Berechtigungssystem?",
        "home.faqPrivacy.answer" to "Wir setzen auf Datensparsamkeit, transparente Freigaben, rollenbasierte Zugriffe und vollständiges Aktivitätsprotokoll. Die Anwendung ist DSGVO‑konform.",
        "home.faqPrivacy.question" to "Wie steht es um den Datenschutz?",
        "home.faqTournaments.answer" to "Du kannst interne Turniere, offene Turniere und offizielle Turniere (z.B. von Verbänden) verwalten. Offizielle Turniere können importiert werden.",
        "home.faqTournaments.question" to "Welche Turnierarten werden unterstützt?",
        "home.faqTrainingGroups.answer" to "Ja, du kannst Trainingsgruppen anlegen, Trainingszeiten definieren und Mitglieder den Gruppen zuordnen. Das Trainingstagebuch schlägt automatisch passende Gruppen und Zeiten vor.",
        "home.faqTrainingGroups.question" to "Kann ich Trainingsgruppen und -zeiten verwalten?",
        "home.features.activityLog" to "Aktivitätsprotokoll",
        "home.features.activityLogDesc" to "Vollständiges Logging aller Aktionen für Transparenz und Nachvollziehbarkeit.",
        "home.features.keepDiary" to "Trainingstagebuch führen",
        "home.features.keepDiaryDesc" to "Dokumentiere Inhalte, Umfang und Anwesenheiten jeder Einheit – nachvollziehbar und strukturiert.",
        "home.features.manageMembers" to "Mitglieder verwalten",
        "home.features.manageMembersDesc" to "Erstelle Mitgliedsprofile, bilde Gruppen und halte Kontakt‑ und Freigabestände aktuell.",
        "home.features.myTischtennisIntegration" to "MyTischtennis-Integration",
        "home.features.myTischtennisIntegrationDesc" to "Automatische Synchronisation mit MyTischtennis.de für Spielergebnisse und Statistiken.",
        "home.features.officialTournaments" to "Offizielle Turniere",
        "home.features.officialTournamentsDesc" to "Importiere und verwalte offizielle Turniere, verwalte Teilnahmen und Ergebnisse.",
        "home.features.organizeSchedules" to "Spielpläne organisieren",
        "home.features.organizeSchedulesDesc" to "Plane Spiele, Turniere und Veranstaltungen inklusive Gruppen, Runden und Ergebnissen.",
        "home.features.pdfExport" to "PDF-Export",
        "home.features.pdfExportDesc" to "Exportiere Trainingstage als PDF mit Teilnehmern, Aktivitäten und Statistiken.",
        "home.features.permissionSystem" to "Berechtigungssystem",
        "home.features.permissionSystemDesc" to "Rollenbasierte Zugriffe (Admin, Trainer, Mannschaftsführer, Mitglied) mit individuellen Berechtigungen.",
        "home.features.predefinedActivities" to "Vordefinierte Aktivitäten",
        "home.features.predefinedActivitiesDesc" to "Nutze Vorlagen für wiederkehrende Übungen und beschleunige deine Dokumentation.",
        "home.features.security" to "Sicherheit & DSGVO",
        "home.features.securityDesc" to "Datenschutzfreundliche Architektur, Freigaben durch Mitglieder und transparente Zugriffe.",
        "home.features.statistics" to "Statistiken & Auswertung",
        "home.features.statisticsDesc" to "Erhalte Trainings‑ und Teilnahmeübersichten, erkenne Entwicklung und plane gezielt.",
        "home.features.teamManagement" to "Team-Management",
        "home.features.teamManagementDesc" to "Verwalte Mannschaften, Ligen, Spielpläne und Ergebnisse für deinen Verein.",
        "home.features.trainingGroups" to "Trainingsgruppen & Zeiten",
        "home.features.trainingGroupsDesc" to "Organisiere Trainingsgruppen, definiere Trainingszeiten und verwalte Gruppenzuordnungen.",
        "home.forWhom" to "Für wen ist das TrainingsTagebuch?",
        "home.forWhomText" to "Das TrainingsTagebuch ist die umfassende Plattform für Vereine, Abteilungen und Trainerteams. Es vereint Mitgliederverwaltung mit Trainingsgruppen und -zeiten, detailliertes Trainingstagebuch, umfassende Turnierorganisation (interne, offene und offizielle Turniere), Team-Management mit Liga-Integration, MyTischtennis-Synchronisation, aussagekräftige Statistiken und Auswertungen sowie ein flexibles Berechtigungssystem in einer modernen Web‑Anwendung. Durch klare Rollen (Admin, Trainer, Mannschaftsführer, Mitglied) und individuelle Berechtigungen behalten Verantwortliche die Kontrolle, während Mitglieder selbstbestimmt mitwirken können. Ideal für Mannschafts‑, Racket‑ und Individualsportarten – vom Nachwuchs bis zum Leistungsbereich. DSGVO‑konform mit transparenten Freigaben und vollständigem Aktivitätsprotokoll.",
        "home.haveAccount" to "Ich habe schon einen Account",
        "home.heroFeatures.memberManagement" to "Mitglieder- und Gruppenverwaltung",
        "home.heroFeatures.myTischtennis" to "MyTischtennis-Integration",
        "home.heroFeatures.statistics" to "Statistiken & Auswertungen",
        "home.heroFeatures.teamManagement" to "Team-Management & Ligen",
        "home.heroFeatures.tournaments" to "Turniere (intern, offen, offiziell)",
        "home.heroFeatures.trainingDiary" to "Trainingstagebuch & Dokumentation",
        "home.heroFeatures.trainingGroups" to "Trainingsgruppen & Trainingszeiten",
        "home.heroSubtitle" to "Das TrainingsTagebuch ist die umfassende Lösung für Vereine: Mitgliederverwaltung, Trainingsgruppen, Trainingszeiten, Trainingstagebuch, Turnierorganisation, Team-Management, MyTischtennis-Integration, Statistiken und mehr – DSGVO‑konform und einfach zu bedienen.",
        "home.heroTitle" to "Vereinsverwaltung, Trainingsplanung und Turniere – alles an einem Ort",
        "home.howItWorks" to "So funktioniert es",
        "home.registerNow" to "Jetzt kostenlos registrieren",
        "home.rolesAndPrivacy" to "Rollen, Berechtigungen & DSGVO",
        "home.startFree" to "Kostenlos starten",
        "home.step1.description" to "Lege kostenlos einen Account an und aktiviere ihn per E‑Mail.",
        "home.step1.title" to "Registrieren",
        "home.step2.description" to "Erstelle deinen Verein, lade Mitglieder ein und richte Gruppen ein.",
        "home.step2.title" to "Verein anlegen",
        "home.step3.description" to "Plane Termine, dokumentiere Trainings und verfolge Fortschritte.",
        "home.step3.title" to "Planen & dokumentieren",
        "home.welcome" to "Willkommen im TrainingsTagebuch",
        "home.welcomeBack" to "Herzlich Willkommen zurück! Du bist erfolgreich eingeloggt.",
        "home.whatCanYouDo" to "Was kannst du mit dem TrainingsTagebuch machen?",
        "imageDialog.close" to "Schließen",
        "imageDialog.noImageAvailable" to "Kein Bild verfügbar",
        "imageDialog.title" to "Bild",
        "imageViewer.camera" to "Kamera",
        "imageViewer.delete" to "Löschen",
        "imageViewer.deleteImage" to "Bild löschen",
        "imageViewer.nextImage" to "Nächstes Bild",
        "imageViewer.noImageAvailable" to "Kein Bild verfügbar",
        "imageViewer.previousImage" to "Vorheriges Bild",
        "imageViewer.rotateLeft" to "90° links drehen",
        "imageViewer.rotateRight" to "90° rechts drehen",
        "imageViewer.selectFiles" to "Dateien auswählen",
        "imageViewer.setAsPrimary" to "Als Hauptbild festlegen",
        "imageViewer.setAsPrimaryButton" to "Als Hauptbild setzen",
        "imprint.contact" to "Kontakt",
        "imprint.serviceProvider" to "Diensteanbieter",
        "imprint.title" to "Impressum",
        "languages.de" to "Deutsch",
        "languages.de-CH" to "Schwiizerdütsch (Schweizer Deutsch)",
        "languages.en-AU" to "English (Englisch (AU))",
        "languages.en-GB" to "English (Englisch (GB))",
        "languages.en-US" to "English (Englisch (US))",
        "languages.es" to "Español (Spanisch)",
        "languages.fil" to "Filipino (Filipino)",
        "languages.fr" to "Français (Französisch)",
        "languages.it" to "Italiano (Italienisch)",
        "languages.ja" to "日本語 (Japanisch)",
        "languages.pl" to "Polski (Polnisch)",
        "languages.th" to "ไทย (Thai)",
        "languages.tl" to "Tagalog (Tagalog)",
        "languages.zh" to "中文 (Chinesisch)",
        "legal.backToHome" to "Zur Startseite",
        "legal.imprint" to "Impressum",
        "legal.privacyPolicy" to "Datenschutzerklärung",
        "logs.actions" to "Aktionen",
        "logs.all" to "Alle",
        "logs.apiRequests" to "API-Requests",
        "logs.applyFilters" to "Filter anwenden",
        "logs.backend" to "Backend",
        "logs.clearFilters" to "Zurücksetzen",
        "logs.cronJobs" to "Cron-Jobs",
        "logs.details" to "Details",
        "logs.displayed" to "angezeigt",
        "logs.displayedLabel" to "Angezeigt",
        "logs.error" to "Fehler",
        "logs.errorLabel" to "Fehler",
        "logs.errorLoading" to "Fehler beim Laden der Logs",
        "logs.executionTime" to "Ausführungszeit",
        "logs.from" to "Von",
        "logs.httpMethod" to "HTTP-Methode",
        "logs.justNow" to "gerade eben",
        "logs.loadingLogs" to "Lade Logs...",
        "logs.logDetails" to "Log-Details",
        "logs.logDetailsLabels.error" to "Fehler",
        "logs.logDetailsLabels.executionTime" to "Ausführungszeit",
        "logs.logDetailsLabels.ip" to "IP",
        "logs.logDetailsLabels.method" to "Methode",
        "logs.logDetailsLabels.path" to "Pfad",
        "logs.logDetailsLabels.requestBody" to "Request Body",
        "logs.logDetailsLabels.responseBody" to "Response Body",
        "logs.logDetailsLabels.schedulerJob" to "Scheduler-Job",
        "logs.logDetailsLabels.status" to "Status",
        "logs.logDetailsLabels.time" to "Zeit",
        "logs.logDetailsLabels.type" to "Typ",
        "logs.logType" to "Log-Typ",
        "logs.logTypeLabels.api_request" to "API-Request",
        "logs.logTypeLabels.cron_job" to "Cron-Job",
        "logs.logTypeLabels.manual" to "Manuell",
        "logs.logTypeLabels.scheduler" to "Scheduler",
        "logs.manual" to "Manuelle Ausführungen",
        "logs.method" to "Methode",
        "logs.minutesAgo" to "vor {n} Minuten",
        "logs.mytischtennis" to "myTischtennis",
        "logs.next" to "Nächste",
        "logs.of" to "von",
        "logs.ownBackend" to "Eigenes Backend",
        "logs.page" to "Seite",
        "logs.path" to "Pfad",
        "logs.pathPlaceholder" to "z.B. /api/diary",
        "logs.previous" to "Vorherige",
        "logs.recordsFound" to "Datensätze gefunden",
        "logs.scheduler" to "Scheduler",
        "logs.secondsAgo" to "vor {n} Sekunden",
        "logs.status" to "Status",
        "logs.subtitle" to "Übersicht über alle API-Requests, Responses und Ausführungen",
        "logs.successfullyLoaded" to "Erfolgreich geladen",
        "logs.time" to "Zeit",
        "logs.title" to "System-Logs",
        "logs.to" to "Bis",
        "logs.total" to "Gesamt",
        "logs.type" to "Typ",
        "matchReport.analyzeNuscore" to "nuscore analysieren",
        "matchReport.createLocalCopy" to "Lokale Kopie erstellen",
        "matchReport.hideAnalyzer" to "Analyzer verstecken",
        "matchReportApi.availablePlayers" to "Verfügbare Spieler",
        "matchReportApi.bothTeamsAppeared" to "Beide Mannschaften angetreten",
        "matchReportApi.clickToRemove" to "Klicken zum Entfernen",
        "matchReportApi.completed" to "Abgeschlossen",
        "matchReportApi.completion" to "Abschluss",
        "matchReportApi.endTime" to "Endzeit",
        "matchReportApi.errorLoading" to "Fehler beim Laden der Daten",
        "matchReportApi.general" to "Allgemein",
        "matchReportApi.greeting" to "Begrüßung",
        "matchReportApi.guestLineup" to "Aufstellung Gast",
        "matchReportApi.guestPin" to "PIN Gastverein",
        "matchReportApi.guestTeamNotAppeared" to "Gastmannschaft {team} nicht angetreten",
        "matchReportApi.homeLineup" to "Aufstellung Heim",
        "matchReportApi.homePin" to "PIN Heimverein",
        "matchReportApi.homeTeamNotAppeared" to "Heimmannschaft {team} nicht angetreten",
        "matchReportApi.loading" to "Lade Spielberichtsdaten...",
        "matchReportApi.noLineupData" to "Keine Aufstellungsdaten verfügbar",
        "matchReportApi.notAppeared" to "Nicht angetreten",
        "matchReportApi.pending" to "Ausstehend",
        "matchReportApi.pinInput" to "PIN-Eingabe",
        "matchReportApi.playSystem" to "Spielsystem",
        "matchReportApi.rank" to "Rang",
        "matchReportApi.result" to "Ergebniserfassung",
        "matchReportApi.retry" to "Erneut versuchen",
        "matchReportApi.selectedPlayers" to "Ausgewählte Spieler",
        "matchReportApi.setCurrentTime" to "Aktuelle Zeit setzen",
        "matchReportApi.signLineup" to "Aufstellung signieren",
        "matchReportApi.startTime" to "Startzeit",
        "matchReportApi.status" to "Status",
        "matchReportApi.vs" to "vs",
        "matchReportHeaderActions.copied" to "Kopiert!",
        "matchReportHeaderActions.copyError" to "Fehler beim Kopieren der PIN",
        "matchReportHeaderActions.copyPin" to "PIN kopieren",
        "matchReportHeaderActions.copyPinTitle" to "PIN in Zwischenablage kopieren",
        "matchReportHeaderActions.insertPin" to "PIN einfügen",
        "matchReportHeaderActions.insertPinTitle" to "PIN automatisch einfügen",
        "matchReportHeaderActions.noPinAvailable" to "Keine PIN verfügbar",
        "memberActivities.activity" to "Übung",
        "memberActivities.all" to "Alle",
        "memberActivities.close" to "Schließen",
        "memberActivities.dates" to "Daten",
        "memberActivities.frequency" to "Häufigkeit",
        "memberActivities.last3Months" to "Letzte 3 Monate",
        "memberActivities.last4Weeks" to "Letzte 4 Wochen",
        "memberActivities.last6Months" to "Letztes halbes Jahr",
        "memberActivities.lastYear" to "Letztes Jahr",
        "memberActivities.loading" to "Lade Übungen...",
        "memberActivities.more" to "weitere",
        "memberActivities.noActivities" to "Keine Übungen im gewählten Zeitraum gefunden.",
        "memberActivities.period" to "Zeitraum",
        "memberActivities.showLess" to "weniger anzeigen",
        "memberActivities.title" to "Übungen von",
        "memberGallery.imageSize" to "Bildgröße",
        "memberGallery.loading" to "Galerie wird geladen…",
        "memberGallery.noImage" to "Kein Bild",
        "memberGallery.noMembersWithImages" to "Keine Mitglieder mit Bildern gefunden.",
        "memberGallery.title" to "Mitglieder-Galerie",
        "memberGallery.titleWithDate" to "Mitglieder-Galerie - Klicken Sie auf ein Bild, um als Teilnehmer hinzuzufügen",
        "memberNotes.add" to "Hinzufügen",
        "memberNotes.memberImage" to "Mitgliedsbild",
        "memberNotes.newNote" to "Neue Notiz",
        "memberNotes.notes" to "Notizen",
        "memberNotes.phone" to "Telefon-Nr.",
        "memberNotes.selectTags" to "Tags auswählen",
        "memberNotes.tags" to "Tags",
        "memberNotes.title" to "Notizen für",
        "members.actions" to "Aktionen",
        "members.active" to "Aktiv",
        "members.activeMembers" to "Aktive Mitglieder",
        "members.addEmail" to "E-Mail-Adresse hinzufügen",
        "members.addGroup" to "Gruppe hinzufügen...",
        "members.addPhone" to "Telefonnummer hinzufügen",
        "members.address" to "Adresse",
        "members.adultReleaseApproved" to "Freigabe Erwachsene",
        "members.adultReserveApproved" to "Ersatz bei Erwachsenen",
        "members.adults" to "Erwachsene (18+)",
        "members.age" to "Alter",
        "members.ageFromPlaceholder" to "von",
        "members.ageGroup" to "Altersklasse",
        "members.ageRange" to "Alter von - bis",
        "members.ageToPlaceholder" to "bis",
        "members.batchFormsMarkedEmpty" to "In der aktuellen Auswahl gibt es keine ungeprüften Formulare.",
        "members.batchFormsMarkedSuccess" to "{count} Formular(e) als geprüft markiert.",
        "members.batchMarkedRegularEmpty" to "In der aktuellen Auswahl gibt es keine Probe-Mitglieder.",
        "members.batchMarkedRegularSuccess" to "{count} Probe-Mitglied(er) als regulär markiert.",
        "members.batchPartialFailure" to "{success} erfolgreich, {failed} fehlgeschlagen.",
        "members.birthdate" to "Geburtsdatum",
        "members.bulkActions" to "Sammelaktionen",
        "members.camera" to "Kamera",
        "members.change" to "Ändern",
        "members.city" to "Ort",
        "members.clearFields" to "Felder leeren",
        "members.clearFilters" to "Filter zurücksetzen",
        "members.clickTtRequestAction" to "Spielberechtigung in click-TT beantragen",
        "members.clickTtRequestConfirm" to "Soll für {name} der automatisierte Click-TT-Antrag gestartet werden?",
        "members.clickTtRequestError" to "Der Click-TT-Antrag konnte nicht eingereicht werden.",
        "members.clickTtRequestFailedLog" to "Click-TT-Antrag fehlgeschlagen",
        "members.clickTtRequestHint" to "Der Antrag wird im Backend automatisiert durch den Click-TT-Workflow geführt.",
        "members.clickTtRequestPending" to "Click-TT-Antrag läuft",
        "members.clickTtRequestPendingShort" to "Läuft ...",
        "members.clickTtRequestShort" to "Click-TT",
        "members.clickTtRequestSuccess" to "Bitte loggen Sie sich noch auf click-tt ein und senden Sie den Antrag ab.",
        "members.clickTtRequestTitle" to "Click-TT-Antrag starten",
        "members.clickTtSubmitted" to "Click-TT gestellt",
        "members.closeEditor" to "Editor schließen",
        "members.composeEmail" to "E-Mail vorbereiten",
        "members.contact" to "Kontakt",
        "members.copyContactSummary" to "Kontaktübersicht kopieren",
        "members.copyContactSummarySuccess" to "Kontaktübersicht in die Zwischenablage kopiert.",
        "members.copyEmails" to "E-Mails kopieren",
        "members.copyEmailsEmpty" to "In der aktuellen Auswahl gibt es keine E-Mail-Adressen.",
        "members.copyEmailsSuccess" to "E-Mail-Liste in die Zwischenablage kopiert.",
        "members.copyPhones" to "Telefone kopieren",
        "members.copyPhonesEmpty" to "In der aktuellen Auswahl gibt es keine Telefonnummern.",
        "members.copyPhonesSuccess" to "Telefonliste in die Zwischenablage kopiert.",
        "members.create" to "Anlegen",
        "members.createNewMember" to "Neues Mitglied anlegen",
        "members.dataIssueAddress" to "Adresse fehlt",
        "members.dataIssueBirthdate" to "Geburtsdatum fehlt",
        "members.dataIssueCity" to "Ort fehlt",
        "members.dataIssueEmail" to "E-Mail fehlt",
        "members.dataIssueGender" to "Geschlecht ungeklärt",
        "members.dataIssuePhone" to "Telefon fehlt",
        "members.dataIssuePostalCode" to "PLZ fehlt",
        "members.dataIssueStreet" to "Straße fehlt",
        "members.dataIssueTrainingGroup" to "Trainingsgruppe fehlt",
        "members.dataQuality" to "Datenqualität",
        "members.dataQualityComplete" to "Daten vollständig",
        "members.deactivateMember" to "Mitglied deaktivieren",
        "members.deactivateMemberConfirm" to "Möchten Sie \"{name}\" wirklich deaktivieren?",
        "members.deactivateMemberTitle" to "Mitglied deaktivieren",
        "members.deleteImageConfirm" to "Möchten Sie dieses Bild wirklich löschen?",
        "members.deleteImageTitle" to "Bild löschen",
        "members.editHint" to "Ein Klick auf eine Zeile öffnet den Editor.",
        "members.editMember" to "Mitglied bearbeiten",
        "members.editorAssignTrainingGroupHint" to "Bitte mindestens eine Trainingsgruppe zuordnen.",
        "members.editorCreateHint" to "Neues Mitglied anlegen und Kontaktdaten direkt erfassen.",
        "members.editorEditHint" to "Daten von {name} bearbeiten.",
        "members.editorRecommendedEntry" to "Empfohlener Eintrag",
        "members.emailAddress" to "E-Mail-Adresse",
        "members.emailAddressShort" to "Email-Adresse",
        "members.emails" to "E-Mail-Adressen",
        "members.errorAddingToGroup" to "Fehler beim Hinzufügen zur Gruppe",
        "members.errorDeactivatingMember" to "Fehler beim Deaktivieren des Mitglieds",
        "members.errorDeletingImage" to "Bild konnte nicht gelöscht werden",
        "members.errorLoadingImage" to "Fehler beim Laden des Bildes",
        "members.errorLoadingMembers" to "Laden der Mitgliederliste fehlgeschlagen.",
        "members.errorLoadingTrainingParticipations" to "Fehler beim Laden der Trainingsteilnahmen",
        "members.errorMarkingForm" to "Fehler beim Markieren des Formulars.",
        "members.errorRemovingFromGroup" to "Fehler beim Entfernen aus der Gruppe",
        "members.errorRemovingTestMembership" to "Fehler beim Entfernen der Testmitgliedschaft.",
        "members.errorRotatingImage" to "Fehler beim Drehen des Bildes",
        "members.errorSavingMember" to "Fehler beim Speichern des Mitglieds",
        "members.errorSettingPrimaryImage" to "Hauptbild konnte nicht gesetzt werden",
        "members.errorTransfer" to "Fehler bei der Übertragung",
        "members.errorUpdatingRatings" to "Fehler beim Aktualisieren der TTR/QTTR-Werte",
        "members.errorUploadingImage" to "Bild konnte nicht hochgeladen werden",
        "members.exercises" to "Übungen",
        "members.exportCsv" to "CSV exportieren",
        "members.exportCsvFile" to "mitglieder-auswahl.csv",
        "members.exportEmails" to "E-Mail",
        "members.exportMembersSelected" to "Mitglieder aktuell ausgewählt",
        "members.exportPhones" to "Telefon",
        "members.exportPreview" to "Exportvorschau",
        "members.exportPreviewEmpty" to "Keine Mitglieder in der aktuellen Auswahl",
        "members.exportPreviewNames" to "Vorschau",
        "members.exportReachableByEmail" to "mit E-Mail-Adresse",
        "members.exportReachableByPhone" to "mit Telefonnummer",
        "members.firstName" to "Vorname",
        "members.formHandedOver" to "Mitgliedsformular ausgehändigt",
        "members.formMarkedAsHandedOver" to "Mitgliedsformular als ausgehändigt markiert.",
        "members.gender" to "Geschlecht",
        "members.genderDiverse" to "Divers",
        "members.genderFemale" to "Weiblich",
        "members.genderMale" to "Männlich",
        "members.genderUnknown" to "Unbekannt",
        "members.generatePhoneList" to "Telefonliste generieren",
        "members.groupPhotoCrop" to "Gruppenfoto verarbeiten",
        "members.groupPhotoCropSaved" to "Mitgliedsfoto aus Gruppenfoto gespeichert.",
        "members.image" to "Bild",
        "members.imageDeleted" to "Bild wurde gelöscht.",
        "members.imageInternet" to "Bild (Inet?)",
        "members.imagePreview" to "Vorschau des Mitgliedsbildes",
        "members.imageUpdated" to "Bild wurde aktualisiert",
        "members.inactive" to "inaktiv",
        "members.inactiveMembers" to "Inaktive Mitglieder",
        "members.j11" to "J11",
        "members.j13" to "J13",
        "members.j15" to "J15",
        "members.j17" to "J17 (17 und jünger)",
        "members.j19" to "J19",
        "members.j9" to "J9",
        "members.lastName" to "Nachname",
        "members.lastTrainingFilter" to "Letztes Training",
        "members.lastTrainingFilterHasDate" to "Mit erfasstem Datum",
        "members.lastTrainingFilterHint" to "AK-Spalte: laufende und nächste Saison. Weitere Details (letztes Training, Teilnahmen) auch beim Überfahren der Zeile.",
        "members.lastTrainingFilterNoDate" to "Ohne letztes Training",
        "members.lastTrainingFilterNotInTraining" to "„Nicht mehr im Training“",
        "members.loadingMembers" to "Lade Mitglieder...",
        "members.m11" to "M11",
        "members.m13" to "M13",
        "members.m15" to "M15",
        "members.m19" to "M19",
        "members.m9" to "M9",
        "members.markFormReceived" to "Formular geprüft",
        "members.markFormsForSelection" to "Formulare für Auswahl prüfen",
        "members.markRegular" to "Als regulär markieren",
        "members.markRegularForSelection" to "Auswahl als regulär markieren",
        "members.memberDeactivated" to "Mitglied deaktiviert",
        "members.memberDetails" to "Mitgliedsdetails",
        "members.memberFormHandedOver" to "Mitgliedsformular ausgehändigt",
        "members.memberImage" to "Mitgliedsbild",
        "members.memberImages" to "Mitgliedsbilder",
        "members.memberInfo" to "Mitglieder-Info",
        "members.memberScope" to "Mitgliedsbereich",
        "members.missingTtrHistoryId" to "Keine myTischtennis-ID hinterlegt",
        "members.name" to "Name, Vorname",
        "members.newMember" to "Neues Mitglied",
        "members.noAddressShort" to "Keine Adresse",
        "members.noEmailShort" to "Keine E-Mail",
        "members.noGroupsAssigned" to "Keine Gruppen zugeordnet",
        "members.noGroupsAvailable" to "Keine Gruppen verfügbar",
        "members.noOpenTasks" to "Keine offenen Aufgaben",
        "members.noPhoneShort" to "Kein Telefon",
        "members.notes" to "Notizen",
        "members.noTestMembership" to "Keine Testmitgliedschaft mehr",
        "members.notInTrainingTooltip" to "Seit {weeks} Trainingswochen ohne Teilnahme",
        "members.onlyActiveMembers" to "Es werden nur aktive Mitglieder ausgegeben",
        "members.openTasks" to "Offene Aufgaben",
        "members.parent" to "Elternteil",
        "members.parentFallback" to "Elternteil",
        "members.parentName" to "Name (z.B. Mutter, Vater)",
        "members.phoneList" to "Telefonliste.pdf",
        "members.phoneListForSelection" to "Telefonliste für Auswahl",
        "members.phoneListSelectionFile" to "Telefonliste-Auswahl.pdf",
        "members.phoneNumber" to "Telefonnummer",
        "members.phoneNumberShort" to "Telefon-Nr.",
        "members.phones" to "Telefonnummern",
        "members.picsInInternetAllowed" to "Pics in Internet erlaubt",
        "members.postalCode" to "PLZ",
        "members.previewLastTraining" to "Letztes Training",
        "members.previewNoLastTraining" to "Noch keine Teilnahme",
        "members.primary" to "Primär",
        "members.primaryImageUpdated" to "Hauptbild wurde aktualisiert.",
        "members.remove" to "Entfernen",
        "members.resultsVisible" to "Mitglieder sichtbar",
        "members.rowTooltipSeparator" to "·",
        "members.scopeActive" to "Aktiv",
        "members.scopeActiveDataIncomplete" to "Aktiv + Daten unvollständig",
        "members.scopeActiveTest" to "Aktiv + Probe",
        "members.scopeAll" to "Alle",
        "members.scopeDataIncomplete" to "Daten unvollständig",
        "members.scopeInactive" to "Inaktiv",
        "members.scopeNeedsForm" to "Formular ungeprüft",
        "members.scopeNotTraining" to "Nicht mehr im Training",
        "members.scopeTest" to "Probe",
        "members.search" to "Suche",
        "members.searchAndFilter" to "Suche und Filter",
        "members.searchPlaceholder" to "Name, Ort, Telefon oder E-Mail suchen",
        "members.selectFile" to "Datei auswählen",
        "members.showInactiveMembers" to "Inaktive Mitglieder anzeigen",
        "members.showTrainingParticipationsColumn" to "Spalte „Trainingsteilnahmen“ anzeigen",
        "members.showTtrHistory" to "TTR-Historie anzeigen",
        "members.sixOrMoreParticipations" to "6 oder mehr Trainingsteilnahmen",
        "members.sortAge" to "Alter",
        "members.sortBirthday" to "Geburtstag",
        "members.sortBy" to "Sortieren nach",
        "members.sortFirstName" to "Vorname",
        "members.sortLastName" to "Nachname",
        "members.sortLastTraining" to "Letztes Training",
        "members.sortOpenTasks" to "Offene Aufgaben",
        "members.sortQttr" to "QTTR-Wert",
        "members.status" to "Status",
        "members.street" to "Straße",
        "members.subtitle" to "Mitglieder suchen, filtern und direkt bearbeiten.",
        "members.taskActionMarkRegular" to "Regulär setzen",
        "members.taskActionRequest" to "Anfragen",
        "members.taskActionReview" to "Öffnen",
        "members.taskActionVerify" to "Prüfen",
        "members.taskAssignTrainingGroup" to "Trainingsgruppe zuordnen",
        "members.taskCheckClickTt" to "Click-TT-Spielberechtigung prüfen",
        "members.taskCheckDataQuality" to "Datenqualität prüfen",
        "members.taskCheckTrainingStatus" to "Trainingsstatus prüfen",
        "members.taskReviewTrialStatus" to "Probe-Status prüfen",
        "members.taskVerifyForm" to "Formular prüfen",
        "members.testMember" to "Testm.",
        "members.testMembers" to "Testmitglieder",
        "members.testMembership" to "Testmitgliedschaft",
        "members.testMembershipRemoved" to "Testmitgliedschaft entfernt.",
        "members.threeOrMoreParticipations" to "3 oder mehr Trainingsteilnahmen",
        "members.title" to "Mitglieder",
        "members.toggleSortDirection" to "Sortierrichtung wechseln",
        "members.trainingGroups" to "Trainingsgruppen",
        "members.trainingParticipations" to "Trainingsteilnahmen",
        "members.transferErrorTitle" to "Fehler bei der Übertragung",
        "members.transferMembers" to "Mitglieder übertragen",
        "members.transferSuccessTitle" to "Übertragung erfolgreich",
        "members.ttAdult" to "Erwachsene (kein Jugend nach Stichtag)",
        "members.ttAgeClassCol" to "AK (TT)",
        "members.ttFilterGroupJ" to "Mädchen & Jungen (gemischt)",
        "members.ttFilterGroupM" to "Mädchen (nur weiblich)",
        "members.ttrQttr" to "TTR / QTTR",
        "members.ttSeasonCurrentTag" to "aktuell",
        "members.ttSeasonFilter" to "Saison (Stichtag)",
        "members.ttSeasonNextTag" to "kommend",
        "members.ttStichtagHint" to "Stichtag 1.1. (DTTB). Jungen: nur J-Klassen. Mädchen: J und M möglich.",
        "members.updateRatings" to "TTR/QTTR von myTischtennis aktualisieren",
        "members.updating" to "Aktualisiere...",
        "members.visibleMembers" to "Sichtbare Mitglieder",
        "members.wantsToPlay" to "Will spielen",
        "memberSelection.close" to "Schließen",
        "memberSelection.deselectAll" to "Alle abwählen",
        "memberSelection.generatePdf" to "PDF erzeugen",
        "memberSelection.members" to "Mitglieder",
        "memberSelection.noRecommendations" to "Keine passenden Empfehlungen gefunden.",
        "memberSelection.recommendations" to "Empfehlungen",
        "memberSelection.selectAll" to "Alle auswählen",
        "memberSelection.title" to "Mitglieder auswählen",
        "memberTransfer.additionalField" to "Zusätzliches Feld",
        "memberTransfer.additionalFieldExample1" to "Zusätzliches Feld (z.B. client_id)",
        "memberTransfer.additionalFieldExample2" to "Zusätzliches Feld (z.B. client_secret)",
        "memberTransfer.analyzeAndImport" to "Template analysieren und importieren",
        "memberTransfer.availablePlaceholders" to "Verfügbare Platzhalter",
        "memberTransfer.bulkMode" to "Bulk-Import-Modus (alle Mitglieder auf einmal übertragen)",
        "memberTransfer.bulkModeActive" to "Bulk-Modus aktiv",
        "memberTransfer.bulkModeActiveDescription" to "Das Template definiert das Format für ein einzelnes Mitglied. Die Mitglieder werden automatisch in ein Array gewrappt. Die äußere Struktur können Sie optional im \"Bulk-Wrapper-Template\" definieren (siehe unten).",
        "memberTransfer.bulkModeHint" to "Wenn aktiviert, werden alle Mitglieder in einem Request als Array übertragen.",
        "memberTransfer.bulkWrapperDescription" to "Optional können Sie die äußere Struktur definieren, in die die Mitglieder-Array eingefügt wird. Verwenden Sie PLACEHOLDER_MEMBERS als Platzhalter für das Array der Mitglieder.",
        "memberTransfer.bulkWrapperNote" to "Hinweis: Wenn kein Wrapper-Template angegeben wird, wird automatisch ein members-Array verwendet.",
        "memberTransfer.bulkWrapperTemplate" to "Bulk-Wrapper-Template (optional)",
        "memberTransfer.bulkWrapperWhat" to "Was ist ein Bulk-Wrapper-Template?",
        "memberTransfer.configDeleted" to "Konfiguration erfolgreich gelöscht!",
        "memberTransfer.configInfo" to "Konfigurieren Sie hier die Einstellungen für die Übertragung von Mitgliedern an externe Systeme. Diese Einstellungen werden vereinsspezifisch gespeichert.",
        "memberTransfer.configSaved" to "Konfiguration erfolgreich gespeichert!",
        "memberTransfer.confirmDelete" to "Konfiguration löschen",
        "memberTransfer.confirmDeleteMessage" to "Möchten Sie die Konfiguration wirklich löschen?",
        "memberTransfer.deleteConfig" to "Konfiguration löschen",
        "memberTransfer.deleting" to "Lösche...",
        "memberTransfer.errorDeleting" to "Fehler beim Löschen",
        "memberTransfer.errorLoading" to "Fehler beim Laden der Konfiguration",
        "memberTransfer.errorParsingTemplate" to "Fehler beim Parsen des Templates",
        "memberTransfer.errorSaving" to "Fehler beim Speichern",
        "memberTransfer.example" to "Beispiel",
        "memberTransfer.exampleFormData" to "Beispiel für Form-Data Format",
        "memberTransfer.exampleJson" to "Beispiel für JSON-Format (empfohlen)",
        "memberTransfer.exampleXml" to "Beispiel für XML-Format",
        "memberTransfer.formDataHint" to "Für Form-Data verwenden Sie ein einfaches Text-Template mit Zeilen im Format feldname=platzhalter:",
        "memberTransfer.httpMethod" to "HTTP-Methode",
        "memberTransfer.importTemplate" to "Template aus vollständigem Beispiel importieren",
        "memberTransfer.importTemplateHint" to "Fügen Sie ein vollständiges Beispiel-Template (mit Beispiel-Mitgliedern) ein. Das System erkennt automatisch das Mitglied-Template und das Bulk-Wrapper-Template.",
        "memberTransfer.importTemplatePlaceholder" to "Fügen Sie hier ein vollständiges Beispiel-Template ein, z.B.:\nLBRACE\n  DQUOTEmembersDQUOTE: [\n    LBRACE\n      DQUOTEfirstNameDQUOTE: DQUOTEMaxDQUOTE,\n      DQUOTElastNameDQUOTE: DQUOTEMustermannDQUOTE,\n      DQUOTEemailDQUOTE: DQUOTEmaxATexample.comDQUOTE\n    RBRACE\n  ]\nRBRACE",
        "memberTransfer.invalidJson" to "Bitte stellen Sie sicher, dass gültiges JSON verwendet wird.",
        "memberTransfer.invalidTemplateFormat" to "Ungültiges Template-Format",
        "memberTransfer.loadingConfig" to "Konfiguration wird geladen...",
        "memberTransfer.loginConfiguration" to "Login-Konfiguration",
        "memberTransfer.loginData" to "Login-Daten",
        "memberTransfer.loginEndpointHint" to "Optional: Relativer Pfad zum Login-Endpoint (z.B. /api/auth/login)",
        "memberTransfer.loginEndpointPath" to "Login-Endpoint Pfad",
        "memberTransfer.loginEndpointPlaceholder" to "/api/auth/login",
        "memberTransfer.loginFormat" to "Login-Format",
        "memberTransfer.membersArray" to "Mitglieder-Array",
        "memberTransfer.password" to "Passwort",
        "memberTransfer.passwordEncrypted" to "Passwörter werden verschlüsselt gespeichert",
        "memberTransfer.placeholderHint" to "Klicken Sie auf einen Platzhalter, um ihn an der aktuellen Cursor-Position einzufügen:",
        "memberTransfer.placeholders.address" to "Kombinierte Adresse",
        "memberTransfer.placeholders.addressDesc" to "Straße und Ort kombiniert",
        "memberTransfer.placeholders.birthDate" to "Geburtsdatum",
        "memberTransfer.placeholders.birthDateAlt" to "Geburtsdatum (alt)",
        "memberTransfer.placeholders.birthDateAltDesc" to "Geburtsdatum im Format YYYY-MM-DD (alternative Bezeichnung)",
        "memberTransfer.placeholders.birthDateDesc" to "Geburtsdatum im Format YYYY-MM-DD",
        "memberTransfer.placeholders.city" to "Ort",
        "memberTransfer.placeholders.cityDesc" to "Wohnort",
        "memberTransfer.placeholders.email" to "E-Mail-Adresse",
        "memberTransfer.placeholders.emailDesc" to "E-Mail-Adresse des Mitglieds",
        "memberTransfer.placeholders.firstName" to "Vorname",
        "memberTransfer.placeholders.firstNameDesc" to "Vorname des Mitglieds",
        "memberTransfer.placeholders.fullName" to "Vollständiger Name",
        "memberTransfer.placeholders.fullNameDesc" to "Vorname und Nachname kombiniert",
        "memberTransfer.placeholders.gender" to "Geschlecht",
        "memberTransfer.placeholders.genderDesc" to "Geschlecht des Mitglieds",
        "memberTransfer.placeholders.lastName" to "Nachname",
        "memberTransfer.placeholders.lastNameDesc" to "Nachname des Mitglieds",
        "memberTransfer.placeholders.phone" to "Telefonnummer",
        "memberTransfer.placeholders.phoneDesc" to "Telefonnummer des Mitglieds",
        "memberTransfer.placeholders.qttr" to "QTTR-Wert",
        "memberTransfer.placeholders.qttrDesc" to "QTTR-Wert des Mitglieds",
        "memberTransfer.placeholders.street" to "Straße",
        "memberTransfer.placeholders.streetDesc" to "Straße und Hausnummer",
        "memberTransfer.placeholders.ttr" to "TTR-Wert",
        "memberTransfer.placeholders.ttrDesc" to "TTR-Wert des Mitglieds",
        "memberTransfer.save" to "Speichern",
        "memberTransfer.saving" to "Speichere...",
        "memberTransfer.serverBaseUrl" to "Server-Basis-URL",
        "memberTransfer.serverBaseUrlHint" to "Basis-URL des Servers (z.B. https://example.com)",
        "memberTransfer.serverBaseUrlPlaceholder" to "https://example.com",
        "memberTransfer.serverConfiguration" to "Server-Konfiguration",
        "memberTransfer.templateDescription" to "Das Template definiert das Format, in dem die Mitgliederdaten an das externe System übertragen werden. Verwenden Sie Platzhalter wie PLACEHOLDER_FIRSTNAME, um die Daten automatisch zu ersetzen.",
        "memberTransfer.templateImported" to "Template erfolgreich importiert!",
        "memberTransfer.templateImportedBulk" to "Mitglied-Template erkannt, Bulk-Modus aktiviert.",
        "memberTransfer.templateImportedDetails" to "Mitglied- und Bulk-Wrapper-Template wurden erkannt und ausgefüllt.",
        "memberTransfer.templateImportedSingle" to "Einzelnes Mitglied-Template erkannt.",
        "memberTransfer.templateTip" to "Tipp: Setzen Sie den Cursor an die gewünschte Stelle im Template und klicken Sie auf einen Platzhalter, um ihn einzufügen. Platzhalter werden beim Übertragen automatisch durch die tatsächlichen Mitgliederdaten ersetzt.",
        "memberTransfer.templateWhat" to "Was ist ein Template?",
        "memberTransfer.title" to "Mitgliederübertragung - Einstellungen",
        "memberTransfer.transferConfiguration" to "Übertragungskonfiguration",
        "memberTransfer.transferConfigurationTitle" to "Übertragungs-Konfiguration",
        "memberTransfer.transferEndpointHint" to "Relativer Pfad zum Übertragungs-Endpoint (z.B. /api/members/bulk)",
        "memberTransfer.transferEndpointPath" to "Übertragungs-Endpoint Pfad",
        "memberTransfer.transferEndpointPlaceholder" to "/api/members/bulk",
        "memberTransfer.transferFormat" to "Übertragungs-Format",
        "memberTransfer.transferTemplate" to "Übertragungs-Template",
        "memberTransfer.usernameEmail" to "Benutzername / Email",
        "memberTransferDialog.additionalErrors" to "Weitere Fehler",
        "memberTransferDialog.additionalFieldPlaceholder" to "Zusätzliches Feld (z.B. client_id)",
        "memberTransferDialog.additionalFieldPlaceholderForm" to "Feldname: Wert (z.B. client_id: abc123)",
        "memberTransferDialog.bulkImport" to "Bulk-Import",
        "memberTransferDialog.cancel" to "Abbrechen",
        "memberTransferDialog.editConfig" to "Konfiguration bearbeiten",
        "memberTransferDialog.endpoint" to "Endpoint",
        "memberTransferDialog.excludedMembers" to "Ausgeschlossene Mitglieder (fehlende Pflichtfelder)",
        "memberTransferDialog.format" to "Format",
        "memberTransferDialog.goToSettings" to "Zu den Einstellungen",
        "memberTransferDialog.loadingConfig" to "Gespeicherte Konfiguration wird geladen...",
        "memberTransferDialog.loginData" to "Login-Daten",
        "memberTransferDialog.loginDataHint" to "Die Login-Daten werden aus den Einstellungen verwendet. Sie können sie hier überschreiben, falls nötig.",
        "memberTransferDialog.loginDataOverride" to "Login-Daten (optional überschreiben)",
        "memberTransferDialog.loginDataOverrideHint" to "Nur ausfüllen, wenn Sie die gespeicherten Login-Daten überschreiben möchten. Leere Felder verwenden die gespeicherten Werte.",
        "memberTransferDialog.method" to "Methode",
        "memberTransferDialog.mode" to "Modus",
        "memberTransferDialog.noConfigFound" to "Keine Konfiguration gefunden",
        "memberTransferDialog.noConfigMessage" to "Bitte konfigurieren Sie zuerst die Mitgliederübertragung in den Einstellungen.",
        "memberTransferDialog.passwordPlaceholder" to "Passwort (leer lassen für gespeichertes)",
        "memberTransferDialog.server" to "Server",
        "memberTransferDialog.single" to "Einzeln",
        "memberTransferDialog.title" to "Mitglieder übertragen",
        "memberTransferDialog.transfer" to "Übertragen",
        "memberTransferDialog.transferConfiguration" to "Übertragungskonfiguration",
        "memberTransferDialog.transferError" to "Fehler bei der Übertragung",
        "memberTransferDialog.transferFailed" to "Übertragung fehlgeschlagen",
        "memberTransferDialog.transferring" to "Übertrage...",
        "memberTransferDialog.transferSuccess" to "{transferred} von {total} Mitgliedern erfolgreich übertragen.",
        "memberTransferDialog.usernameEmail" to "Benutzername / Email",
        "messages.cancel" to "Abbrechen",
        "messages.confirm" to "Bestätigen",
        "messages.error" to "Fehler",
        "messages.fileTooLarge" to "Datei zu groß",
        "messages.imageMaxSize" to "Das Bild darf maximal 5 MB groß sein.",
        "messages.info" to "Information",
        "messages.invalidFile" to "Ungültige Datei",
        "messages.note" to "Hinweis",
        "messages.pleaseSelectImageFile" to "Bitte wähle eine Bilddatei aus.",
        "messages.recordsDisplayed" to "angezeigt",
        "messages.recordsFound" to "Datensätze gefunden",
        "messages.success" to "Erfolg",
        "messages.successfullyLoaded" to "Erfolgreich geladen",
        "messages.warning" to "Warnung",
        "mobile.active" to "Aktiv",
        "mobile.add" to "Hinzufügen",
        "mobile.appLoading" to "App wird geladen",
        "mobile.calendarAgendaEmpty" to "Keine Termine in diesem Monat.",
        "mobile.calendarAgendaTitle" to "Termine im Monat",
        "mobile.calendarAllSourcesFailed" to "Kalenderdaten konnten nicht geladen werden.",
        "mobile.calendarCancellationEnd" to "Bis optional",
        "mobile.calendarCancellationHint" to "Blendet regelmäßige Trainingszeiten an den Tagen aus.",
        "mobile.calendarCancellationInMonth" to "Ausfälle diesen Monat",
        "mobile.calendarCancellationReason" to "Grund",
        "mobile.calendarCancellationSave" to "Eintragen",
        "mobile.calendarCancellationStart" to "Datum (YYYY-MM-DD)",
        "mobile.calendarCancellationTitle" to "Training fällt aus",
        "mobile.calendarGridTitle" to "Monat",
        "mobile.calendarLegend" to "Anzeige",
        "mobile.calendarLegendCancellation" to "Ausfall",
        "mobile.calendarLegendHoliday" to "Feiertag",
        "mobile.calendarLegendMatch" to "Punktspiel",
        "mobile.calendarLegendOfficial" to "Teilnahme",
        "mobile.calendarLegendSchool" to "Ferien",
        "mobile.calendarLegendTournament" to "Turnier",
        "mobile.calendarLegendTraining" to "Training",
        "mobile.calendarSourceCancellations" to "Trainingsausfälle",
        "mobile.calendarSourceDiary" to "Tagebuch",
        "mobile.calendarSourceFailed" to "nicht geladen",
        "mobile.calendarSourceHolidays" to "Ferien/Feiertage",
        "mobile.calendarSourceMatches" to "Punktspiele",
        "mobile.calendarSourceOfficial" to "Turnierteilnahmen",
        "mobile.calendarSourceTournaments" to "Turniere",
        "mobile.calendarSourceTrainingTimes" to "Trainingszeiten",
        "mobile.calendarSubtitle" to "Training, Turniere, Spiele und Feiertage im Monat.",
        "mobile.calendarTitle" to "Kalender",
        "mobile.calendarToday" to "Heute",
        "mobile.cancel" to "Abbrechen",
        "mobile.clubRequest" to "Zugriff anfragen",
        "mobile.clubRequested" to "Angefragt",
        "mobile.createDiaryEntry" to "Eintrag erstellen",
        "mobile.deleteNote" to "Notiz löschen",
        "mobile.deleteTag" to "Tag entfernen",
        "mobile.editTimes" to "Zeiten bearbeiten",
        "mobile.emailAndPasswordRequired" to "E-Mail und Passwort sind erforderlich",
        "mobile.entry" to "Eintrag",
        "mobile.inactive" to "Inaktiv",
        "mobile.language" to "Sprache",
        "mobile.lastTraining" to "Letztes Training",
        "mobile.loginFailed" to "Login fehlgeschlagen",
        "mobile.loginInProgress" to "Anmelden...",
        "mobile.more" to "Mehr",
        "mobile.new" to "Neu",
        "mobile.newNote" to "Neue Notiz",
        "mobile.newTag" to "Neuer Tag",
        "mobile.noDiaryEntries" to "Noch keine Tagebuch-Einträge",
        "mobile.noMembers" to "Keine Mitglieder gefunden",
        "mobile.noResults" to "Keine Treffer",
        "mobile.noTimes" to "Keine Zeiten",
        "mobile.offlineCacheHint" to "Keine Verbindung – zuletzt geladene Daten.",
        "mobile.participationTop" to "Top Teilnahmen",
        "mobile.refresh" to "Aktualisieren",
        "mobile.requestedAccess" to "Angefragt",
        "mobile.role" to "Rolle",
        "mobile.saveEntry" to "Speichern",
        "mobile.search" to "Suche",
        "mobile.select" to "Auswählen",
        "mobile.sessionCheck" to "Session prüfen",
        "mobile.sessionCheckFailed" to "Session check fehlgeschlagen",
        "mobile.sessionInvalid" to "Session ungültig",
        "mobile.sessionValid" to "Session gültig",
        "mobile.status" to "Status",
        "mobile.user" to "Benutzer",
        "myTischtennis.about" to "Über myTischtennis",
        "myTischtennis.aboutFeatures.fetch" to "Wettkampfdaten direkt abrufen",
        "myTischtennis.aboutFeatures.import" to "Automatisch Turnierdaten importieren",
        "myTischtennis.aboutFeatures.sync" to "Spielerergebnisse synchronisieren",
        "myTischtennis.aboutText" to "Durch die Verknüpfung Ihres myTischtennis-Accounts können Sie:",
        "myTischtennis.autoUpdates" to "Automatische Updates",
        "myTischtennis.club" to "Verein (myTischtennis)",
        "myTischtennis.deleteAccount" to "Account trennen",
        "myTischtennis.disabled" to "Deaktiviert",
        "myTischtennis.editAccount" to "Account bearbeiten",
        "myTischtennis.enabled" to "Aktiviert",
        "myTischtennis.fetchStatistics" to "Datenabruf-Statistiken",
        "myTischtennis.lastFetch" to "Letzter Abruf",
        "myTischtennis.lastLoginAttempt" to "Letzter Login-Versuch",
        "myTischtennis.lastSuccessfulLogin" to "Letzter erfolgreicher Login",
        "myTischtennis.leagueTables" to "Ligatabellen",
        "myTischtennis.linkAccount" to "Account verknüpfen",
        "myTischtennis.linkedAccount" to "Verknüpfter Account",
        "myTischtennis.loadingStats" to "Lade Statistiken...",
        "myTischtennis.matchResults" to "Spielergebnisse",
        "myTischtennis.neverFetched" to "Noch nie abgerufen",
        "myTischtennis.no" to "Nein",
        "myTischtennis.noAccount" to "Kein myTischtennis-Account verknüpft.",
        "myTischtennis.passwordNote" to "Hinweis: Das Speichern des Passworts ist optional. Wenn Sie es nicht speichern, werden Sie bei jeder Synchronisation nach dem Passwort gefragt.",
        "myTischtennis.passwordSaved" to "Passwort gespeichert",
        "myTischtennis.passwordsEncrypted" to "Passwörter werden verschlüsselt gespeichert",
        "myTischtennis.playerRatings" to "Spielerwertungen",
        "myTischtennis.refreshStats" to "Statistiken aktualisieren",
        "myTischtennis.testLogin" to "Erneut einloggen",
        "myTischtennis.title" to "myTischtennis-Account",
        "myTischtennis.updateHistory" to "Update-History",
        "myTischtennis.yes" to "Ja",
        "myTischtennisAccount.aboutDescription" to "Durch die Verknüpfung Ihres myTischtennis-Accounts können Sie:",
        "myTischtennisAccount.aboutFeature1" to "Automatisch Turnierdaten importieren",
        "myTischtennisAccount.aboutFeature2" to "Spielerergebnisse synchronisieren",
        "myTischtennisAccount.aboutFeature3" to "Wettkampfdaten direkt abrufen",
        "myTischtennisAccount.aboutHint" to "Das Speichern des Passworts ist optional. Wenn Sie es nicht speichern, werden Sie bei jeder Synchronisation nach dem Passwort gefragt.",
        "myTischtennisAccount.aboutMyTischtennis" to "Über myTischtennis",
        "myTischtennisAccount.accountSaved" to "myTischtennis-Account erfolgreich gespeichert",
        "myTischtennisAccount.accountUnlinked" to "myTischtennis-Account erfolgreich getrennt",
        "myTischtennisAccount.autoUpdates" to "Automatische Updates:",
        "myTischtennisAccount.club" to "Verein (myTischtennis):",
        "myTischtennisAccount.daysAgo" to "vor {count} Tagen",
        "myTischtennisAccount.disabled" to "Deaktiviert",
        "myTischtennisAccount.editAccount" to "Account bearbeiten",
        "myTischtennisAccount.email" to "E-Mail:",
        "myTischtennisAccount.enabled" to "Aktiviert",
        "myTischtennisAccount.errorLoadingAccount" to "Fehler beim Laden des myTischtennis-Accounts",
        "myTischtennisAccount.errorLoadingStatistics" to "Fehler beim Laden der Fetch-Statistiken",
        "myTischtennisAccount.errorUnlinking" to "Fehler beim Trennen des Accounts",
        "myTischtennisAccount.fetchStatistics" to "Datenabruf-Statistiken",
        "myTischtennisAccount.hoursAgo" to "vor {count} Std.",
        "myTischtennisAccount.justNow" to "Gerade eben",
        "myTischtennisAccount.lastFetch" to "Letzter Abruf:",
        "myTischtennisAccount.lastLoginAttempt" to "Letzter Login-Versuch:",
        "myTischtennisAccount.lastSuccessfulLogin" to "Letzter erfolgreicher Login:",
        "myTischtennisAccount.leagueTables" to "Ligatabellen",
        "myTischtennisAccount.linkAccount" to "Account verknüpfen",
        "myTischtennisAccount.linkedAccount" to "Verknüpfter Account",
        "myTischtennisAccount.loading" to "Lade...",
        "myTischtennisAccount.loadingStatistics" to "Lade Statistiken...",
        "myTischtennisAccount.loginAgain" to "Erneut einloggen",
        "myTischtennisAccount.loginFailed" to "Login fehlgeschlagen",
        "myTischtennisAccount.loginSuccessful" to "Login erfolgreich! Verbindungsdaten aktualisiert.",
        "myTischtennisAccount.matchResults" to "Spielergebnisse",
        "myTischtennisAccount.minutesAgo" to "vor {count} Min.",
        "myTischtennisAccount.never" to "Nie",
        "myTischtennisAccount.neverFetched" to "Noch nie abgerufen",
        "myTischtennisAccount.no" to "Nein",
        "myTischtennisAccount.noAccountLinked" to "Kein myTischtennis-Account verknüpft.",
        "myTischtennisAccount.passwordRequired" to "Passwort benötigt",
        "myTischtennisAccount.passwordSaved" to "Passwort gespeichert:",
        "myTischtennisAccount.playerRatings" to "Spielerwertungen",
        "myTischtennisAccount.playersUpdated" to "Spieler aktualisiert",
        "myTischtennisAccount.refreshStatistics" to "Statistiken aktualisieren",
        "myTischtennisAccount.results" to "Ergebnisse",
        "myTischtennisAccount.teams" to "Teams",
        "myTischtennisAccount.title" to "myTischtennis-Account",
        "myTischtennisAccount.unlinkAccount" to "Account trennen",
        "myTischtennisAccount.unlinkAccountConfirm" to "Möchten Sie die Verknüpfung zum myTischtennis-Account wirklich trennen?",
        "myTischtennisAccount.unlinkAccountTitle" to "Account trennen",
        "myTischtennisAccount.updateHistory" to "Update-History",
        "myTischtennisAccount.yes" to "Ja",
        "myTischtennisAccount.yesterday" to "Gestern",
        "myTischtennisDialog.appPassword" to "Ihr App-Passwort zur Bestätigung",
        "myTischtennisDialog.appPasswordHint" to "Aus Sicherheitsgründen benötigen wir Ihr App-Passwort, um das myTischtennis-Passwort zu speichern.",
        "myTischtennisDialog.appPasswordPlaceholder" to "Ihr Passwort für diese App",
        "myTischtennisDialog.autoUpdateRatings" to "Automatische Update-Ratings aktivieren",
        "myTischtennisDialog.autoUpdateRatingsHint" to "Täglich um 6:00 Uhr werden automatisch die neuesten Ratings von myTischtennis abgerufen. Erfordert gespeichertes Passwort.",
        "myTischtennisDialog.autoUpdateWarning" to "Für automatische Updates muss das myTischtennis-Passwort gespeichert werden.",
        "myTischtennisDialog.cancel" to "Abbrechen",
        "myTischtennisDialog.editAccount" to "myTischtennis-Account bearbeiten",
        "myTischtennisDialog.email" to "myTischtennis-E-Mail",
        "myTischtennisDialog.emailPlaceholder" to "Ihre myTischtennis-E-Mail-Adresse",
        "myTischtennisDialog.errorLogin" to "Fehler beim Einloggen",
        "myTischtennisDialog.errorSaving" to "Fehler beim Speichern des Accounts",
        "myTischtennisDialog.linkAccount" to "myTischtennis-Account verknüpfen",
        "myTischtennisDialog.loadingLoginForm" to "Lade Login-Formular...",
        "myTischtennisDialog.loggingIn" to "Logge ein...",
        "myTischtennisDialog.login" to "Einloggen",
        "myTischtennisDialog.password" to "myTischtennis-Passwort",
        "myTischtennisDialog.passwordPlaceholder" to "Ihr myTischtennis-Passwort",
        "myTischtennisDialog.passwordPlaceholderKeep" to "Leer lassen um beizubehalten",
        "myTischtennisDialog.save" to "Speichern",
        "myTischtennisDialog.savePassword" to "myTischtennis-Passwort speichern",
        "myTischtennisDialog.savePasswordHint" to "Wenn aktiviert, wird Ihr myTischtennis-Passwort verschlüsselt gespeichert, sodass automatische Synchronisationen möglich sind.",
        "myTischtennisDialog.saving" to "Speichere...",
        "myTischtennisHistory.close" to "Schließen",
        "myTischtennisHistory.failed" to "Fehlgeschlagen",
        "myTischtennisHistory.loading" to "Lade History...",
        "myTischtennisHistory.noHistory" to "Noch keine automatischen Updates durchgeführt.",
        "myTischtennisHistory.ratingsUpdated" to "Ratings aktualisiert",
        "myTischtennisHistory.successful" to "Erfolgreich",
        "myTischtennisHistory.title" to "Update-Ratings History",
        "navigation.approvals" to "Freigaben",
        "navigation.backToHome" to "Zur Startseite",
        "navigation.billing" to "Abrechnung",
        "navigation.clickTtAccount" to "HTTV / click-TT Account",
        "navigation.clickTtBrowser" to "HTTV / click-TT",
        "navigation.clubSettings" to "Vereinseinstellungen",
        "navigation.clubTournaments" to "Vereinsturniere",
        "navigation.competitions" to "Wettbewerbe",
        "navigation.dailyBusiness" to "Tagesgeschäft",
        "navigation.diary" to "Tagebuch",
        "navigation.home" to "Startseite",
        "navigation.login" to "Einloggen",
        "navigation.logout" to "Ausloggen",
        "navigation.logs" to "System-Logs",
        "navigation.members" to "Mitglieder",
        "navigation.memberTransfer" to "Mitgliederübertragung",
        "navigation.myTischtennisAccount" to "myTischtennis-Account",
        "navigation.orders" to "Bestellungen",
        "navigation.permissions" to "Berechtigungen",
        "navigation.personalSettings" to "Persönliche Einstellungen",
        "navigation.predefinedActivities" to "Vordefinierte Aktivitäten",
        "navigation.register" to "Registrieren",
        "navigation.schedule" to "Spielpläne",
        "navigation.settings" to "Einstellungen",
        "navigation.statistics" to "Trainings-Statistik",
        "navigation.teamManagement" to "Team-Verwaltung",
        "navigation.tournamentParticipations" to "Offizielle Turniere & Teilnahmen",
        "navigation.tournaments" to "Turniere",
        "nuscoreAnalyzer.analysisComplete" to "✅ Analyse abgeschlossen: {count} Ressourcen gefunden",
        "nuscoreAnalyzer.analyze" to "🔍 nuscore analysieren",
        "nuscoreAnalyzer.analyzing" to "🔄 Analysiere...",
        "nuscoreAnalyzer.createLocalCopy" to "🏗️ Lokale Kopie erstellen",
        "nuscoreAnalyzer.creating" to "🏗️ Erstelle...",
        "nuscoreAnalyzer.description" to "Analysiert und lädt nuscore-Ressourcen für lokale Nutzung herunter",
        "nuscoreAnalyzer.downloading" to "⬇️ Lade herunter...",
        "nuscoreAnalyzer.downloadResources" to "Ressourcen herunterladen",
        "nuscoreAnalyzer.foundResources" to "📋 Gefundene Ressourcen:",
        "nuscoreAnalyzer.log" to "📝 Log:",
        "nuscoreAnalyzer.pageLoaded" to "✅ nuscore-Seite geladen",
        "nuscoreAnalyzer.startAnalysis" to "🔍 Starte nuscore-Analyse...",
        "nuscoreAnalyzer.title" to "🔍 nuscore Analyzer",
        "officialTournaments.action" to "Aktion",
        "officialTournaments.age" to "Alter",
        "officialTournaments.ageClassCompetition" to "Altersklasse/Wettbewerb",
        "officialTournaments.ageClasses" to "Altersklassen:",
        "officialTournaments.all" to "Alle",
        "officialTournaments.birthDate" to "Geburtsdatum",
        "officialTournaments.checkBoxToActivate" to "Checkbox aktivieren",
        "officialTournaments.competition" to "Konkurrenz",
        "officialTournaments.competitions" to "Konkurrenzen",
        "officialTournaments.competitionTypes" to "Konkurrenztypen:",
        "officialTournaments.cutoffDate" to "Stichtag:",
        "officialTournaments.date" to "Datum",
        "officialTournaments.dateTime" to "Termin:",
        "officialTournaments.deadlineDate" to "Meldeschluss (Datum):",
        "officialTournaments.deadlineOnline" to "Meldeschluss (Online):",
        "officialTournaments.deadlines" to "Meldeschlüsse:",
        "officialTournaments.deadlinesByAgeClass" to "Meldeschlüsse je AK:",
        "officialTournaments.delete" to "Löschen",
        "officialTournaments.editTitle" to "Titel bearbeiten",
        "officialTournaments.eligible" to "Teilnahmeberechtigt",
        "officialTournaments.entryFee" to "Startgeld",
        "officialTournaments.entryFees" to "Teilnahmegebühren:",
        "officialTournaments.events" to "Veranstaltungen",
        "officialTournaments.finalRound" to "Endrunde:",
        "officialTournaments.hasPlayed" to "Hat gespielt",
        "officialTournaments.last12Months" to "Letzte 12 Monate",
        "officialTournaments.last2Years" to "Letzte 2 Jahre",
        "officialTournaments.last3Months" to "Letzte 3 Monate",
        "officialTournaments.last6Months" to "Letzte 6 Monate",
        "officialTournaments.markAsParticipated" to "Als teilgenommen markieren",
        "officialTournaments.markAsRegistered" to "Als angemeldet markieren",
        "officialTournaments.member" to "Mitglied",
        "officialTournaments.name" to "Name",
        "officialTournaments.noEvents" to "Noch keine Veranstaltungen vorhanden. Laden Sie ein PDF hoch, um zu beginnen.",
        "officialTournaments.notInterested" to "Nicht interessiert",
        "officialTournaments.openTo" to "Offen für:",
        "officialTournaments.participants" to "Teilnehmer",
        "officialTournaments.participantsPdf" to "Teilnehmer-PDF",
        "officialTournaments.participated" to "Teilgenommen",
        "officialTournaments.participations" to "Turnierbeteiligungen",
        "officialTournaments.pdfForSelectedMembers" to "PDF für markierte Mitglieder",
        "officialTournaments.placement" to "Platzierung",
        "officialTournaments.preliminaryRound" to "Vorrunde:",
        "officialTournaments.previousSeason" to "Vorherige Saison",
        "officialTournaments.registered" to "Angemeldet",
        "officialTournaments.resetStatus" to "Status zurücksetzen",
        "officialTournaments.results" to "Ergebnisse",
        "officialTournaments.savedEvents" to "Gespeicherte Veranstaltungen",
        "officialTournaments.selectMembers" to "Mitglieder auswählen",
        "officialTournaments.showCompetitions" to "Konkurrenzen anzeigen",
        "officialTournaments.showEvents" to "Gespeicherte Veranstaltungen anzeigen",
        "officialTournaments.showParticipants" to "Teilnehmer anzeigen",
        "officialTournaments.showParticipations" to "Turnierbeteiligungen anzeigen",
        "officialTournaments.showResults" to "Ergebnisse anzeigen",
        "officialTournaments.startTime" to "Startzeit",
        "officialTournaments.startTimes" to "Startzeiten:",
        "officialTournaments.status" to "Status",
        "officialTournaments.timeRange" to "Zeitraum:",
        "officialTournaments.title" to "Titel:",
        "officialTournaments.tournament" to "Turnier",
        "officialTournaments.updatePlacementError" to "Fehler beim Aktualisieren der Platzierung",
        "officialTournaments.updateStatusError" to "Fehler beim Aktualisieren des Status",
        "officialTournaments.updateTitleError" to "Titel konnte nicht gespeichert werden.",
        "officialTournaments.uploadError" to "Fehler beim Hochladen der PDF.",
        "officialTournaments.uploadPdf" to "PDF hochladen",
        "officialTournaments.venues" to "Austragungsorte:",
        "officialTournaments.wantsToParticipate" to "Möchte teilnehmen",
        "orders.addOrder" to "Bestellung anlegen",
        "orders.budget" to "Budget",
        "orders.club" to "Verein",
        "orders.cost" to "Kosten",
        "orders.dateAutoHint" to "Datum wird automatisch gesetzt und jede Änderung mit Datum protokolliert.",
        "orders.errorLoading" to "Bestellungen konnten nicht geladen werden.",
        "orders.errorSaving" to "Bestellung konnte nicht gespeichert werden.",
        "orders.filterAllClubs" to "Alle Vereine",
        "orders.filterAllCompletionStates" to "Alle Abschlüsse",
        "orders.filterAllStatuses" to "Alle Status",
        "orders.filterHandedOver" to "Artikel ausgehändigt",
        "orders.filterPaid" to "Hat bezahlt",
        "orders.globalSubtitle" to "Hier werden alle Bestellungen vereinsübergreifend angezeigt und verwaltet.",
        "orders.globalTitle" to "Bestellungen aller Vereine",
        "orders.history" to "Verlauf",
        "orders.item" to "Was",
        "orders.itemPlaceholder" to "z. B. Trikot, Hoodie oder Schlägerhülle",
        "orders.loading" to "Lade Bestellungen...",
        "orders.member" to "Mitglied",
        "orders.memberTitle" to "Bestellungen: {name}",
        "orders.noOrdersGlobal" to "Es gibt aktuell keine Bestellungen.",
        "orders.noOrdersMember" to "Für dieses Mitglied gibt es noch keine Bestellungen.",
        "orders.open" to "Noch offen",
        "orders.orderDate" to "Erfasst am",
        "orders.paid" to "Bezahlt",
        "orders.paidConfirmed" to "Hat bezahlt",
        "orders.searchPlaceholder" to "Nach Verein, Mitglied oder Artikel suchen",
        "orders.showCompleted" to "Abgeschlossene einblenden",
        "orders.status" to "Status",
        "orders.statusArrived" to "Artikel angekommen",
        "orders.statusDate" to "Letzte Änderung",
        "orders.statusHandedOver" to "Artikel ausgehändigt",
        "orders.statusOrdered" to "bestellt",
        "orders.statusRequested" to "gewünscht",
        "orders.title" to "Bestellungen",
        "pdfGenerator.activityTimeBlock" to "Aktivität / Zeitblock",
        "pdfGenerator.allGames" to "Alle Spiele",
        "pdfGenerator.alsoPlayable" to "Ebenfalls spielbar",
        "pdfGenerator.birthDate" to "Geburtsdatum",
        "pdfGenerator.clubLabel" to "Verein:",
        "pdfGenerator.competition" to "Wettbewerb",
        "pdfGenerator.competitionName" to "Konkurrenz",
        "pdfGenerator.date" to "Datum:",
        "pdfGenerator.diff" to "Diff",
        "pdfGenerator.duration" to "Dauer (Min)",
        "pdfGenerator.fee" to "Gebühr",
        "pdfGenerator.generatedAt" to "Erstellt:",
        "pdfGenerator.group" to "Gruppe",
        "pdfGenerator.groupLabel" to "Gruppe",
        "pdfGenerator.groupMatrices" to "Gruppen-Matrizen",
        "pdfGenerator.hallShoes" to "Hallenschuhe (dürfen auf Boden nicht abfärben)",
        "pdfGenerator.hints" to "Hinweise:",
        "pdfGenerator.informTrainer" to "Da der Verein die Meldung übernehmen möchte, die Trainer mind. eine Woche vor dem Turnier über die Teilnahme informieren",
        "pdfGenerator.leagueLabel" to "Spielklasse:",
        "pdfGenerator.lineupQttr" to "(Q)TTR",
        "pdfGenerator.member" to "Mitglied:",
        "pdfGenerator.nameFirstName" to "Name, Vorname",
        "pdfGenerator.noActivities" to "Keine Aktivitäten für diesen Trainingstag erfasst.",
        "pdfGenerator.noWhiteJersey" to "Kein weißes Trikot",
        "pdfGenerator.officialTournament" to "Offizielles Turnier",
        "pdfGenerator.oneHourBefore" to "Eine Stunde vor Beginn der Konkurrenz in der Halle sein",
        "pdfGenerator.overallRanking" to "Gesamt-Ranking (K.O.-Runden)",
        "pdfGenerator.periodLabel" to "Meldung für:",
        "pdfGenerator.phoneList" to "Telefonliste - Aktive Mitglieder",
        "pdfGenerator.phoneNumber" to "Telefon-Nr.",
        "pdfGenerator.place" to "Platz",
        "pdfGenerator.placement" to "Platzierung",
        "pdfGenerator.plannedLeagueLabel" to "Geplante Spielklasse:",
        "pdfGenerator.player" to "Spieler",
        "pdfGenerator.player1" to "Spieler 1",
        "pdfGenerator.player2" to "Spieler 2",
        "pdfGenerator.points" to "Punkte",
        "pdfGenerator.recommendations" to "Empfehlungen",
        "pdfGenerator.result" to "Ergebnis",
        "pdfGenerator.round" to "Runde",
        "pdfGenerator.seasonLabel" to "Saison:",
        "pdfGenerator.sets" to "Sätze",
        "pdfGenerator.sportShorts" to "Sportshorts (oder Sportröckchen), am besten auch nicht weiß",
        "pdfGenerator.startTime" to "Startzeit",
        "pdfGenerator.status" to "Status",
        "pdfGenerator.teamAgeGroupLabel" to "Team Altersklasse:",
        "pdfGenerator.teamGenderLabel" to "Team Geschlecht:",
        "pdfGenerator.teamLineupTitle" to "Mannschaftsaufstellung",
        "pdfGenerator.teamNameLabel" to "Mannschaft:",
        "pdfGenerator.time" to "Uhrzeit:",
        "pdfGenerator.timeBlock" to "Zeitblock",
        "pdfGenerator.tournament" to "Turnier",
        "pdfGenerator.trainersPresent" to "Die Trainer probieren bei allen Turnieren anwesend zu sein.",
        "pdfGenerator.trainingPlan" to "Trainingsplan",
        "pdfGenerator.venue" to "Austragungsort",
        "pdfGenerator.venues" to "Austragungsorte",
        "pdfGenerator.waterBottle" to "Eine Flasche Wasser dabei haben",
        "pendingApprovals.actions" to "Aktionen",
        "pendingApprovals.approve" to "Genehmigen",
        "pendingApprovals.email" to "Email",
        "pendingApprovals.errorApproving" to "Fehler beim Genehmigen des Benutzers",
        "pendingApprovals.errorLoadingRequests" to "Fehler beim Laden der ausstehenden Anfragen",
        "pendingApprovals.errorRejecting" to "Fehler beim Ablehnen des Benutzers",
        "pendingApprovals.firstName" to "Vorname",
        "pendingApprovals.lastName" to "Nachname",
        "pendingApprovals.noPendingRequests" to "Keine ausstehenden Benutzeranfragen.",
        "pendingApprovals.noPermission" to "Keine Berechtigung",
        "pendingApprovals.noPermissionDetails" to "Nur Administratoren können Mitgliedsanfragen bearbeiten.",
        "pendingApprovals.noPermissionMessage" to "Sie haben keine Berechtigung, Freigaben zu verwalten.",
        "pendingApprovals.reject" to "Ablehnen",
        "pendingApprovals.title" to "Ausstehende Benutzeranfragen",
        "permissions.actions" to "Aktionen",
        "permissions.active" to "Aktiv",
        "permissions.availableRoles" to "Verfügbare Rollen",
        "permissions.baseRole" to "Basis-Rolle",
        "permissions.cancel" to "Abbrechen",
        "permissions.clickToActivate" to "Klicken zum Aktivieren",
        "permissions.clickToDeactivate" to "Klicken zum Deaktivieren",
        "permissions.clubMembers" to "Clubmitglieder",
        "permissions.creator" to "Ersteller",
        "permissions.customize" to "Anpassen",
        "permissions.customizeInfo" to "Hier können Sie individuelle Anpassungen vornehmen.",
        "permissions.email" to "Email",
        "permissions.errorLoadingData" to "Fehler beim Laden der Daten",
        "permissions.errorSavingPermissions" to "Fehler beim Speichern der Berechtigungen",
        "permissions.errorUpdatingRole" to "Fehler beim Aktualisieren der Rolle",
        "permissions.inactive" to "Deaktiviert",
        "permissions.loadingMembers" to "Lade Mitglieder...",
        "permissions.permissionsFor" to "Berechtigungen für",
        "permissions.reset" to "Zurücksetzen",
        "permissions.resetAll" to "Alle zurücksetzen",
        "permissions.role" to "Rolle",
        "permissions.save" to "Speichern",
        "permissions.status" to "Status",
        "permissions.subtitle" to "Verwalten Sie die Zugriffsrechte für Clubmitglieder",
        "permissions.title" to "Berechtigungsverwaltung",
        "predefinedActivities.addImage" to "Bild hinzufügen",
        "predefinedActivities.cancel" to "Abbrechen",
        "predefinedActivities.code" to "Kürzel",
        "predefinedActivities.createDrawing" to "Übungszeichnung erstellen",
        "predefinedActivities.deduplicate" to "Doppelungen zusammenführen",
        "predefinedActivities.delete" to "Löschen",
        "predefinedActivities.description" to "Beschreibung",
        "predefinedActivities.duration" to "Dauer (Minuten)",
        "predefinedActivities.durationText" to "Dauer (Text)",
        "predefinedActivities.durationTextPlaceholder" to "z.B. 2x7",
        "predefinedActivities.editActivity" to "Aktivität bearbeiten",
        "predefinedActivities.editDrawing" to "Übungszeichnung bearbeiten",
        "predefinedActivities.excludeFromStats" to "Nicht in Statistik berücksichtigen",
        "predefinedActivities.filterAll" to "Alle",
        "predefinedActivities.filterCustom" to "Selbstdefiniert",
        "predefinedActivities.filterStandard" to "Standard-Aktivitäten",
        "predefinedActivities.imageHelp" to "Du kannst entweder einen Link zu einem Bild eingeben oder ein Bild hochladen:",
        "predefinedActivities.imageLink" to "Bild-Link (optional)",
        "predefinedActivities.imageLinkPlaceholder" to "z.B. https://example.com/bild.jpg oder /api/predefined-activities/:id/image/:imageId",
        "predefinedActivities.merge" to "Zusammenführen",
        "predefinedActivities.min" to "min",
        "predefinedActivities.name" to "Name",
        "predefinedActivities.new" to "Neu",
        "predefinedActivities.newActivity" to "Neue Aktivität",
        "predefinedActivities.orUploadImage" to "Oder Bild hochladen:",
        "predefinedActivities.reload" to "Neu laden",
        "predefinedActivities.searchPlaceholder" to "Kürzel suchen (z.B. 'as vh us' oder 'vh as us')...",
        "predefinedActivities.selectSource" to "Quelle wählen…",
        "predefinedActivities.selectTarget" to "Ziel wählen…",
        "predefinedActivities.title" to "Vordefinierte Aktivitäten",
        "predefinedActivities.upload" to "Hochladen",
        "predefinedActivities.uploadAfterSave" to "Nach Speichern hochladen",
        "predefinedActivities.uploadedImages" to "Hochgeladene Bilder:",
        "predefinedActivities.uploadNote" to "Hinweis: Das Bild wird erst nach dem Speichern der Aktivität hochgeladen.",
        "privacy.clubData" to "Vereins-/Aktivitätsdaten",
        "privacy.consent" to "Einwilligungsbasierte Vorgänge",
        "privacy.cookies" to "Cookies/Local Storage",
        "privacy.dataCategories" to "Kategorien personenbezogener Daten",
        "privacy.logData" to "Logdaten",
        "privacy.memberData" to "Mitgliederdaten",
        "privacy.myTischtennisData" to "MyTischtennis-Daten",
        "privacy.purposes" to "Zwecke und Rechtsgrundlagen der Verarbeitung",
        "privacy.recipients" to "Empfänger",
        "privacy.registrationData" to "Registrierungs-/Profildaten",
        "privacy.responsible" to "Verantwortlicher",
        "privacy.title" to "Datenschutzerklärung",
        "privacy.tournamentData" to "Turnierdaten",
        "privacy.trainingData" to "Trainingsdaten",
        "privacy.usage" to "Nutzung des TrainingsTagebuchs",
        "privacy.usageData" to "Nutzungsdaten",
        "privacy.website" to "Bereitstellung der Website",
        "quickAddMember.birthDate" to "Geburtsdatum (optional)",
        "quickAddMember.cancel" to "Abbrechen",
        "quickAddMember.createAndAdd" to "Erstellen & Hinzufügen",
        "quickAddMember.firstName" to "Vorname",
        "quickAddMember.gender" to "Geschlecht",
        "quickAddMember.lastName" to "Nachname (optional)",
        "quickAddMember.pleaseSelect" to "Bitte wählen",
        "quickAddMember.title" to "Neues Mitglied hinzufügen",
        "schedule.activeSelection" to "Aktive Auswahl",
        "schedule.addressLabel" to "Adresse",
        "schedule.adultSchedule" to "Spielplan Erwachsene",
        "schedule.ageClass" to "Altersklasse",
        "schedule.allLeagueMatches" to "Alle Spiele",
        "schedule.balls" to "Bälle",
        "schedule.cancel" to "Abbrechen",
        "schedule.cityLabel" to "PLZ / Ort",
        "schedule.code" to "Code",
        "schedule.completedShort" to "Abgeschlossen",
        "schedule.copyCode" to "Code kopieren",
        "schedule.copyGuestPin" to "Gast-PIN kopieren",
        "schedule.copyHomePin" to "Heim-PIN kopieren",
        "schedule.date" to "Datum",
        "schedule.downloadPDF" to "Download PDF",
        "schedule.errorCopying" to "Fehler beim Kopieren",
        "schedule.errorImportingCSV" to "Fehler beim Importieren der CSV-Datei",
        "schedule.errorLoadingAdultSchedule" to "Fehler beim Laden des Erwachsenenspielplans",
        "schedule.errorLoadingGallery" to "Galerie konnte nicht geladen werden.",
        "schedule.errorLoadingMatches" to "Fehler beim Laden der Matches",
        "schedule.errorLoadingMembers" to "Laden der Mitgliederliste fehlgeschlagen.",
        "schedule.errorLoadingOverallSchedule" to "Fehler beim Laden des Gesamtspielplans",
        "schedule.errorLoadingTable" to "Fehler beim Laden der Tabellendaten von MyTischtennis",
        "schedule.errorLoadingTeams" to "Fehler beim Laden der Teams",
        "schedule.errorSavingPlayerSelection" to "Fehler beim Speichern der Spielerauswahl",
        "schedule.fetchDataFailed" to "Teamdaten konnten nicht abgerufen werden.",
        "schedule.fetchingTeamData" to "Abruf läuft…",
        "schedule.fetchStartFailed" to "Abruf konnte nicht gestartet werden.",
        "schedule.fetchTeamData" to "Spielplan & Ergebnisse abrufen",
        "schedule.fetchTimedOut" to "Zeitüberschreitung beim Abruf.",
        "schedule.gallery" to "Mitglieder-Galerie",
        "schedule.galleryLoading" to "Galerie wird geladen…",
        "schedule.galleryTitle" to "Mitglieder-Galerie - Klicken Sie auf ein Bild, um als 'Bereit' zu markieren",
        "schedule.gamesFor" to "Spiele für",
        "schedule.guestPin" to "Gast-PIN",
        "schedule.guestTeam" to "Gastmannschaft",
        "schedule.homePin" to "Heim-PIN",
        "schedule.homeTeam" to "Heimmannschaft",
        "schedule.imageSize" to "Bildgröße",
        "schedule.importSchedule" to "Spielplanimport",
        "schedule.leagueTable" to "Ligatabelle",
        "schedule.loadingMembers" to "Lade Mitglieder...",
        "schedule.locationDialogTitle" to "Spiellokal",
        "schedule.locationInfo" to "Ort",
        "schedule.locationName" to "Spiellokal",
        "schedule.matches" to "Matches",
        "schedule.matchLabel" to "Spiel",
        "schedule.matchOverviewDescription" to "Steuert, welche Spiele aus der aktuell gewählten Liga im Spielplan angezeigt werden.",
        "schedule.matchOverviewTitle" to "Spielübersicht",
        "schedule.nextMatch" to "Nächstes Spiel",
        "schedule.noActiveMembers" to "Keine aktiven Mitglieder gefunden",
        "schedule.noGames" to "Keine Spiele vorhanden",
        "schedule.noLeagueForTeam" to "Für dieses Team ist keine Liga hinterlegt. Bitte zuerst eine Liga zuordnen.",
        "schedule.noMatchesForPDF" to "Keine Matches gefunden, um PDF zu generieren.",
        "schedule.noMatchingTeams" to "Keine Teams passen zur aktuellen Suche.",
        "schedule.noMembersWithImages" to "Keine Mitglieder mit Bildern gefunden.",
        "schedule.noSelectionMessage" to "Wählen Sie links einen Gesamtspielplan, den Erwachsenenspielplan oder ein Team aus.",
        "schedule.noSelectionTitle" to "Noch keine Auswahl aktiv",
        "schedule.noTableData" to "Keine Tabellendaten verfügbar",
        "schedule.noTeamsFound" to "Keine Teams für diese Saison gefunden",
        "schedule.openMatchReport" to "Spielberichtsbogen öffnen",
        "schedule.otherTeamMatches" to "Andere Mannschaft",
        "schedule.overallSchedule" to "Gesamtspielplan",
        "schedule.ownTeamMatches" to "Eigene Mannschaft",
        "schedule.pendingShort" to "Offen",
        "schedule.planned" to "Vorgesehen",
        "schedule.played" to "Gespielt",
        "schedule.player" to "Spieler",
        "schedule.playerSelection" to "Spielerauswahl",
        "schedule.playerSelectionSaved" to "Spielerauswahl gespeichert",
        "schedule.pleaseSelectGame" to "Bitte wählen Sie zuerst ein Spiel aus",
        "schedule.points" to "Pkt.",
        "schedule.position" to "Platz",
        "schedule.ready" to "Bereit",
        "schedule.refreshTable" to "Tabelle aktualisieren",
        "schedule.result" to "Ergebnis",
        "schedule.save" to "Speichern",
        "schedule.scheduleImportSuccess" to "Spielplan erfolgreich importiert!",
        "schedule.schedulePDF" to "Spielpläne.pdf",
        "schedule.scheduleTab" to "Spielplan",
        "schedule.searchTeams" to "Team oder Liga suchen",
        "schedule.selection" to "Auswahl",
        "schedule.selectOtherTeam" to "Andere Mannschaft wählen",
        "schedule.selectSpecificLeague" to "Bitte wählen Sie eine spezifische Liga aus, um die Tabelle zu laden.",
        "schedule.sets" to "Sätze",
        "schedule.showLocation" to "Spiellokal anzeigen",
        "schedule.subtitle" to "Teams auswählen, Spieltage prüfen und Ligatabellen im Blick behalten.",
        "schedule.tableDataLoaded" to "Tabellendaten erfolgreich von MyTischtennis geladen!",
        "schedule.tableLoading" to "Tabelle wird geladen…",
        "schedule.tableTab" to "Tabelle",
        "schedule.team" to "Team",
        "schedule.teamDataFetched" to "Teamdaten erfolgreich aktualisiert.",
        "schedule.teamDataFetchedDetails" to "Mannschaft: {team}\nVerarbeitete Datensätze: {count}",
        "schedule.teams" to "Teams",
        "schedule.time" to "Uhrzeit",
        "schedule.title" to "Spielpläne",
        "schedule.vs" to "vs",
        "schedule.workspaceScheduleDescription" to "{matches} Spiele, davon {completed} abgeschlossen und {pending} offen.",
        "schedule.workspaceTableDescription" to "{count} Tabellenzeilen aktuell geladen.",
        "seasonSelector.addSeason" to "Neue Saison hinzufügen",
        "seasonSelector.alreadyExists" to "Diese Saison existiert bereits!",
        "seasonSelector.cancel" to "Abbrechen",
        "seasonSelector.create" to "Erstellen",
        "seasonSelector.errorCreating" to "Fehler beim Erstellen der Saison",
        "seasonSelector.errorLoading" to "Fehler beim Laden der Saisons",
        "seasonSelector.hint" to "Hinweis",
        "seasonSelector.label" to "Saison:",
        "seasonSelector.loading" to "Lade...",
        "seasonSelector.newSeason" to "Neue Saison:",
        "seasonSelector.placeholder" to "z.B. 2023/2024",
        "seasonSelector.selectSeason" to "Saison wählen...",
        "settings.language" to "Sprache",
        "settings.languageChanged" to "Sprache erfolgreich geändert",
        "settings.languageDescription" to "Wähle deine bevorzugte Sprache für die Anwendung",
        "settings.personalSettings" to "Persönliche Einstellungen",
        "settings.selectLanguage" to "Sprache auswählen",
        "settings.title" to "Einstellungen",
        "tagHistory.noHistory" to "Keine Tag-Historie vorhanden",
        "tagHistory.selectTags" to "Tags auswählen",
        "tagHistory.title" to "Tag-Historie",
        "teamManagement.activeTeam" to "Aktives Team",
        "teamManagement.addPlanningTeam" to "Planungs-Team hinzufügen",
        "teamManagement.allMembersAssigned" to "Alle Mitglieder sind aktuell zugeordnet.",
        "teamManagement.assignLeagueBeforeDocuments" to "Bitte ordnen Sie dem Team zuerst eine Liga zu, damit Dokumente verarbeitet werden können.",
        "teamManagement.assignLeagueBeforeParsing" to "Bitte ordnen Sie dem Team zuerst eine Liga zu, um PDF-Dateien zu parsen.",
        "teamManagement.assignMemberToTeam" to "Zu Team hinzufügen",
        "teamManagement.association" to "Verband",
        "teamManagement.asyncJobStartFailed" to "Async-Job konnte nicht gestartet werden.",
        "teamManagement.autoFetchEnabled" to "Automatischer Datenabruf ist aktiviert",
        "teamManagement.automaticJobs" to "Automatische Jobs",
        "teamManagement.autoSaved" to "Automatisch gespeichert",
        "teamManagement.autoSaveError" to "Automatisches Speichern fehlgeschlagen",
        "teamManagement.availableLineupMembers" to "Verfügbare Spieler",
        "teamManagement.basicSettings" to "Grundeinstellungen",
        "teamManagement.basicSettingsIntro" to "Teamname und Liga in einem ruhigen Formular prüfen und anpassen.",
        "teamManagement.change" to "Ändern",
        "teamManagement.clearFields" to "Felder leeren",
        "teamManagement.codeList" to "Code-Liste",
        "teamManagement.configurationStatus" to "Konfigurationsstatus",
        "teamManagement.configureLeagueDetails" to "Verband: {association}\nSaison: {season}\nLiga: {league}\nGruppen-ID: {groupId}\n\nMöchten Sie diese Liga in der Datenbank konfigurieren? Dies ermöglicht es, Tabellendaten automatisch abzurufen.",
        "teamManagement.configureLeagueTitle" to "Liga konfigurieren?",
        "teamManagement.createAndEdit" to "Anlegen & Bearbeiten",
        "teamManagement.created" to "Erstellt",
        "teamManagement.createNewTeam" to "Neues Team anlegen",
        "teamManagement.dataFetchFailed" to "Daten konnten nicht abgerufen werden.",
        "teamManagement.delete" to "Löschen",
        "teamManagement.deleteTeamConfirm" to "Möchten Sie das Club-Team \"{name}\" wirklich löschen?",
        "teamManagement.deleteTeamTitle" to "Club-Team löschen",
        "teamManagement.documentAvailable" to "Vorhanden",
        "teamManagement.documentMissing" to "Fehlt",
        "teamManagement.documentNotFound" to "Das ausgewählte Dokument wurde nicht gefunden.",
        "teamManagement.documentParsedSummary" to "{label} erfolgreich hochgeladen und geparst!\n\nGefundene Spiele: {matchesFound}\nNeue Spiele erstellt: {created}\nSpiele aktualisiert: {updated}",
        "teamManagement.documents" to "Dokumente",
        "teamManagement.documentsIntro" to "Code- und PIN-Listen hochladen, prüfen und bei Bedarf erneut parsen.",
        "teamManagement.documentUploaded" to "{label} \"{fileName}\" wurde erfolgreich hochgeladen!",
        "teamManagement.edit" to "Bearbeiten",
        "teamManagement.editTeam" to "Team bearbeiten",
        "teamManagement.eligibility" to "Einsatz",
        "teamManagement.eligibilityAdultRelease" to "Freigabe Erwachsene",
        "teamManagement.eligibilityAdultReleaseAndReserve" to "Freigabe + Ersatz Erwachsene",
        "teamManagement.eligibilityAdultReserve" to "Ersatz Erwachsene",
        "teamManagement.eligibilityRegular" to "Regulär",
        "teamManagement.enterUrlForAutoConfig" to "MyTischtennis-URL eingeben für automatische Konfiguration",
        "teamManagement.error" to "Fehler",
        "teamManagement.errorConfiguringLeague" to "Liga konnte nicht konfiguriert werden.",
        "teamManagement.errorConfiguringTeam" to "Team konnte nicht konfiguriert werden.",
        "teamManagement.errorDeletingTeam" to "Fehler beim Löschen des Club-Teams.",
        "teamManagement.errorLoadingPdf" to "Fehler beim Laden des PDFs.",
        "teamManagement.errorLoadingStats" to "Statistiken konnten nicht geladen werden.",
        "teamManagement.errorParsingPdf" to "Fehler beim Parsen der PDF-Datei",
        "teamManagement.errorParsingUrl" to "URL konnte nicht geparst werden. Bitte überprüfen Sie das Format.",
        "teamManagement.errorsCount" to "Fehler: {count}",
        "teamManagement.errorUploadingDocument" to "Fehler beim Hochladen und Parsen der Datei.",
        "teamManagement.exportLineupPdf" to "Aufstellung als PDF",
        "teamManagement.fetched" to "abgerufen",
        "teamManagement.fetchTimedOut" to "Zeitüberschreitung beim Abruf (Async-Job läuft zu lange).",
        "teamManagement.fetchTimeoutShort" to "Zeitüberschreitung beim Abruf (Timeout).",
        "teamManagement.fileTooLarge" to "{label} darf maximal 10 MB groß sein.",
        "teamManagement.fileTooLargeTitle" to "Datei zu groß",
        "teamManagement.filterAll" to "Alle",
        "teamManagement.filterConfigured" to "Konfiguriert",
        "teamManagement.filterNeedsAttention" to "Prüfen",
        "teamManagement.filterNoLeague" to "Ohne Liga",
        "teamManagement.firstHalf" to "Vorrunde",
        "teamManagement.firstHalfFull" to "Vorrunde (Juli - Dezember)",
        "teamManagement.fullyConfigured" to "Vollständig konfiguriert",
        "teamManagement.groupId" to "Gruppen-ID",
        "teamManagement.groupName" to "Gruppenname",
        "teamManagement.invalidFileExtension" to "{label} muss eine der folgenden Endungen haben: {extensions}.",
        "teamManagement.invalidFileTypeTitle" to "Ungültiger Dateityp",
        "teamManagement.invalidMimeType" to "{label} weist einen unerwarteten MIME-Typ auf: {type}.",
        "teamManagement.lastRun" to "Zuletzt",
        "teamManagement.lastUpdated" to "Zuletzt aktualisiert",
        "teamManagement.latestUpload" to "Zuletzt hochgeladen: {date}",
        "teamManagement.league" to "Spielklasse",
        "teamManagement.leagueConfiguredDetails" to "Liga: {league}\nSaison: {season}\nVerband: {association}\nGruppen-ID: {groupId}\n\nTabellendaten können jetzt automatisch abgerufen werden.",
        "teamManagement.leagueConfiguredSuccess" to "Liga erfolgreich konfiguriert! Tabellendaten können jetzt automatisch abgerufen werden.",
        "teamManagement.leagueFieldRequired" to "Bitte eine Spielklasse auswählen und speichern.",
        "teamManagement.lineupEmpty" to "Noch keine Spieler für diese Mannschaft gemeldet.",
        "teamManagement.lineupPdfEmpty" to "Es sind keine Spieler in der Aufstellung – PDF kann nicht erstellt werden.",
        "teamManagement.lineupPdfFilePrefix" to "Aufstellung",
        "teamManagement.lineupProposal" to "Mannschaftsmeldung nach QTTR",
        "teamManagement.lineupSaved" to "Mannschaftsmeldung gespeichert.",
        "teamManagement.lineupSaveError" to "Mannschaftsmeldung konnte nicht gespeichert werden.",
        "teamManagement.lineupUnsavedChanges" to "Ungespeicherte Änderungen in der Mannschaftsmeldung.",
        "teamManagement.lineupValidationTooLargeGap" to "{higher} hat mehr als 30 QTTR Punkte Vorsprung vor {lower}. Diese Reihenfolge bitte korrigieren.",
        "teamManagement.loadingStats" to "Lade Statistiken...",
        "teamManagement.manualFetch" to "Abrufen",
        "teamManagement.markAsInterested" to "Als interessiert markieren",
        "teamManagement.matchesSummary" to "Gefundene Spiele: {matchesFound}\nNeue Spiele erstellt: {created}\nSpiele aktualisiert: {updated}",
        "teamManagement.matchResults" to "Spielergebnisse",
        "teamManagement.missingConfigSummary" to "Fehlende Angaben:",
        "teamManagement.missingItems" to "Fehlend: {items}",
        "teamManagement.missingLeagueForTeam" to "Für das ausgewählte Team wurde keine Liga übermittelt.",
        "teamManagement.moreErrors" to "... und {count} weitere",
        "teamManagement.myTischtennis" to "MyTischtennis",
        "teamManagement.myTischtennisIntro" to "URL einfügen, Konfiguration prüfen und bei Bedarf Daten manuell abrufen.",
        "teamManagement.mytischtennisLoginRequired" to "Login bei myTischtennis erforderlich",
        "teamManagement.myTischtennisUrlPlaceholder" to "MyTischtennis URL...",
        "teamManagement.myTischtennisUrlRequired" to "MyTischtennis-URL einfügen und parsen, um Team-ID und Ligendaten zu übernehmen.",
        "teamManagement.never" to "Nie",
        "teamManagement.newTeam" to "Neues Team",
        "teamManagement.noAssignment" to "Keine Zuordnung",
        "teamManagement.noAutomaticUpdate" to "Noch keine automatische Aktualisierung",
        "teamManagement.noDocumentUploadYet" to "Noch kein Dokument hochgeladen.",
        "teamManagement.noIssues" to "Keine offenen Konfigurationsprobleme.",
        "teamManagement.noLeague" to "Keine Spielklasse",
        "teamManagement.noMatchesFoundDetails" to "Hinweis: Keine Spiele erkannt.\nZeilen im Dokument: {lines}",
        "teamManagement.noMatchesFoundTitle" to "Keine Spiele gefunden",
        "teamManagement.noMatchingTeams" to "Keine Teams passen zur aktuellen Suche oder Filterung.",
        "teamManagement.noMembersInPool" to "Keine passenden Mitglieder gefunden.",
        "teamManagement.noPlannedLeague" to "Keine geplante Spielklasse",
        "teamManagement.noPlayerStats" to "Keine Spieleinsätze erfasst.",
        "teamManagement.notConfigured" to "Nicht konfiguriert",
        "teamManagement.notCreated" to "Nicht erstellt",
        "teamManagement.noTeamsYet" to "Noch keine Teams vorhanden. Erstellen Sie Ihr erstes Team!",
        "teamManagement.openDocument" to "Anzeigen",
        "teamManagement.openInWorkspace" to "Zum Bearbeiten öffnen",
        "teamManagement.parseDocument" to "Neu parsen",
        "teamManagement.parseUrlAction" to "URL prüfen",
        "teamManagement.partiallyConfigured" to "Teilweise konfiguriert",
        "teamManagement.pdfFileNotFound" to "Die PDF-Datei konnte nicht gefunden werden.",
        "teamManagement.pinList" to "Pin-Liste",
        "teamManagement.plannedLeague" to "Geplante Spielklasse",
        "teamManagement.plannedLeagueHint" to "Optional. Unabhängig von der gemeldeten Liga (MyTischtennis).",
        "teamManagement.plannedLeaguePlaceholder" to "z. B. Bezirksliga, nach nächster Meldung …",
        "teamManagement.planningSubtitle" to "Mitglieder auf geplante Teams verteilen, Reihenfolge festlegen und offene Zuordnungen sehen.",
        "teamManagement.planningTitle" to "Mannschaftsplanung",
        "teamManagement.player" to "Spieler",
        "teamManagement.playersPoolSubtitle" to "Alle aktiven Mitglieder mit Spielinteresse",
        "teamManagement.playerStats" to "Spieleinsätze",
        "teamManagement.playerStatsIntro" to "Schneller Überblick über Einsätze der Mannschaft in dieser Saison.",
        "teamManagement.playersWantToPlay" to "Wollen spielen",
        "teamManagement.qttr" to "(Q)TTR-Wert",
        "teamManagement.ratingUpdates" to "Rating-Updates",
        "teamManagement.refreshStats" to "Aktualisieren",
        "teamManagement.reuploadFile" to "Bitte laden Sie die Datei erneut hoch und versuchen Sie es noch einmal.",
        "teamManagement.searchMembers" to "Mitglied suchen",
        "teamManagement.searchTeams" to "Team suchen",
        "teamManagement.season" to "Saison",
        "teamManagement.seasonFull" to "Gesamte Saison (ab 1. Juli)",
        "teamManagement.seasonUnknown" to "unbekannt",
        "teamManagement.secondHalf" to "Rückrunde",
        "teamManagement.secondHalfFull" to "Rückrunde (ab 1. Januar)",
        "teamManagement.selectedLineup" to "Gemeldete Spieler",
        "teamManagement.selectMember" to "Mitglied auswählen",
        "teamManagement.selectTeam" to "Team auswählen",
        "teamManagement.selectTeamFirst" to "Bitte wählen Sie zuerst ein Team aus",
        "teamManagement.selectTeamForConfiguration" to "Um die MyTischtennis-Konfiguration zu aktivieren, müssen Sie zuerst ein Team aus der Liste auswählen.",
        "teamManagement.selectTeamTitle" to "Team auswählen",
        "teamManagement.showCodeList" to "Code-Liste anzeigen",
        "teamManagement.showPinList" to "Pin-Liste anzeigen",
        "teamManagement.sortFirstLast" to "Sortierung: Vorname Nachname",
        "teamManagement.sortLastFirst" to "Sortierung: Nachname Vorname",
        "teamManagement.status" to "Status",
        "teamManagement.subtitle" to "Teams auswählen, Konfiguration prüfen und Liga-Daten an einem Ort pflegen.",
        "teamManagement.successful" to "Erfolgreich",
        "teamManagement.tableUpdateLabel" to "Tabellenaktualisierung:",
        "teamManagement.tableUrlDetected" to "Tabellen-URL erkannt",
        "teamManagement.team" to "Team",
        "teamManagement.teamAgeGroup" to "Altersklasse",
        "teamManagement.teamConfiguredDetails" to "Liga: {league}\nSaison: {season}\nAutomatischer Datenabruf ist jetzt aktiv.",
        "teamManagement.teamConfiguredSuccess" to "Team erfolgreich konfiguriert! Automatischer Datenabruf ist jetzt aktiv.",
        "teamManagement.teamDataFetched" to "Teamdaten erfolgreich abgerufen.",
        "teamManagement.teamDataFetchedDetails" to "Team: {team}\nAbgerufene Datensätze: {count}",
        "teamManagement.teamGender" to "Geschlecht",
        "teamManagement.teamGenderFemale" to "Weiblich",
        "teamManagement.teamGenderOpen" to "Offen",
        "teamManagement.teamHasNoLeague" to "Dieses Team ist keiner Liga zugeordnet.",
        "teamManagement.teamId" to "Team-ID",
        "teamManagement.teamName" to "Team-Name",
        "teamManagement.teamNamePlaceholder" to "z.B. Herren 1, Damen 2",
        "teamManagement.teams" to "Teams",
        "teamManagement.title" to "Team-Verwaltung",
        "teamManagement.unassignedMembers" to "Noch nicht zugeordnet",
        "teamManagement.unassignedMembersSubtitle" to "Mitglieder ohne Team-Zuordnung",
        "teamManagement.unknown" to "Unbekannt",
        "teamManagement.unknownTeam" to "Unbekanntes Team",
        "teamManagement.updated" to "aktualisiert",
        "teamManagement.uploadNewVersion" to "Neue Version hochladen",
        "tournament.apply" to "Übernehmen",
        "tournaments.action" to "Aktion",
        "tournaments.add" to "Hinzufügen",
        "tournaments.addClass" to "Klasse hinzufügen",
        "tournaments.addClubMember" to "Vereinsmitglied hinzufügen",
        "tournaments.addExternalParticipant" to "Externen Teilnehmer hinzufügen",
        "tournaments.addPairing" to "Paarung hinzufügen",
        "tournaments.addPoolRule" to "Pool-Regel hinzufügen",
        "tournaments.address" to "Adresse",
        "tournaments.adjustTournamentSearch" to "Passe den Suchbegriff an oder lege ein neues Turnier an.",
        "tournaments.advancersPerGroup" to "Aufsteiger pro Gruppe",
        "tournaments.allClasses" to "Alle Klassen",
        "tournaments.allDataComplete" to "Alle Teilnehmerdaten sind vollständig.",
        "tournaments.allDataCompleteTop3" to "Alle Daten der Top-3-Platzierten sind vollständig.",
        "tournaments.apply" to "Übernehmen",
        "tournaments.assignmentReviewTitle" to "{count} Teilnehmer brauchen eine Auswahl:",
        "tournaments.atLeastOnePoolRule" to "Bitte mindestens eine Pool-Regel für {label} anlegen (z. B. Plätze 1,2).",
        "tournaments.autoAssignableParticipantsHint" to "{count} davon können automatisch zugeordnet werden.",
        "tournaments.autoAssignEligible" to "Automatisch zuweisen",
        "tournaments.autoAssignEligibleDone" to "{count} Teilnehmer wurden automatisch zugeordnet.",
        "tournaments.autoAssignEligibleNone" to "Aktuell gibt es keine Teilnehmer mit eindeutiger automatischer Klassenzuweisung.",
        "tournaments.autoAssignEligiblePartial" to "{successCount} Teilnehmer wurden automatisch zugeordnet, {errorCount} nicht.",
        "tournaments.birthdate" to "Geburtsdatum",
        "tournaments.cancel" to "Abbrechen",
        "tournaments.class" to "Klasse",
        "tournaments.classes" to "Klassen",
        "tournaments.className" to "Klassenname",
        "tournaments.cleanupOrphanedMatches" to "Verwaiste Spiele aufräumen",
        "tournaments.club" to "Verein",
        "tournaments.clubMember" to "(Vereinsmitglied)",
        "tournaments.conflictSuggestionLabel" to "Vorschläge:",
        "tournaments.correctMatch" to "Korrigieren",
        "tournaments.create" to "Erstellen",
        "tournaments.createFinalFromIntermediate" to "Endrunde aus Zwischenrunde erstellen",
        "tournaments.createFinalFromPreliminary" to "Endrunde aus Vorrunde erstellen",
        "tournaments.createGroupMatches" to "Gruppenspiele berechnen",
        "tournaments.createGroups" to "Gruppen erstellen",
        "tournaments.createIntermediateFromPreliminary" to "Zwischenrunde aus Vorrunde erstellen",
        "tournaments.createMatches" to "Spiele erstellen",
        "tournaments.createSuggestedPairings" to "Partner bilden",
        "tournaments.currentClass" to "Aktive Klasse",
        "tournaments.dataNotRecorded" to "Noch nicht erfasst",
        "tournaments.date" to "Datum",
        "tournaments.delete" to "Löschen",
        "tournaments.deleteClassConfirm" to "Möchten Sie die Klasse \"{name}\" wirklich löschen?",
        "tournaments.deleteClassParticipantsDetached" to "Alle Teilnehmer werden von dieser Klasse entfernt.",
        "tournaments.deleteClassTitle" to "Klasse löschen",
        "tournaments.deleteExistingPairingsConfirm" to "Bestehende Paarungen werden gelöscht. Fortfahren?",
        "tournaments.deleteKORound" to "K.o.-Runde",
        "tournaments.diff" to "Diff",
        "tournaments.distributeTables" to "Freie Tische verteilen",
        "tournaments.distributeTablesResult" to "Tischverteilung",
        "tournaments.doubles" to "Doppel",
        "tournaments.doublesPairingHint" to "{count} Teilnehmer in dieser Doppelklasse haben noch keinen Partner.",
        "tournaments.doublesTournament" to "Doppel-Turnier",
        "tournaments.doublesTournamentHint" to "Schaltet alle vorhandenen Klassen auf Doppel und legt neue Klassen standardmäßig als Doppel an.",
        "tournaments.edit" to "Bearbeiten",
        "tournaments.eligibleClassesHint" to "Passt zu: {classes}",
        "tournaments.email" to "E-Mail",
        "tournaments.encounter" to "Begegnung",
        "tournaments.enterClassName" to "Bitte geben Sie einen Klassennamen ein.",
        "tournaments.enterExternalParticipantName" to "Bitte geben Sie mindestens Vorname und Nachname ein.",
        "tournaments.enterMiniLocation" to "Bitte geben Sie einen Ort ein.",
        "tournaments.errorCreatingGroups" to "Fehler beim Erstellen der Gruppen.",
        "tournaments.errorCreatingTournament" to "Fehler beim Erstellen des Turniers.",
        "tournaments.errorDistributingTables" to "Fehler beim Verteilen der Tische.",
        "tournaments.errorGeneratingPdf" to "Fehler beim Generieren des PDFs.",
        "tournaments.errorMergingClasses" to "Fehler beim Zusammenlegen der Klassen.",
        "tournaments.errorMoreSeededThanUnseeded" to "Es gibt mehr gesetzte als nicht gesetzte Spieler. Zufällige Paarungen können nicht erstellt werden.",
        "tournaments.errorResettingKORound" to "Fehler beim Zurücksetzen der K.o.-Runde.",
        "tournaments.errorUpdatingTournament" to "Fehler beim Aktualisieren des Turniers.",
        "tournaments.exportPDF" to "PDF exportieren",
        "tournaments.external" to "Extern",
        "tournaments.finalPlacements" to "Endplatzierungen",
        "tournaments.finalRound" to "Endrunde",
        "tournaments.finishMatch" to "Abschließen",
        "tournaments.firstName" to "Vorname",
        "tournaments.forForwarding" to "für Weitermeldung",
        "tournaments.gaveUp" to "Aufgegeben",
        "tournaments.gaveUpHint" to "Spieler hat aufgegeben – alle Spiele zählen für den Gegner (11:0) bzw. 0:0 bei beiden aufgegeben.",
        "tournaments.genderAll" to "Alle",
        "tournaments.genderMixed" to "Mixed",
        "tournaments.generatingPDF" to "PDF wird erstellt...",
        "tournaments.group" to "Gruppe",
        "tournaments.groupMatches" to "Gruppenspiele",
        "tournaments.groupNumber" to "Gruppe",
        "tournaments.groupPlacements" to "Gruppenplatzierungen",
        "tournaments.groupsLabel" to "Gruppen",
        "tournaments.groupsOverview" to "Gruppenübersicht",
        "tournaments.groupsPerClass" to "Gruppen",
        "tournaments.groupsPerClassHint" to "Geben Sie für jede Klasse die Anzahl der Gruppen ein (0 = keine Gruppen für diese Klasse):",
        "tournaments.index" to "Index",
        "tournaments.intermediateRound" to "Zwischenrunde (Runde 2)",
        "tournaments.internalStatsAbsoluteRank" to "Rangliste Gesamtwertung",
        "tournaments.internalStatsAgeFilter" to "Altersklassen & Geschlecht (Einzel)",
        "tournaments.internalStatsAgeFilterAll" to "Alle Altersklassen",
        "tournaments.internalStatsAgeFilterNone" to "Keine Altersklasse ausgewählt",
        "tournaments.internalStatsAgeNoClass" to "Ohne Klassenzuordnung",
        "tournaments.internalStatsAgeSelectAll" to "Alle",
        "tournaments.internalStatsAgeSelectNone" to "Keine",
        "tournaments.internalStatsAverageRank" to "Rangliste Durchschnitt (pro Turnier)",
        "tournaments.internalStatsAvgPoints" to "Ø",
        "tournaments.internalStatsEmpty" to "Keine auswertbaren Daten im gewählten Zeitraum.",
        "tournaments.internalStatsExportPdf" to "Als PDF exportieren",
        "tournaments.internalStatsFilterAgeBands" to "Altersklassen",
        "tournaments.internalStatsFilterGenderColumn" to "Geschlecht",
        "tournaments.internalStatsGenderScopeAll" to "Alle",
        "tournaments.internalStatsGenderScopeGirls" to "Mädchen",
        "tournaments.internalStatsLast12Months" to "Letzte 12 Monate",
        "tournaments.internalStatsLast3Months" to "Letzte 3 Monate",
        "tournaments.internalStatsLast6Months" to "Letzte 6 Monate",
        "tournaments.internalStatsOpenButton" to "Turnierstatistik (Einzel)",
        "tournaments.internalStatsPeriod" to "Zeitraum",
        "tournaments.internalStatsPoints" to "Summe",
        "tournaments.internalStatsPointsExplain" to "Wertung: Pro Gruppe wird die Platzierung als Prozentzahl ausgedrückt (bei N Teilnehmern mit Platzierung: 1. = 100 %, Letzter = 0 %, dazwischen linear; gleiche Platzierung = gleicher Wert). N umfasst alle Platzierten in der Gruppe (inkl. Gäste). Bei nur einem Teilnehmer: 100 %. Wer die K.-o.-Runde erreicht, erhält den höchsten Gruppenwert der Klasse plus 1, danach je gewonnenes K.-o.-Spiel einen weiteren Punkt. Nur Vereinsmitglieder (Einzel). Die Filter J9–J19 / Erwachsene und Geschlecht („Alle“ = Weiblich- und Offen-Kanal, „Mädchen“ = nur Weiblich) beziehen sich auf das jeweilige Mitglied (Geburtsdatum und Geschlecht laut Vereinsdaten), nicht auf die Bezeichnung der Turnierklasse.",
        "tournaments.internalStatsTitle" to "Statistik interne Turniere (Einzel)",
        "tournaments.internalStatsTournamentsInPeriod" to "{count} Turnier(e) im Zeitraum (ohne Minimeisterschaften).",
        "tournaments.internalStatsTtAdult" to "Erwachsene",
        "tournaments.internalTournaments" to "Interne Turniere",
        "tournaments.knockoutLabel" to "KO",
        "tournaments.koRound" to "K.-o.-Runde",
        "tournaments.lastName" to "Nachname",
        "tournaments.livePosition" to "Live-Platz",
        "tournaments.loadFromTraining" to "Aus Trainingstag laden",
        "tournaments.markMatchLive" to "Als laufend markieren",
        "tournaments.maxGroupSize" to "Maximale Gruppengröße",
        "tournaments.mergeClasses" to "Klassen zusammenlegen (gemeinsame Gruppenphase)",
        "tournaments.mergeDistribute" to "Spieler aus A auf alle Gruppen (von B) verteilen",
        "tournaments.mergeSingleGroup" to "Alle Spieler aus A in eine Gruppe (bei B)",
        "tournaments.minBirthYear" to "Geboren im Jahr oder später",
        "tournaments.miniChampionshipLocation" to "Ort",
        "tournaments.miniChampionships" to "Minimeisterschaften",
        "tournaments.miniChampionshipYear" to "Jahr",
        "tournaments.miniChampionshipYearHint" to "12 = in diesem Jahr 12 oder 13 Jahre, 10 = 10 oder 11, 8 = 9 und jünger",
        "tournaments.minimumParticipantsForPairings" to "Mindestens 2 Teilnehmer für Paarungen erforderlich.",
        "tournaments.missingDataPDF" to "Fehlende Daten als PDF",
        "tournaments.missingDataPDFSubtitle" to "Bitte die fehlenden Daten (markiert mit ____) bei den Teilnehmern erfragen und hier notieren.",
        "tournaments.missingDataPDFSubtitleTop3" to "Fehlende Daten der ersten 3 Plätze (markiert mit ____) bitte erfragen und hier notieren.",
        "tournaments.missingDataPDFTitle" to "Fehlende Teilnehmerdaten – Minimeisterschaft",
        "tournaments.missingDataPDFTitleTop3" to "Fehlende Daten – Top 3 Minimeisterschaft",
        "tournaments.name" to "Name",
        "tournaments.newMiniChampionship" to "Neue Minimeisterschaft",
        "tournaments.setShort" to "Satz",
        "tournaments.newTournament" to "Neues Turnier",
        "tournaments.noAssignableMatches" to "Keine Spiele verfügbar, bei denen beide Spieler frei sind.",
        "tournaments.noClassesYet" to "Noch keine Klassen vorhanden. Fügen Sie eine neue Klasse hinzu.",
        "tournaments.noEligibleClass" to "Keine passende Klasse gefunden.",
        "tournaments.noFreeTables" to "Keine freien Tische verfügbar.",
        "tournaments.noMatchingTournamentsTitle" to "Keine passenden Turniere",
        "tournaments.noOrphanedMatchesFound" to "Keine verwaisten Spiele gefunden.",
        "tournaments.noPlacementsYet" to "Noch keine Platzierungen vorhanden.",
        "tournaments.noPlayerDataAvailable" to "Keine Spielerdaten verfügbar",
        "tournaments.noPoolRulesYet12" to "Noch keine Regeln. Beispiel: Plätze 1 und 2 -> obere Runde-2-Gruppen.",
        "tournaments.noPoolRulesYetFinal" to "Noch keine Regeln. Beispiel: Plätze 1 und 2 -> Endrunde.",
        "tournaments.noTop3Yet" to "Es stehen noch keine Top-3-Platzierungen fest.",
        "tournaments.noTournamentDate" to "Kein Turnierdatum vorhanden.",
        "tournaments.noTournamentsCreatedYet" to "Es wurden noch keine Turniere angelegt.",
        "tournaments.noTrainingOnDate" to "Kein Trainingstag für {date} gefunden.",
        "tournaments.noTrainingParticipants" to "Keine Teilnehmer im Trainingstag für dieses Datum gefunden.",
        "tournaments.noValidTrainingParticipants" to "Keine gültigen Teilnehmer im Trainingstag für dieses Datum gefunden.",
        "tournaments.numberOfGroups" to "Anzahl Gruppen",
        "tournaments.numberOfTables" to "Anzahl Tische",
        "tournaments.openTournaments" to "Offene Turniere",
        "tournaments.optional" to "optional",
        "tournaments.orphanedMatchesRemoved" to "{count} verwaiste Spiele entfernt.",
        "tournaments.outOfCompetition" to "Spieler aus A außer Konkurrenz",
        "tournaments.page" to "Seite",
        "tournaments.pairingAlreadyExists" to "Diese Paarung existiert bereits.",
        "tournaments.pairings" to "Doppel-Paarungen",
        "tournaments.pairingsCreatedWithErrors" to "{successCount} Paarungen erstellt, {errorCount} Fehler.",
        "tournaments.participantConflicts" to "Konflikte",
        "tournaments.participantNotFound" to "Teilnehmer nicht gefunden.",
        "tournaments.participants" to "Teilnehmer",
        "tournaments.participantsNeedClassAssignment" to "{count} Teilnehmer sind noch keiner Klasse zugeordnet. Diese sollten zuerst zugeordnet werden.",
        "tournaments.phone" to "Telefon",
        "tournaments.placementsPendingFinals" to "Endplatzierungen erscheinen, sobald mehrere Gruppen oder eine Endrunde vorhanden sind.",
        "tournaments.placementsPendingGroups" to "Gruppenplatzierungen erscheinen, sobald Gruppenspiele vorhanden sind.",
        "tournaments.placementsPendingNoGroups" to "Sobald Gruppenspiele oder eine Endrunde vorhanden sind, erscheinen hier die Platzierungen.",
        "tournaments.placementsPendingSelectedClass" to "Für die aktuell gewählte Klasse gibt es noch keine Platzierungen.",
        "tournaments.placementsPendingTitle" to "Platzierungen noch nicht verfügbar",
        "tournaments.placesFromEachGroup" to "Plätze aus jeder Gruppe (z. B. 1,2)",
        "tournaments.player" to "Spieler",
        "tournaments.playerOne" to "Spieler 1",
        "tournaments.playerTwo" to "Spieler 2",
        "tournaments.playInGroups" to "Spielen in Gruppen",
        "tournaments.playThirdPlace" to "Platz 3 ausspielen",
        "tournaments.pleaseEnterDate" to "Bitte geben Sie ein Datum ein!",
        "tournaments.pleaseSelectParticipant" to "Bitte wählen Sie einen Teilnehmer aus!",
        "tournaments.points" to "Punkte",
        "tournaments.pointsRatio" to "Spielpunkte",
        "tournaments.poolRuleLabel" to "Regel {number}",
        "tournaments.poolRulePlacesHelp" to "Beispiel: 1 oder 1,2",
        "tournaments.poolRulePlacesLabel" to "Welche Plätze kommen weiter?",
        "tournaments.poolRulePreview" to "Aus jeder Gruppe gehen Platz {places} weiter in {target}.",
        "tournaments.poolRuleQuickExamples" to "Schnellbeispiele:",
        "tournaments.poolRuleSummary" to "Plätze {places} gehen in {target}",
        "tournaments.poolRuleTargetGroupsDetailed" to "{count} Zielgruppen",
        "tournaments.poolRuleTargetKnockout" to "das K.-o.-Feld",
        "tournaments.poolRuleTargetLabel" to "Wohin gehen diese Plätze?",
        "tournaments.position" to "Platz",
        "tournaments.problemConfigDescription" to "Prüfe Datum, Name und Gewinnsätze.",
        "tournaments.problemConfigTitle" to "Konfiguration unvollständig",
        "tournaments.problemConflictsDescription" to "Prüfe unpassende Klassen, fehlende Daten oder unklare Zuordnungen.",
        "tournaments.problemConflictsTitle" to "{count} Teilnehmer mit Konflikten",
        "tournaments.problemDoublesAutoDescription" to "Die offene Doppelklasse kann direkt automatisch gepaart werden.",
        "tournaments.problemDoublesDescription" to "Ein oder mehrere Doppelklassen brauchen noch Partnerzuordnungen.",
        "tournaments.problemDoublesTitle" to "{count} offene Doppelpartner",
        "tournaments.problemGroupMatchesDescription" to "Die Gruppen sind bereit, aber die Spiele wurden noch nicht erstellt.",
        "tournaments.problemGroupMatchesTitle" to "Gruppenspiele noch nicht erzeugt",
        "tournaments.problemGroupsMissingDescription" to "Für das Gruppenturnier müssen zuerst Gruppen angelegt werden.",
        "tournaments.problemGroupsMissingTitle" to "Gruppen noch nicht erstellt",
        "tournaments.problemKnockoutReadyDescription" to "Die Gruppenphase ist abgeschlossen und die Endrunde kann jetzt erzeugt werden.",
        "tournaments.problemKnockoutReadyTitle" to "K.-o.-Runde kann gestartet werden",
        "tournaments.problemUnassignedAutoDescription" to "{count} davon können direkt automatisch zugeordnet werden.",
        "tournaments.problemUnassignedDescription" to "Diese Teilnehmer brauchen noch eine manuelle Klassenzuordnung.",
        "tournaments.problemUnassignedTitle" to "{count} Teilnehmer ohne Klasse",
        "tournaments.promotionRule12" to "Weiterkommen: Vorrunde → Zwischenrunde (1→2)",
        "tournaments.promotionRuleDescription12" to "Hier legst du fest, welche Plätze aus jeder Vorrundengruppe in die Zwischenrunde kommen.",
        "tournaments.promotionRuleDescriptionFinalGroups" to "Hier legst du fest, welche Plätze aus der vorherigen Runde in die Gruppen der Endrunde kommen.",
        "tournaments.promotionRuleDescriptionFinalKnockout" to "Hier legst du fest, welche Plätze aus der vorherigen Runde in das K.-o.-Feld kommen.",
        "tournaments.promotionRuleFinal" to "Weiterkommen: Runde {from} → Runde {to}",
        "tournaments.randomizeGroups" to "Zufällig verteilen",
        "tournaments.randomPairings" to "Zufällige Doppel-Paarungen",
        "tournaments.randomPairingsCreated" to "Zufällige Paarungen wurden erstellt.",
        "tournaments.resetGroupMatches" to "Gruppenspiele",
        "tournaments.resetGroups" to "Gruppen zurücksetzen",
        "tournaments.result" to "Ergebnis",
        "tournaments.resultsRanking" to "Rangliste",
        "tournaments.round" to "Runde",
        "tournaments.roundGroupCount" to "Anzahl Gruppen",
        "tournaments.roundMode" to "Modus",
        "tournaments.ruleStatusBlocked" to "Blockiert",
        "tournaments.ruleStatusOk" to "Passt",
        "tournaments.ruleStatusOkDescription" to "Diese Regel passt zur aktuellen Zielrunde und kann so verwendet werden.",
        "tournaments.ruleStatusReview" to "Prüfen",
        "tournaments.save" to "Speichern",
        "tournaments.saveRounds" to "Runden speichern",
        "tournaments.seeded" to "Gesetzt",
        "tournaments.selectClass" to "Klasse auswählen",
        "tournaments.selectClassPrompt" to "Bitte wählen Sie oben eine Klasse aus.",
        "tournaments.selectedTournament" to "Aktives Turnier",
        "tournaments.selectParticipant" to "-- Teilnehmer auswählen --",
        "tournaments.selectPlayer" to "Spieler auswählen",
        "tournaments.selectTournamentFirst" to "Bitte wählen Sie zuerst ein Turnier aus.",
        "tournaments.selectTwoDifferentPlayers" to "Bitte wählen Sie zwei verschiedene Spieler aus.",
        "tournaments.setDiff" to "Satzdifferenz",
        "tournaments.sets" to "Sätze",
        "tournaments.showClass" to "Klasse anzeigen",
        "tournaments.showingTournamentCount" to "{visible} von {total}",
        "tournaments.showPlayerDetails" to "Spielerdetails anzeigen",
        "tournaments.singles" to "Einzel",
        "tournaments.sourceClass" to "Quelle",
        "tournaments.stageActionMissingRulesHint" to "Lege zuerst mindestens eine Weiterkommens-Regel an, bevor du Spieler in die nächste Runde übernimmst.",
        "tournaments.stageActionRun" to "Jetzt ausführen",
        "tournaments.stageActionsDescription" to "Diese Schritte übernehmen qualifizierte Spieler in die nächste Runde.",
        "tournaments.stageActionsTitle" to "Nächste Aktionen",
        "tournaments.stageConfigBadServerResponse" to "Fehlerhafte Antwort vom Server.",
        "tournaments.stageConfigCurrentSetup" to "Aktuelle Struktur",
        "tournaments.stageConfigIntro" to "Zwischenrunde ist optional. Wenn du sie aktivierst, gibt es danach immer eine Endrunde. KO-Endrunde wird als ein einziges Feld erzeugt.",
        "tournaments.stageConfigLoadError" to "Fehler beim Laden der Rundenkonfiguration.",
        "tournaments.stageConfigLoading" to "Lade Zwischenrunden …",
        "tournaments.stageConfigMissingIds" to "Kann nicht speichern: Vereins- oder Turnier-ID fehlt.",
        "tournaments.stageConfigTitle" to "Zwischenrunde & Endrunde",
        "tournaments.stageCreated" to "Runde {round} wurde erstellt.",
        "tournaments.stageFinalDescription" to "Bestimme, ob die Endrunde als Gruppenphase oder direkt als K.-o.-Feld gespielt wird.",
        "tournaments.stageFlowBreakdownActionAddRule" to "Regel anlegen",
        "tournaments.stageFlowBreakdownActionOpen" to "Regel öffnen",
        "tournaments.stageFlowBreakdownActionReview" to "Fehler prüfen",
        "tournaments.stageFlowBreakdownErrors" to "{count} Fehler blockieren",
        "tournaments.stageFlowBreakdownMissingRule" to "Noch keine vollständige Regel angelegt",
        "tournaments.stageFlowBreakdownOk" to "Konfiguration passt",
        "tournaments.stageFlowBreakdownWarnings" to "{count} Hinweis(e) offen",
        "tournaments.stageFlowDirectFinal" to "Vorrunde -> Endrunde ({final})",
        "tournaments.stageFlowHealthBlocked" to "Rundenlogik widersprüchlich",
        "tournaments.stageFlowHealthBlockedDescription" to "Mindestens eine Regel passt aktuell nicht zur Zielrunde oder enthält blockierende Konfigurationsfehler.",
        "tournaments.stageFlowHealthIncomplete" to "Rundenlogik unvollständig",
        "tournaments.stageFlowHealthMissingRules" to "Mindestens ein Übergang hat noch keine vollständige Weiterkommens-Regel.",
        "tournaments.stageFlowHealthOk" to "Rundenlogik passt",
        "tournaments.stageFlowHealthOkDescription" to "Die Übergänge zwischen den Runden sind vollständig konfiguriert und aktuell stimmig.",
        "tournaments.stageFlowHealthReviewDescription" to "Die Rundenlogik ist grundsätzlich nutzbar, sollte aber wegen offener Hinweise noch geprüft werden.",
        "tournaments.stageFlowPreviewMissing" to "Noch keine Regel konfiguriert.",
        "tournaments.stageFlowPreviewRule" to "Plätze {places} gehen in {target}",
        "tournaments.stageFlowPreviewRuleWithCount" to "{base} (voraussichtlich {count} Qualifizierte)",
        "tournaments.stageFlowQualifiedPreviewEntry" to "G{group} · Platz {position} · {name}",
        "tournaments.stageFlowQualifiedPreviewTitle" to "Aktuell qualifiziert",
        "tournaments.stageFlowReadinessIncompleteGroups" to "{count} Gruppe(n) sind noch nicht vollständig entschieden",
        "tournaments.stageFlowReadinessNoGroups" to "Noch keine passenden Gruppen vorhanden",
        "tournaments.stageFlowReadinessReady" to "Übergang ist fachlich startklar",
        "tournaments.stageFlowRecommendationError" to "Prüfe zuerst den ersten blockierenden Fehler in der Rundenlogik.",
        "tournaments.stageFlowRecommendationFixes" to "Die typischen Konfigurationsprobleme können direkt automatisch bereinigt werden.",
        "tournaments.stageFlowRecommendationMissingRule" to "Für {label} fehlt noch eine vollständige Regel. Lege am besten damit los.",
        "tournaments.stageFlowRecommendationSave" to "Die Rundenlogik ist stimmig. Du kannst die Konfiguration jetzt speichern.",
        "tournaments.stageFlowRecommendationTitle" to "Empfohlener nächster Schritt",
        "tournaments.stageFlowRecommendationWarnings" to "Es gibt noch Hinweise, die du vor dem Speichern prüfen solltest.",
        "tournaments.stageFlowWithIntermediate" to "Vorrunde -> Zwischenrunde ({stage2}) -> Endrunde ({final})",
        "tournaments.stageParticipantsTransferred" to "Qualifizierte Spieler wurden in {round} übernommen.",
        "tournaments.stageStep1" to "Schritt 1",
        "tournaments.stageStep1Description" to "Entscheide zuerst, ob nach der Vorrunde noch eine zusätzliche Runde gespielt werden soll.",
        "tournaments.stageStep1Title" to "Zwischenrunde festlegen",
        "tournaments.stageStep2" to "Schritt 2",
        "tournaments.stageStep2Description" to "Lege fest, wie die Zwischenrunde aussieht und wie viele Gruppen dort gebraucht werden.",
        "tournaments.stageStep3" to "Schritt 3",
        "tournaments.stageValidationApplyAllFixes" to "{count} Schnellkorrektur(en) anwenden",
        "tournaments.stageValidationApplyFix" to "Übernehmen",
        "tournaments.stageValidationApplyTargetGroupFix" to "Auf {count} Zielgruppen setzen",
        "tournaments.stageValidationApplyTargetTypeFix" to "Auf {target} umstellen",
        "tournaments.stageValidationDescription" to "Diese Punkte solltest du vor dem Speichern oder Übernehmen der nächsten Runde korrigieren.",
        "tournaments.stageValidationGroupCountRequired" to "Bitte mindestens eine gültige Gruppenanzahl festlegen.",
        "tournaments.stageValidationKnockoutByesLikely" to "Mit voraussichtlich {count} Qualifizierten wird das K.-o.-Feld sehr wahrscheinlich Freilose enthalten.",
        "tournaments.stageValidationKnockoutNeedsTwoPlayers" to "Für ein K.-o.-Feld werden mindestens 2 Qualifizierte benötigt.",
        "tournaments.stageValidationKnockoutTargetOnly" to "Bei einer K.-o.-Endrunde ist hier nur das K.-o.-Feld als Ziel erlaubt.",
        "tournaments.stageValidationNoRules" to "Für {stage} ist noch keine Weiterkommens-Regel angelegt.",
        "tournaments.stageValidationNotEnoughQualifiersForGroups" to "Mit nur {count} Qualifizierten für {groups} Zielgruppen würden leere Gruppen entstehen.",
        "tournaments.stageValidationRulePlacesDuplicate" to "Eine Regel darf denselben Platz nicht mehrfach enthalten.",
        "tournaments.stageValidationRulePlacesGap" to "Die Platzangabe hat Lücken. Meist ist eine zusammenhängende Reihenfolge wie 1,2 oder 1,2,3 gemeint.",
        "tournaments.stageValidationRulePlacesInvalid" to "Die Platzangabe ist ungültig. Erlaubt sind nur positive ganze Zahlen wie 1 oder 1,2.",
        "tournaments.stageValidationRulePlacesRequired" to "Trage mindestens einen Platz ein, der weiterkommen soll.",
        "tournaments.stageValidationRulesOverlap" to "Platz {place} ist doppelt vergeben, nämlich in Regel {first} und Regel {second}.",
        "tournaments.stageValidationSaveBlocked" to "Bitte zuerst die markierten Konfigurationsfehler korrigieren.",
        "tournaments.stageValidationSuggestion" to "Vorschlag: {value}",
        "tournaments.stageValidationTargetGroupCountMismatch" to "Die Anzahl der Zielgruppen muss zur Zielrunde passen. Erwartet: {expected}.",
        "tournaments.stageValidationTargetGroupsRequired" to "Bitte eine gültige Anzahl von Zielgruppen angeben.",
        "tournaments.stageValidationTargetTypeMismatch" to "Das Ziel dieser Regel muss zur Zielrunde passen. Erwartet: {target}.",
        "tournaments.stageValidationThinGroupsLikely" to "Mit {count} Qualifizierten auf {groups} Zielgruppen werden die Gruppen vermutlich sehr klein.",
        "tournaments.stageValidationTitle" to "Konfiguration prüfen",
        "tournaments.startKORound" to "K.o.-Runde starten",
        "tournaments.statusActionAssign" to "Zuweisen",
        "tournaments.statusActionCreate" to "Erstellen",
        "tournaments.statusActionGenerate" to "Erzeugen",
        "tournaments.statusActionPair" to "Paaren",
        "tournaments.statusActionReview" to "Prüfen",
        "tournaments.statusActionStart" to "Starten",
        "tournaments.statusConfigIncomplete" to "Konfiguration unvollständig",
        "tournaments.statusConfigReady" to "Konfiguration bereit",
        "tournaments.statusFinished" to "Fertig",
        "tournaments.statusGroupsMissing" to "Gruppen noch nicht erstellt",
        "tournaments.statusGroupsReady" to "Gruppen bereit",
        "tournaments.statusGroupsRunning" to "Gruppenphase läuft",
        "tournaments.statusKnockoutReady" to "K.-o.-Runde startklar",
        "tournaments.statusKnockoutRunning" to "K.-o.-Runde läuft",
        "tournaments.statusLive" to "Live",
        "tournaments.statusOpen" to "Offen",
        "tournaments.statusParticipantsConflicts" to "{count} Teilnehmer mit Konflikten",
        "tournaments.statusParticipantsReady" to "{count} Teilnehmer konfliktfrei",
        "tournaments.statusParticipantsUnassigned" to "{count} ohne Klasse",
        "tournaments.statusTournamentCompleted" to "Turnier abgeschlossen",
        "tournaments.statusUnpairedDoubles" to "{count} Doppel ohne Partner",
        "tournaments.strategy" to "Strategie",
        "tournaments.tabConfig" to "Konfiguration",
        "tournaments.tabGroups" to "Gruppen",
        "tournaments.table" to "Tisch",
        "tournaments.tablesDistributed" to "Tische wurden verteilt.",
        "tournaments.tabParticipants" to "Teilnehmer",
        "tournaments.tabPlacements" to "Platzierungen",
        "tournaments.tabResults" to "Ergebnisse",
        "tournaments.target" to "Ziel",
        "tournaments.targetClass" to "Ziel",
        "tournaments.targetGroupCount" to "Ziel-Gruppenanzahl",
        "tournaments.targetGroupsLabel" to "{count} Gruppen",
        "tournaments.tournamentClassGenderFemale" to "Weiblich",
        "tournaments.tournamentClassGenderOpen" to "Alle",
        "tournaments.tournamentName" to "Turniername",
        "tournaments.tournamentParticipations" to "Offizielle Turniere & Teilnahmen",
        "tournaments.transferQualifiedToFinalFromIntermediate" to "Qualifizierte Spieler in die Endrunde übernehmen",
        "tournaments.transferQualifiedToFinalFromIntermediateDesc" to "Nutzt die Regeln Zwischenrunde -> Endrunde und übernimmt die qualifizierten Teilnehmer.",
        "tournaments.transferQualifiedToFinalFromPreliminary" to "Qualifizierte Spieler direkt in die Endrunde übernehmen",
        "tournaments.transferQualifiedToFinalFromPreliminaryDesc" to "Nutzt die Regeln Vorrunde -> Endrunde und erzeugt daraus direkt die qualifizierten Teilnehmer.",
        "tournaments.transferQualifiedToIntermediate" to "Qualifizierte Spieler in die Zwischenrunde übernehmen",
        "tournaments.transferQualifiedToIntermediateDesc" to "Nutzt die Regeln Vorrunde -> Zwischenrunde und übernimmt die qualifizierten Teilnehmer.",
        "tournaments.unknown" to "Unbekannt",
        "tournaments.unknownDate" to "Unbekanntes Datum",
        "tournaments.unmarkMatchLive" to "Laufend-Markierung entfernen",
        "tournaments.unpairedDoubles" to "Doppel ohne Partner",
        "tournaments.useIntermediateStage" to "Zwischenrunde verwenden",
        "tournaments.warningBirthDateMissing" to "Geburtsdatum fehlt für diese Klasse",
        "tournaments.warningClassMissing" to "Klasse nicht gefunden",
        "tournaments.warningGenderMismatch" to "Geschlecht passt nicht zur Klasse",
        "tournaments.warningGenderMissing" to "Geschlecht fehlt für diese Klasse",
        "tournaments.warningMissingPairing" to "Doppelpartner fehlt",
        "tournaments.warningTooOldForClass" to "Zu alt für diese Klasse",
        "tournaments.warningTooYoungForClass" to "Zu jung für diese Klasse",
        "tournaments.winningSets" to "Gewinnsätze",
        "tournaments.withoutClass" to "Ohne Klasse",
        "tournaments.workspaceProblemsTitle" to "{count} offene Punkte",
        "trainingDetails.birthdate" to "Geburtsdatum",
        "trainingDetails.birthYear" to "Geburtsjahr",
        "trainingDetails.last12Months" to "Letzte 12 Monate",
        "trainingDetails.last3Months" to "Letzte 3 Monate",
        "trainingDetails.maxBirthYear" to "Geboren ≤ Jahr",
        "trainingDetails.noTrainings" to "Keine Trainingsteilnahmen vorhanden",
        "trainingDetails.title" to "Trainings-Details",
        "trainingDetails.total" to "Gesamt",
        "trainingDetails.trainingParticipations" to "Trainingsteilnahmen (absteigend sortiert)",
        "trainingGroupsTab.addMember" to "Mitglied hinzufügen...",
        "trainingGroupsTab.cancel" to "Abbrechen",
        "trainingGroupsTab.create" to "Erstellen",
        "trainingGroupsTab.delete" to "Löschen",
        "trainingGroupsTab.edit" to "Bearbeiten",
        "trainingGroupsTab.editGroup" to "Gruppe bearbeiten",
        "trainingGroupsTab.groupName" to "Gruppenname",
        "trainingGroupsTab.groups" to "Gruppen",
        "trainingGroupsTab.members" to "Mitglieder",
        "trainingGroupsTab.newGroup" to "+ Neue Gruppe",
        "trainingGroupsTab.noMembersAvailable" to "Keine Mitglieder verfügbar",
        "trainingGroupsTab.remove" to "Entfernen",
        "trainingStats.actions" to "Aktionen",
        "trainingStats.activeMembers" to "Aktive Mitglieder",
        "trainingStats.allTrainingDays" to "Alle Trainingstage",
        "trainingStats.attendingMembers" to "Anwesende Mitglieder",
        "trainingStats.averageParticipationCurrentMonth" to "Durchschnittliche Teilnahme (aktueller Monat)",
        "trainingStats.averageParticipationHalfYear" to "Durchschnittliche Teilnahme (Halbjahr)",
        "trainingStats.averageParticipationLastMonth" to "Durchschnittliche Teilnahme (letzter Monat)",
        "trainingStats.averageParticipationQuarter" to "Durchschnittliche Teilnahme (Quartal)",
        "trainingStats.averageParticipationYear" to "Durchschnittliche Teilnahme (Jahr)",
        "trainingStats.birthdate" to "Geburtsdatum",
        "trainingStats.date" to "Datum",
        "trainingStats.lastTraining" to "Letztes Training",
        "trainingStats.memberParticipations" to "Mitglieder-Teilnahmen",
        "trainingStats.name" to "Name",
        "trainingStats.noParticipants" to "Keine Teilnehmer",
        "trainingStats.panelAgeGroups" to "Anwesenheit nach Altersklasse",
        "trainingStats.panelBestDay" to "Stärkster Trainingstag",
        "trainingStats.panelGroupPerformance" to "Entwicklung pro Gruppe",
        "trainingStats.panelMemberStructure" to "Mitgliederstruktur",
        "trainingStats.panelMonthlyTrend" to "Monatlicher Verlauf",
        "trainingStats.panelSummary" to "Kennzahlen (Filter)",
        "trainingStats.panelWeekdayStats" to "Trainingstage nach Wochentag",
        "trainingStats.participants" to "Teilnehmer",
        "trainingStats.participations12Months" to "Teilnahmen (12 Monate)",
        "trainingStats.participations3Months" to "Teilnahmen (3 Monate)",
        "trainingStats.participationsTotal" to "Teilnahmen (Gesamt)",
        "trainingStats.qttr" to "QTTR",
        "trainingStats.showDetails" to "Details anzeigen",
        "trainingStats.title" to "Trainings-Statistik",
        "trainingStats.trainingDayFilter" to "Trainingstag",
        "trainingStats.trainingDays" to "Trainingstage (letzte 12 Monate)",
        "trainingStats.ttr" to "TTR",
        "trainingStats.weekday" to "Wochentag",
        "trainingTimesTab.addTime" to "+ Zeit hinzufügen",
        "trainingTimesTab.cancel" to "Abbrechen",
        "trainingTimesTab.create" to "Erstellen",
        "trainingTimesTab.delete" to "Löschen",
        "trainingTimesTab.edit" to "Bearbeiten",
        "trainingTimesTab.editTime" to "Trainingszeit bearbeiten",
        "trainingTimesTab.excludeFromQuickDiaryCreate" to "Vom Schnellanlegen (Tagebuch) ausnehmen",
        "trainingTimesTab.excludeFromQuickDiarySaveError" to "Die Einstellung konnte nicht gespeichert werden.",
        "trainingTimesTab.friday" to "Freitag",
        "trainingTimesTab.from" to "Von:",
        "trainingTimesTab.loading" to "Lade Trainingszeiten...",
        "trainingTimesTab.monday" to "Montag",
        "trainingTimesTab.noTimes" to "Keine Trainingszeiten definiert",
        "trainingTimesTab.saturday" to "Samstag",
        "trainingTimesTab.save" to "Speichern",
        "trainingTimesTab.saveError" to "Fehler beim Speichern der Trainingszeit",
        "trainingTimesTab.sunday" to "Sonntag",
        "trainingTimesTab.thursday" to "Donnerstag",
        "trainingTimesTab.to" to "Bis:",
        "trainingTimesTab.tuesday" to "Dienstag",
        "trainingTimesTab.wednesday" to "Mittwoch",
        "trainingTimesTab.weekday" to "Wochentag:",
        "unknown" to "Unbekannt",
    ) }

    private val en_AU: Map<String, String> by lazy { mapOf(
        "accident.accident" to "Accident",
        "accident.accidentDescription" to "Description of the accident...",
        "accident.close" to "Close",
        "accident.member" to "Member",
        "accident.pleaseSelect" to "Please select",
        "accident.reportAccident" to "Report accidents",
        "accident.reportedAccidents" to "Reported Accidents",
        "accident.submit" to "Submit",
        "activityStats.activityStatistics" to "Exercise statistics",
        "activityStats.last3Participations" to "Last 3 Entries",
        "activityStats.noParticipations" to "No entries available",
        "activityStats.noStatistics" to "No statistics available",
        "activityStats.title" to "Exercise Stats",
        "app.name" to "Training Diary",
        "app.title" to "Training Diary",
        "auth.accountActivated" to "Account activated! You can now log in.",
        "auth.activate" to "Activate",
        "auth.activateAccount" to "Activate account",
        "auth.activationFailed" to "Activation failed. Please check the link or try again.",
        "auth.confirmPassword" to "Confirm password",
        "auth.email" to "Email",
        "auth.forgotPassword" to "Forgot password?",
        "auth.forgotPasswordDescription" to "Enter your email address. You will receive a link to reset your password.",
        "auth.hasAccount" to "Already have an account?",
        "auth.login" to "Login",
        "auth.loginFailed" to "Login failed. Please check your credentials and try again.",
        "auth.loginSuccess" to "Successfully logged in",
        "auth.logout" to "Logout",
        "auth.logoutSuccess" to "Successfully logged out",
        "auth.newPassword" to "New password",
        "auth.noAccount" to "Don't have an account?",
        "auth.password" to "Password",
        "auth.passwordResetSuccess" to "Your password has been changed successfully. You can now log in with your new password.",
        "auth.passwordsDoNotMatch" to "Passwords do not match.",
        "auth.passwordTooShort" to "Password must be at least 6 characters long.",
        "auth.register" to "Register",
        "auth.registerFailed" to "Registration failed. Please try again.",
        "auth.registerSuccess" to "Registration successful! Please check your email to activate your account.",
        "auth.rememberMe" to "Remember me",
        "auth.resetEmailSent" to "If an account with this email exists, a reset link has been sent. Please check your inbox (and spam folder).",
        "auth.resetFailed" to "Password could not be changed. The link may have expired.",
        "auth.resetPassword" to "Set new password",
        "auth.resetRequestFailed" to "Request failed. Please try again.",
        "auth.saveNewPassword" to "Save password",
        "auth.saving" to "Saving...",
        "auth.sending" to "Sending...",
        "auth.sendResetLink" to "Send link",
        "auth.sessionExpired" to "Your session has expired. You will be logged out.",
        "auth.toLogin" to "Go to login",
        "baseDialog.close" to "Close",
        "baseDialog.minimize" to "minimize",
        "baseDialog.resize" to "Resize",
        "billing.autoSuggestMapping" to "Car suggestions",
        "billing.deleteBilling" to "Delete",
        "billing.deleteConfirm" to "Really delete this generated statement?",
        "billing.deleteError" to "Billing could not be deleted.",
        "billing.deleteSuccess" to "Billing has been deleted.",
        "billing.deleteTemplate" to "Delete template",
        "billing.deleteTemplateConfirm" to "Really delete this template?",
        "billing.deleteTemplateError" to "Template could not be deleted.",
        "billing.deleteTemplateSuccess" to "Template has been deleted.",
        "billing.documentDate" to "Date",
        "billing.downloadError" to "PDF could not be downloaded.",
        "billing.downloadPdf" to "Download PDF",
        "billing.generateAndDownloadPdf" to "Generate + download PDF",
        "billing.generateError" to "PDF could not be created.",
        "billing.generateOwnBilling" to "Generate your own billing",
        "billing.generatePdf" to "Generate PDF",
        "billing.generateSuccess" to "PDF has been created.",
        "billing.generatingPdf" to "Create PDF...",
        "billing.hourlyRate" to "Hourly salary",
        "billing.hoursAutoHint" to "Number of hours is automatically calculated from the training days: {hours} h ({count} units).",
        "billing.hoursTotal" to "Number of hours",
        "billing.iban" to "IBAN",
        "billing.ibanBoxesReset" to "IBAN boxes have been reset.",
        "billing.ibanLearnCancel" to "Cancel IBAN learning",
        "billing.ibanLearnDone" to "IBAN boxes have been assigned from the selected area.",
        "billing.ibanLearnStart" to "Learn IBAN",
        "billing.ibanLearnStep1" to "IBAN learning: please click on the first IBAN box to be used.",
        "billing.ibanLearnStep2" to "IBAN learning: please click on the last IBAN box to be used.",
        "billing.ibanWithoutCountry" to "without country code",
        "billing.locationText" to "Location",
        "billing.mappingEditorHint" to "Select the field, then click in the PDF. The position will be taken over immediately.",
        "billing.mappingEditorTitle" to "Assign fields in the PDF with a click",
        "billing.mappingField" to "Field",
        "billing.mappingHint" to "Adjust and save coordinates once for each field. These positions are used in “Create PDF”.",
        "billing.mappingPreviewError" to "PDF preview for mapping could not be loaded.",
        "billing.mappingSaved" to "Mapping has been saved.",
        "billing.mappingSaveError" to "Mapping could not be saved.",
        "billing.mappingSuggested" to "Car suggestions have been entered. Please check and fine-tune.",
        "billing.mappingSuggestError" to "Auto suggestions could not be determined.",
        "billing.mappingTitle" to "Position mapping",
        "billing.monthFrom" to "month of",
        "billing.monthTo" to "month to",
        "billing.noRuns" to "No invoices available yet.",
        "billing.noSessionsInRange" to "No training sessions found in the selected period.",
        "billing.noTemplates" to "No templates available yet.",
        "billing.omitField" to "do not specify",
        "billing.openMappingEditor" to "Mapping with a click",
        "billing.resetIbanBoxes" to "IBAN boxes reset",
        "billing.runSection" to "Billing run",
        "billing.runsTitle" to "Previous billings",
        "billing.sameAccountCheckbox" to "Same account as last statement",
        "billing.saveMapping" to "Save mapping",
        "billing.selfRecipientName" to "Own name",
        "billing.sessionHours" to "Hours",
        "billing.sessionLabel" to "Identifier",
        "billing.sessionTime" to "Time",
        "billing.step1" to "Step 1: Store template",
        "billing.step2" to "Step 2: Create a billing run",
        "billing.step3" to "Step 3: Generate and download PDF",
        "billing.subtitle" to "Create your own monthly practice lesson bill.",
        "billing.template" to "Template",
        "billing.templateDescription" to "Description",
        "billing.templateName" to "Template name",
        "billing.templatePdf" to "PDF template",
        "billing.templateSection" to "Upload template",
        "billing.title" to "Invoice",
        "billing.uploadTemplate" to "Save Template",
        "calendar.agendaEmpty" to "No events this month.",
        "calendar.agendaTitle" to "Events this month",
        "calendar.cancelCancellation.confirm" to "Cancel cancellation",
        "calendar.cancelCancellation.message" to "Really cancel the training cancellation “{title}” on {date}?",
        "calendar.cancelCancellation.title" to "Cancel training cancellation",
        "calendar.cancellation.date" to "Date",
        "calendar.cancellation.description" to "Hides regular training times.",
        "calendar.cancellation.fallbackTitle" to "Training cancelled",
        "calendar.cancellation.reasonPlaceholder" to "Reason (optional)",
        "calendar.cancellation.saving" to "Saving...",
        "calendar.cancellation.submit" to "Add",
        "calendar.cancellation.subtitle" to "Training cancellation",
        "calendar.cancellation.title" to "Training cancelled",
        "calendar.cancellation.trainingGroups" to "Training groups",
        "calendar.cancellation.untilOptional" to "Until optional",
        "calendar.customEvent.categoryPlaceholder" to "Category (optional)",
        "calendar.customEvent.description" to "District meetings, sessions, internal meetings, ...",
        "calendar.customEvent.saving" to "Saving...",
        "calendar.customEvent.submit" to "Create",
        "calendar.customEvent.subtitleFallback" to "Own event",
        "calendar.customEvent.title" to "Own events",
        "calendar.customEvent.titlePlaceholder" to "Title",
        "calendar.description" to "Training days, club tournaments and league matches in a monthly view.",
        "calendar.eventTitles.match" to "League match",
        "calendar.eventTitles.officialTournament" to "Tournament participation",
        "calendar.eventTitles.tournament" to "Tournament",
        "calendar.eventTitles.training" to "training",
        "calendar.eyebrow" to "Club calendar",
        "calendar.holidayTypes.holiday" to "Holiday",
        "calendar.holidayTypes.schoolHoliday" to "School holidays",
        "calendar.legend.customEvent" to "Event",
        "calendar.legend.holiday" to "Holiday",
        "calendar.legend.match" to "League match",
        "calendar.legend.officialTournament" to "Participation",
        "calendar.legend.schoolHoliday" to "School holidays",
        "calendar.legend.tournament" to "Tournament",
        "calendar.legend.training" to "training",
        "calendar.legend.trainingCancellation" to "Cancelled",
        "calendar.loadError" to "Calendar data could not be loaded.",
        "calendar.loading" to "Loading calendar data...",
        "calendar.match.guest" to "Away",
        "calendar.match.home" to "Home",
        "calendar.noClub" to "Please select a club first.",
        "calendar.options.subtitle" to "Cancellations & own events",
        "calendar.options.title" to "Options",
        "calendar.participants" to "{count} participants",
        "calendar.quickCancellation.confirm" to "Add cancellation",
        "calendar.quickCancellation.message" to "Mark “{title}” as training cancellation?",
        "calendar.quickCancellation.noGroups" to "No training groups with training times are available.",
        "calendar.quickCancellation.title" to "Training cancellation",
        "calendar.quickCancellation.trainingGroups" to "Affected training groups",
        "calendar.quickCancellation.useWholeRange" to "Apply to the full period ({start} to {end})",
        "calendar.recurringTrainingTime" to "Regular training time",
        "calendar.sources.customEvents" to "Own events",
        "calendar.sources.holidays" to "Holidays/school holidays",
        "calendar.sources.matches" to "League matches",
        "calendar.sources.officialTournaments" to "Tournament participations",
        "calendar.sources.tournaments" to "Tournaments",
        "calendar.sources.trainingCancellations" to "Training cancellations",
        "calendar.sources.trainingDays" to "Training days",
        "calendar.sources.trainingTimes" to "Training times",
        "calendar.sourceWarning" to "{source} could not be loaded",
        "calendar.starts" to "{count} starts",
        "calendar.title" to "Calendar",
        "calendar.today" to "Today",
        "calendar.tournament.club" to "Club tournament",
        "calendar.tournament.open" to "Open tournament",
        "calendar.weekdays.friday" to "Fri",
        "calendar.weekdays.monday" to "Mon",
        "calendar.weekdays.saturday" to "Sat",
        "calendar.weekdays.sunday" to "Sun",
        "calendar.weekdays.thursday" to "Thu",
        "calendar.weekdays.tuesday" to "Tue",
        "calendar.weekdays.wednesday" to "Wed",
        "club.accessDenied" to "Access to the club was denied.",
        "club.accessRequested" to "Access has been requested.",
        "club.accessRequestFailed" to "Access request could not be submitted.",
        "club.accessRequestPending" to "Access to this club has been requested. Please be patient.",
        "club.create" to "Create Club",
        "club.createTitle" to "Create club",
        "club.diary" to "Training diary",
        "club.errorLoadingRequests" to "Failed to load open requests",
        "club.load" to "Load",
        "club.members" to "Members",
        "club.mobileSelectHint" to "Please select a club first to use the app on your smartphone.",
        "club.name" to "Club Name",
        "club.new" to "New Club",
        "club.noAccess" to "You have not yet been granted access to this club.",
        "club.openAccessRequests" to "Open access requests",
        "club.openRequests" to "Open access requests",
        "club.requestAccess" to "Request access",
        "club.select" to "Select Club",
        "club.selectPlaceholder" to "Choose club...",
        "club.title" to "Club",
        "club.trainingDiary" to "Training diary",
        "clubSettings.associationMemberNumber" to "Association membership number",
        "clubSettings.associationMemberNumberPlaceholder" to "e.g. SN-12-3456.",
        "clubSettings.autoFetchRankings" to "Automatically retrieve rankings",
        "clubSettings.greetingHint" to "This text appears in the \"Welcome\" tab of the game report sheet.",
        "clubSettings.greetingPlaceholder" to "Welcome text for home games...",
        "clubSettings.greetingText" to "Greeting text",
        "clubSettings.guestPlayers" to "Player and Doubles Guest Team",
        "clubSettings.guestTeam" to "Guest Team Name",
        "clubSettings.homePlayers" to "Players and home team doubles",
        "clubSettings.homeTeam" to "Home Team Name",
        "clubSettings.loadFailed" to "Settings could not be loaded",
        "clubSettings.memberDataQuality" to "Data quality members",
        "clubSettings.memberDataQualityHint" to "These fields count as necessary on the member page. All fields can still be entered.",
        "clubSettings.myTischtennisFedNickname" to "Association abbreviation",
        "clubSettings.myTischtennisFedNicknamePlaceholder" to "e.g. HeTTV",
        "clubSettings.myTischtennisRankings" to "myTischtennis TTR/QTTR rankings",
        "clubSettings.myTischtennisRankingsHint" to "Automatic retrieval of the club ranking for TTR and QTTR updates of the members.",
        "clubSettings.noClubSelected" to "Please select a doctor first.",
        "clubSettings.placeholders" to "Spacer",
        "clubSettings.rankingsUsesAssociationNumber" to "The club number for the ranking list retrieval corresponds to the association membership number above.",
        "clubSettings.requireCity" to "Location Required",
        "clubSettings.requireEmail" to "Email Required",
        "clubSettings.requirePhone" to "Phone Number Required",
        "clubSettings.requirePostalCode" to "Zip code required",
        "clubSettings.requireStreet" to "Road Required",
        "clubSettings.save" to "Save",
        "clubSettings.saved" to "Stored",
        "clubSettings.saveFailed" to "Cannot Save",
        "clubSettings.settings" to "Settings",
        "clubSettings.title" to "Club Settings",
        "clubSettings.trainingGroups" to "Training groups.",
        "clubSettings.trainingTimes" to "Practice schedule",
        "common.actions" to "Actions",
        "common.active" to "Active",
        "common.add" to "Add",
        "common.all" to "All",
        "common.apply" to "Apply",
        "common.back" to "Back",
        "common.cancel" to "Cancel",
        "common.choose" to "Choose",
        "common.clear" to "Clear",
        "common.close" to "Close",
        "common.confirm" to "Confirm",
        "common.create" to "Create",
        "common.date" to "Date",
        "common.days" to "days",
        "common.delete" to "Delete",
        "common.description" to "Description",
        "common.details" to "Details",
        "common.disabled" to "Disabled",
        "common.download" to "Download",
        "common.edit" to "Edit",
        "common.enabled" to "Enabled",
        "common.filter" to "filter",
        "common.hours" to "hours",
        "common.in" to "in",
        "common.inactive" to "Inactive",
        "common.loading" to "Loading...",
        "common.min" to "min",
        "common.minutes" to "minutes",
        "common.months" to "months",
        "common.move" to "Move",
        "common.name" to "name",
        "common.new" to "New",
        "common.next" to "Next",
        "common.no" to "No",
        "common.ok" to "OK",
        "common.optional" to "Optional",
        "common.period" to "Period",
        "common.previous" to "Previous",
        "common.refresh" to "Reload",
        "common.remove" to "Remove",
        "common.required" to "Required",
        "common.reset" to "Reset",
        "common.save" to "Save",
        "common.saved" to "Saved",
        "common.saving" to "Saving...",
        "common.search" to "Search",
        "common.select" to "Select",
        "common.status" to "status",
        "common.submit" to "Submit",
        "common.time" to "Time",
        "common.today" to "Today",
        "common.type" to "Type",
        "common.update" to "Update",
        "common.view" to "View",
        "common.weeks" to "weeks",
        "common.years" to "years",
        "common.yes" to "Yes",
        "courtDrawing.cancel" to "Cancel",
        "courtDrawing.durationMinutes" to "Duration (minutes)",
        "courtDrawing.durationText" to "Duration (text)",
        "courtDrawing.durationTextPlaceholder" to "e.g. 2x5",
        "courtDrawing.group" to "Group",
        "courtDrawing.ok" to "OK",
        "courtDrawing.selectGroup" to "Select group...",
        "courtDrawing.title" to "Configure table tennis exercise",
        "courtDrawingRender.animationRunning" to "Animation in progress...",
        "courtDrawingRender.startAnimation" to "Start animation",
        "courtDrawingTool.addStroke" to "Add stroke",
        "courtDrawingTool.backhand" to "Backhand",
        "courtDrawingTool.codeLabel" to "Code",
        "courtDrawingTool.completeFirstStroke" to "Complete the first stroke",
        "courtDrawingTool.completeFirstStrokeHint" to "Choose start position, stroke side, spin and target. The graphic will then appear.",
        "courtDrawingTool.configureExercise" to "Configure exercise",
        "courtDrawingTool.counterSpin" to "Counter-spin",
        "courtDrawingTool.forehand" to "Forehand",
        "courtDrawingTool.noAdditionalStrokes" to "No follow-up strokes added yet.",
        "courtDrawingTool.preview" to "Preview",
        "courtDrawingTool.previewHint" to "The graphic appears as soon as the first stroke is fully configured.",
        "courtDrawingTool.service" to "Serve:",
        "courtDrawingTool.serviceTitle" to "Serve",
        "courtDrawingTool.sidespin" to "Sidespin",
        "courtDrawingTool.sideUnderspin" to "Side-backspin",
        "courtDrawingTool.spin" to "Spin:",
        "courtDrawingTool.startLeft" to "left",
        "courtDrawingTool.startMiddle" to "centre",
        "courtDrawingTool.startRight" to "right",
        "courtDrawingTool.stepAdditionalStrokes" to "4. Follow-up strokes",
        "courtDrawingTool.stepAdditionalStrokesHint" to "Optionally build additional balls as a sequence.",
        "courtDrawingTool.stepFirstStroke" to "2. First stroke",
        "courtDrawingTool.stepFirstStrokeHint" to "Set stroke side and spin for the first ball.",
        "courtDrawingTool.stepStartPosition" to "1. Start position",
        "courtDrawingTool.stepStartPositionHint" to "Which service position does the exercise start from?",
        "courtDrawingTool.stepTarget" to "3. Target",
        "courtDrawingTool.stepTargetHint" to "Choose the target zone for the first stroke.",
        "courtDrawingTool.strokeSide" to "Side",
        "courtDrawingTool.strokeTypeBlock" to "Block",
        "courtDrawingTool.strokeTypeChopDefense" to "Chop defence",
        "courtDrawingTool.strokeTypeCounter" to "Counter",
        "courtDrawingTool.strokeTypeFlip" to "flip",
        "courtDrawingTool.strokeTypeLabel" to "Stroke type",
        "courtDrawingTool.strokeTypeLobDefense" to "Lob defence",
        "courtDrawingTool.strokeTypePush" to "Push",
        "courtDrawingTool.strokeTypeSmash" to "Smash",
        "courtDrawingTool.strokeTypeTopspin" to "Top spin",
        "courtDrawingTool.targetBackhandHalfLong" to "Backhand half-long",
        "courtDrawingTool.targetBackhandLong" to "Backhand deep",
        "courtDrawingTool.targetBackhandShort" to "Backhand short",
        "courtDrawingTool.targetForehandHalfLong" to "Forehand half-long",
        "courtDrawingTool.targetForehandLong" to "Forehand deep",
        "courtDrawingTool.targetForehandShort" to "Forehand short",
        "courtDrawingTool.targetMiddleHalfLong" to "Middle half-long",
        "courtDrawingTool.targetMiddleLong" to "Middle deep",
        "courtDrawingTool.targetMiddleShort" to "Middle short",
        "courtDrawingTool.targetPosition" to "Target position:",
        "courtDrawingTool.targetPositionLabel" to "Target position",
        "courtDrawingTool.title" to "Table tennis exercise drawing",
        "courtDrawingTool.titleLabel" to "Title",
        "courtDrawingTool.topspin" to "Topspin",
        "courtDrawingTool.toTarget" to "to",
        "courtDrawingTool.underspin" to "Backspin",
        "createClub.clubExists" to "The association already exists.",
        "createClub.clubName" to "name of club",
        "createClub.create" to "Create a club",
        "createClub.nameRequired" to "Please give the association a meaningful name.",
        "createClub.title" to "Create a club",
        "createClub.unknownError" to "Unknown error occurred, try again",
        "csvImport.cancel" to "Cancel",
        "csvImport.import" to "Importing",
        "csvImport.title" to "Import Schedule",
        "csvImport.uploadCsvFile" to "Upload CSV file",
        "dialogExamples.composableConfirmDetails" to "This is an example of the useConfirm Composable.",
        "dialogExamples.composableConfirmMessage" to "Do you wish to proceed?",
        "dialogExamples.composableConfirmTitle" to "useConfirm example",
        "dialogExamples.composableDialogText" to "This dialog uses the useDialog Composable.",
        "dialogExamples.composableDialogText2" to "This makes it easier to manage!",
        "dialogExamples.composableDialogTitle" to "Dialogue with useDialog Composable",
        "dialogExamples.composableUsage" to "Composable Usage",
        "dialogExamples.confirmDeleteMessage" to "Are you sure you wish to delete this gift card?",
        "dialogExamples.confirmDeleteTitle" to "Confirm Delete",
        "dialogExamples.confirmDialogs" to "Confirmation dialogs",
        "dialogExamples.confirmWarningDetails" to "This action cannot be undone.",
        "dialogExamples.confirmWarningMessage" to "Are you sure you want to continue?",
        "dialogExamples.error" to "Error",
        "dialogExamples.errorDetails" to "Please try again later.",
        "dialogExamples.errorMessage" to "An error has occurred.",
        "dialogExamples.fullscreenModal" to "Fullscreen Modal",
        "dialogExamples.fullscreenModalText" to "This is a fullscreen dialog.",
        "dialogExamples.fullscreenModalText2" to "It occupies almost the entire screen (90vw x 90vh).",
        "dialogExamples.fullscreenModalTitle" to "Fullscreen Modal Dialog",
        "dialogExamples.info" to "Information",
        "dialogExamples.infoDialogs" to "Information dialogues",
        "dialogExamples.infoMessage" to "This is an information message.",
        "dialogExamples.information" to "information",
        "dialogExamples.largeModal" to "Large Modal",
        "dialogExamples.largeModalText" to "This is a great modal dialogue.",
        "dialogExamples.largeModalText2" to "It offers more space for content.",
        "dialogExamples.largeModalTitle" to "Large Modal Dialogue",
        "dialogExamples.minimizedDialogs" to "Minimized dialogs:",
        "dialogExamples.modalDialogs" to "Modal Dialogues",
        "dialogExamples.multipleDialogs" to "Multiple Dialogs",
        "dialogExamples.nonModalDialog" to "Non-modal dialogue",
        "dialogExamples.nonModalDialogs" to "Non-modal dialogues",
        "dialogExamples.nonModalText" to "This is a non-modal dialogue.",
        "dialogExamples.nonModalText2" to "You can move it and open several at once!",
        "dialogExamples.nonModalTitle" to "Non-modal dialogue",
        "dialogExamples.scrollArea" to "Scroll area for lots of content...",
        "dialogExamples.secondNonModalText" to "Another non-modal dialogue!",
        "dialogExamples.secondNonModalTitle" to "Second non-modal dialogue",
        "dialogExamples.simpleModal" to "Simple Modal",
        "dialogExamples.simpleModalText" to "This is a simple modal dialog with medium size.",
        "dialogExamples.simpleModalText2" to "Click outside or on the X to close.",
        "dialogExamples.simpleModalTitle" to "Simple modal dialogue",
        "dialogExamples.success" to "Achievement",
        "dialogExamples.successDetails" to "All changes have been saved.",
        "dialogExamples.successMessage" to "The operation has been completed successfully!",
        "dialogExamples.title" to "Dialog examples",
        "dialogExamples.useConfirmExample" to "useConfirm example",
        "dialogExamples.useDialogExample" to "useDialog example",
        "dialogExamples.warning" to "Cautions",
        "dialogExamples.warningDetails" to "Some fields may not be filled in completely.",
        "dialogExamples.warningMessage" to "The following links may help you:",
        "dialogManager.close" to "Close",
        "dialogManager.minimize" to "minimize",
        "dialogManager.noMinimizedDialogs" to "No minimized dialogs",
        "dialogs.confirm.cancel" to "Cancel",
        "dialogs.confirm.ok" to "OK",
        "dialogs.confirm.title" to "Confirmation",
        "dialogs.info.ok" to "OK",
        "dialogs.info.title" to "information",
        "diary.activeTrainingDay" to "Active training day",
        "diary.activities" to "Activities",
        "diary.activity" to "Activity",
        "diary.activityDrawing" to "Activity drawing",
        "diary.activityImage" to "Activity image",
        "diary.activityNotFound" to "Activity not found. Please choose one from the list.",
        "diary.activityOrTimeblock" to "Activity / time block",
        "diary.activityPlaceholder" to "Activity",
        "diary.activityRequired" to "Please enter an activity.",
        "diary.addActivity" to "Add activity",
        "diary.addGroup" to "Add group",
        "diary.addGroupActivity" to "Add group activity",
        "diary.addGroupButton" to "+ Group",
        "diary.addTimeblock" to "Time block",
        "diary.all" to "All",
        "diary.applySuggestion" to "Apply suggestion",
        "diary.assignParticipants" to "Assign participants",
        "diary.assignParticipantsForGroupActivity" to "Assign participants for group activity",
        "diary.assignShort" to "Assign",
        "diary.bookAccident" to "Record accident",
        "diary.confirmDelete" to "Confirm deletion",
        "diary.confirmDeleteDate" to "Do you really want to delete this date?",
        "diary.confirmDeleteDateDetails" to "All associated data will also be deleted.",
        "diary.confirmDeleteGroup" to "Do you really want to delete the group \"{name}\"?",
        "diary.createDate" to "Create date",
        "diary.createDrawing" to "Create exercise drawing",
        "diary.createGroups" to "Create groups",
        "diary.createNew" to "Create new",
        "diary.createNewDate" to "Create new date",
        "diary.date" to "Date",
        "diary.dateCannotBeDeleted" to "Date cannot be deleted",
        "diary.dateCannotBeDeletedDetails" to "There is still content present (training plan, participants, activities, accidents or notes).",
        "diary.dateNoLongerCurrent" to "The selected date was no longer current. Please try again.",
        "diary.delete" to "Delete",
        "diary.deleteDate" to "Delete date",
        "diary.deleteGroup" to "Delete group",
        "diary.duration" to "Duration",
        "diary.durationExampleLong" to "e.g. 2x7 or 3*5",
        "diary.durationExampleShort" to "e.g. 2x7",
        "diary.durationMinutes" to "Duration (min)",
        "diary.editActivity" to "Edit activity",
        "diary.editGroupActivity" to "Edit group activity",
        "diary.editTrainingTimes" to "Edit training times",
        "diary.errorCreatingActivity" to "Error creating activity",
        "diary.errorCreatingGroups" to "Error creating groups",
        "diary.errorDeletingGroup" to "Error deleting group",
        "diary.errorLoadingPredefinedActivities" to "Failed to load predefined activities",
        "diary.errorMarkingForm" to "Error marking the membership form",
        "diary.errorOccurred" to "An error occurred. Please try again.",
        "diary.existingGroups" to "Existing groups",
        "diary.filterAbsent" to "Absent",
        "diary.filterAll" to "All",
        "diary.filterExcused" to "Excused",
        "diary.filterPresent" to "Present",
        "diary.filterTest" to "Trial",
        "diary.formHandedOver" to "Membership form handed over",
        "diary.formMarkedAsHandedOver" to "Membership form marked as handed over",
        "diary.freeActivities" to "Free activities",
        "diary.gallery" to "Member gallery",
        "diary.galleryCreating" to "Creating gallery…",
        "diary.group" to "Group...",
        "diary.groupDeletedSuccessfully" to "Group deleted successfully.",
        "diary.groupManagement" to "Group management",
        "diary.groupsCreated" to "{count} groups were created successfully.",
        "diary.groupsLabel" to "Groups",
        "diary.groupsSection" to "Groups",
        "diary.leader" to "Leader",
        "diary.min" to "Min",
        "diary.minutes" to "Minutes",
        "diary.mustCreateAtLeastTwoGroups" to "At least 2 groups must be created the first time.",
        "diary.nextAppointment" to "Next appointment",
        "diary.noActiveTrainingDay" to "No training day selected.",
        "diary.noEntries" to "No entries",
        "diary.noFreeActivitiesYet" to "No free activities have been recorded yet.",
        "diary.noParticipants" to "No participants available for this training day.",
        "diary.numberOfGroups" to "Number of groups",
        "diary.oneGroupAdded" to "1 group was added successfully.",
        "diary.openPlanItems" to "{count} open",
        "diary.openPlanItemsLabel" to "Plan status",
        "diary.overallActivity" to "Overall activity",
        "diary.participants" to "Participants",
        "diary.participantStatusCancelled" to "Cancelled",
        "diary.participantStatusExcused" to "Excused",
        "diary.participantStatusNone" to "No status",
        "diary.planActivitiesCount" to "Planned activities",
        "diary.planAddHint" to "Add new plan items using the actions above.",
        "diary.planEmptyState" to "Nothing has been entered in the training plan yet.",
        "diary.quickAdd" to "+ Quick add",
        "diary.quickCreate" to "Quick add",
        "diary.quickCreateFailed" to "Could not create the training day entry.",
        "diary.quickCreateNoSlot" to "No free training slot found (per group schedule, one year ahead).",
        "diary.searchParticipants" to "Search participants",
        "diary.selectGroup" to "Select group...",
        "diary.selectGroupAndActivity" to "Please select a group and enter an activity.",
        "diary.selectParticipantAndNote" to "Please select a participant and enter a note.",
        "diary.selectTags" to "Select tags",
        "diary.selectTrainingGroup" to "Select training group",
        "diary.selectTrainingGroupPlaceholder" to "Please choose...",
        "diary.showImage" to "Show image/drawing",
        "diary.skipSuggestion" to "Continue without suggestion",
        "diary.standardActivities" to "Standard activities",
        "diary.standardActivityAddError" to "Standard activity could not be added.",
        "diary.standardDurationShort" to "Min",
        "diary.startTime" to "Start time",
        "diary.statusEmpty" to "This training day is still empty.",
        "diary.statusInProgress" to "This training day is partially prepared.",
        "diary.statusOpenShort" to "Open",
        "diary.statusReady" to "Times and training plan are set.",
        "diary.statusReadyShort" to "Ready",
        "diary.suggestion" to "Suggestion",
        "diary.timeblock" to "Time block",
        "diary.timeblocksCount" to "Time blocks",
        "diary.title" to "Training diary",
        "diary.today" to "Today",
        "diary.trainingDayAsPDF" to "Download training day as PDF",
        "diary.trainingDayAsPDFShort" to "Training day as PDF",
        "diary.trainingDayChecklist" to "Completion checklist",
        "diary.trainingDaySection" to "Training day",
        "diary.trainingDaySummaryPdfShort" to "Participant summary as PDF",
        "diary.trainingEnd" to "Training end",
        "diary.trainingPlan" to "Training plan",
        "diary.trainingPlanAsPDF" to "Training plan as PDF",
        "diary.trainingPlanPdfShort" to "Schedule as PDF",
        "diary.trainingStart" to "Training start",
        "diary.trainingTimesUpdated" to "Training times updated successfully.",
        "diary.trainingWindow" to "Training window",
        "diary.trainingWindowUnset" to "Not set yet",
        "diary.unassignedPlanItems" to "{count} open",
        "diary.updateTimes" to "Update times",
        "errors.ERROR_ACTIVITY_IMAGE_DELETE_FAILED" to "Error in deleting the image.",
        "errors.ERROR_BAD_REQUEST" to "Invalid request.",
        "errors.ERROR_CLUB_ALREADY_EXISTS" to "The association already exists.",
        "errors.ERROR_CLUB_NAME_REQUIRED" to "Please give the association a meaningful name.",
        "errors.ERROR_CLUB_NAME_TOO_SHORT" to "Please give the association a meaningful name.",
        "errors.ERROR_CLUB_NOT_FOUND" to "Club not found.",
        "errors.ERROR_DIARY_ACTIVITY_PARTICIPANTS_UPDATE_FAILED" to "Error updating activity participants",
        "errors.ERROR_DIARY_ASSIGN_ALL_PARTICIPANTS_FAILED" to "Error assigning all participants",
        "errors.ERROR_DIARY_ASSIGN_GROUP_FAILED" to "Error mapping group",
        "errors.ERROR_DIARY_DATE_NOT_FOUND" to "Date not found",
        "errors.ERROR_DIARY_DATE_UPDATED" to "Date was not (no longer) available. The date picker has been updated. Please try again.",
        "errors.ERROR_DIARY_GROUP_ASSIGNMENT_UPDATE_FAILED" to "Error updating group assignment",
        "errors.ERROR_DIARY_IMAGE_LOAD_FAILED" to "FAILED TO LOAD IMAGE",
        "errors.ERROR_DIARY_MEMBER_CREATE_FAILED" to "Error creating member",
        "errors.ERROR_DIARY_NO_EXERCISE_DATA" to "No exercise data received",
        "errors.ERROR_DIARY_NO_PARTICIPANTS" to "No participants available for this training day.",
        "errors.ERROR_DIARY_PARTICIPANT_ASSIGN_FAILED" to "Participants could not be assigned.",
        "errors.ERROR_DIARY_PARTICIPANT_GROUP_ASSIGNMENT_UPDATE_FAILED" to "Error updating participant group assignment",
        "errors.ERROR_DIARY_PDF_GENERATION_FAILED" to "Error generating PDF.",
        "errors.ERROR_DIARY_STATS_LOAD_FAILED" to "Failed to load statistics.",
        "errors.ERROR_FORBIDDEN" to "Permission denied.",
        "errors.ERROR_GROUP_ALREADY_EXISTS" to "A group by this name already exists.",
        "errors.ERROR_GROUP_CANNOT_RENAME_PRESET" to "Default groups cannot be renamed.",
        "errors.ERROR_GROUP_INVALID_PRESET_TYPE" to "Invalid preset type.",
        "errors.ERROR_GROUP_NAME_REQUIRED" to "Please enter a group name.",
        "errors.ERROR_GROUP_NOT_FOUND" to "Group not found.",
        "errors.ERROR_INTERNAL_SERVER_ERROR" to "An internal server error has occurred.",
        "errors.ERROR_INVALID_PASSWORD" to "Incorrect password.",
        "errors.ERROR_LOG_NOT_FOUND" to "Log entry not found",
        "errors.ERROR_LOGIN_FAILED" to "Login failed.",
        "errors.ERROR_MEMBER_ALREADY_EXISTS" to "The member already exists",
        "errors.ERROR_MEMBER_FIRSTNAME_REQUIRED" to "First name is required.",
        "errors.ERROR_MEMBER_LASTNAME_REQUIRED" to "Last name is required.",
        "errors.ERROR_MEMBER_NOT_FOUND" to "Members not found",
        "errors.ERROR_MEMBER_TRANSFER_BULK_FAILED" to "Bulk transfer error: {message}",
        "errors.ERROR_MYTISCHTENNIS_ACCOUNT_NOT_LINKED" to "No myTischtennis account linked.",
        "errors.ERROR_MYTISCHTENNIS_CAPTCHA_REQUIRED" to "CAPTCHA required. MyTischtennis now uses a CAPTCHA when logging in. Please log in directly to mytischtennis.de to solve the CAPTCHA, or contact support.",
        "errors.ERROR_MYTISCHTENNIS_INVALID_PASSWORD" to "Invalid myTischtennis password.",
        "errors.ERROR_MYTISCHTENNIS_LOGIN_FAILED" to "Login failed. Please check your credentials.",
        "errors.ERROR_MYTISCHTENNIS_NO_PASSWORD_SAVED" to "No password saved and session expired. Please enter your password.",
        "errors.ERROR_MYTISCHTENNIS_PASSWORD_NOT_SAVED" to "No password saved. Please enter your password.",
        "errors.ERROR_MYTISCHTENNIS_SESSION_EXPIRED" to "Session expired. Please log in again.",
        "errors.ERROR_MYTISCHTENNIS_USER_NOT_FOUND" to "myTischtennis user not found.",
        "errors.ERROR_NOT_FOUND" to "Not found. ",
        "errors.ERROR_OFFICIAL_TOURNAMENT_PDF_UPLOAD" to "Error uploading PDF.",
        "errors.ERROR_SESSION_EXPIRED" to "Session expired.",
        "errors.ERROR_TEAM_LINK_TO_LEAGUE_REQUIRED" to "Please assign a league to the team first so that documents can be processed.",
        "errors.ERROR_TEAM_NOT_LINKED_TO_LEAGUE" to "This team is not assigned to any league.",
        "errors.ERROR_TEAM_PDF_LOAD_FAILED" to "Failed to load PDF",
        "errors.ERROR_TEAM_STATS_LOAD_FAILED" to "Statistics could not be loaded",
        "errors.ERROR_TOURNAMENT_CLASS_NAME_REQUIRED" to "Please enter a class name!",
        "errors.ERROR_TOURNAMENT_NO_DATE" to "No tournament date available!",
        "errors.ERROR_TOURNAMENT_NO_PARTICIPANTS" to "No participants found in training day for this date!",
        "errors.ERROR_TOURNAMENT_NO_TRAINING_DAY" to "No training day found for {date}!",
        "errors.ERROR_TOURNAMENT_NO_VALID_PARTICIPANTS" to "No valid participants found in training day for this date!",
        "errors.ERROR_TOURNAMENT_NOT_FOUND" to "Tournament not found",
        "errors.ERROR_TOURNAMENT_PDF_GENERATION_FAILED" to "Error Generating PDF",
        "errors.ERROR_TOURNAMENT_SELECT_FIRST" to "Please select a tournament first.",
        "errors.ERROR_TRAINING_STATS_LOAD_FAILED" to "Error loading training statistics",
        "errors.ERROR_UNAUTHORIZED" to "Not authorized.",
        "errors.ERROR_UNKNOWN_ERROR" to "An unknown error occurred.",
        "errors.ERROR_USER_NOT_FOUND" to "User Not Found.",
        "errors.ERROR_VALIDATION_FAILED" to "Failed validation",
        "errors.SUCCESS_DIARY_GROUP_ASSIGNMENT_UPDATED" to "Group Mapping Updated",
        "errors.SUCCESS_DIARY_MEMBER_CREATED" to "Member \"{name}\" was successfully created and added!",
        "errors.SUCCESS_OFFICIAL_TOURNAMENT_PDF_UPLOAD" to "Upload successful.",
        "home.authenticatedFeatures.keepDiary" to "Keep a training diary",
        "home.authenticatedFeatures.keepDiaryDesc" to "Document training activities, participants, activities and notes for each training day.",
        "home.authenticatedFeatures.manageMembers" to "Manage members",
        "home.authenticatedFeatures.manageMembersDesc" to "Manage your club members, create training groups and keep track of all participants.",
        "home.authenticatedFeatures.manageTournaments" to "Manage tournaments",
        "home.authenticatedFeatures.manageTournamentsDesc" to "Create internal and open tournaments, import official tournaments and manage entries.",
        "home.authenticatedFeatures.myTischtennisIntegration" to "MyTable Tennis integration",
        "home.authenticatedFeatures.myTischtennisIntegrationDesc" to "Automatically synchronize game results and statistics with MyTischtennis.de.",
        "home.authenticatedFeatures.pdfExport" to "PDF export",
        "home.authenticatedFeatures.pdfExportDesc" to "Export training days as PDF with participants, activities and statistics.",
        "home.authenticatedFeatures.statistics" to "Statistics & evaluations",
        "home.authenticatedFeatures.statisticsDesc" to "Get detailed training and participation overviews as well as activity statistics.",
        "home.authenticatedFeatures.teamManagement" to "Team management",
        "home.authenticatedFeatures.teamManagementDesc" to "Manage teams, leagues, fixtures and results for your club.",
        "home.authenticatedFeatures.trainingGroups" to "Training groups & times",
        "home.authenticatedFeatures.trainingGroupsDesc" to "Organise training groups, define training times and manage group assignments.",
        "home.faq" to "Frequently asked questions",
        "home.faqFree.answer" to "Yes, you can start for free. Extensions can follow later.",
        "home.faqFree.question" to "Is it free to use?",
        "home.faqInstallation.answer" to "No, it is a web application. You use it directly in the browser – on desktop, tablet and smartphone.",
        "home.faqInstallation.question" to "Do I need installation?",
        "home.faqMyTischtennis.answer" to "Yes, after setup, the application automatically synchronizes with MyTischtennis.de and imports game results and statistics.",
        "home.faqMyTischtennis.question" to "Does the MyTischtennis integration work automatically?",
        "home.faqPermissions.answer" to "There are four roles: Admin, Coach, Team Leader and Member. Each role has specific permissions that can be customized.",
        "home.faqPermissions.question" to "How does the authorization system work?",
        "home.faqPrivacy.answer" to "We rely on data economy, transparent approvals, role-based access and complete activity logs. The application is GDPR compliant.",
        "home.faqPrivacy.question" to "What about data protection?",
        "home.faqTournaments.answer" to "You can manage internal tournaments, open tournaments and official tournaments (e.g. from associations). Official tournaments can be imported.",
        "home.faqTournaments.question" to "Which tournament types are supported?",
        "home.faqTrainingGroups.answer" to "Yes, you can create training groups, define training times and assign members to the groups. The training diary automatically suggests suitable groups and times.",
        "home.faqTrainingGroups.question" to "Can I manage training groups and times?",
        "home.features.activityLog" to "Activity log",
        "home.features.activityLogDesc" to "Complete logging of all actions for transparency and traceability.",
        "home.features.keepDiary" to "Keep a training diary",
        "home.features.keepDiaryDesc" to "Document the content, scope and attendance of each unit – comprehensibly and structured.",
        "home.features.manageMembers" to "Manage members",
        "home.features.manageMembersDesc" to "Create member profiles, form groups and keep contact and approval statuses up to date.",
        "home.features.myTischtennisIntegration" to "MyTable Tennis integration",
        "home.features.myTischtennisIntegrationDesc" to "Automatic synchronization with MyTischtennis.de for game results and statistics.",
        "home.features.officialTournaments" to "Official tournaments",
        "home.features.officialTournamentsDesc" to "Import and manage official tournaments, manage entries and results.",
        "home.features.organizeSchedules" to "Organise game plans",
        "home.features.organizeSchedulesDesc" to "Plan games, tournaments and events including groups, rounds and results.",
        "home.features.pdfExport" to "PDF export",
        "home.features.pdfExportDesc" to "Export training days as PDF with participants, activities and statistics.",
        "home.features.permissionSystem" to "Authorization system",
        "home.features.permissionSystemDesc" to "Role-based access (admin, coach, team captain, member) with individual permissions.",
        "home.features.predefinedActivities" to "Predefined activities",
        "home.features.predefinedActivitiesDesc" to "Use templates for recurring exercises and speed up your documentation.",
        "home.features.security" to "Security & GDPR",
        "home.features.securityDesc" to "Data protection-friendly architecture, member approvals and transparent access.",
        "home.features.statistics" to "Statistics & evaluation",
        "home.features.statisticsDesc" to "Receive training and participation overviews, recognize development and plan specifically.",
        "home.features.teamManagement" to "Team management",
        "home.features.teamManagementDesc" to "Manage teams, leagues, fixtures and results for your club.",
        "home.features.trainingGroups" to "Training groups & times",
        "home.features.trainingGroupsDesc" to "Organise training groups, define training times and manage group assignments.",
        "home.forWhom" to "Who is the training diary for?",
        "home.forWhomText" to "The TrainingDiary is the comprehensive platform for clubs, departments and coaching teams. It combines member management with training groups and times, detailed training diary, comprehensive tournament organization (internal, open and official tournaments), team management with league integration, MyTischtennis synchronization, meaningful statistics and evaluations as well as a flexible authorization system in a modern web application. Through clear roles (admin, trainer, team leader, member) and individual authorizations, those responsible retain control, while members can participate in a self-determined manner. Ideal for team, racquet and individual sports – from junior to advanced level. GDPR compliant with transparent approvals and full activity log.",
        "home.haveAccount" to "I already have an account",
        "home.heroFeatures.memberManagement" to "Member and group management",
        "home.heroFeatures.myTischtennis" to "MyTable Tennis integration",
        "home.heroFeatures.statistics" to "Statistics & evaluations",
        "home.heroFeatures.teamManagement" to "Team Management & Leagues",
        "home.heroFeatures.tournaments" to "Tournaments (internal, open, official)",
        "home.heroFeatures.trainingDiary" to "Training diary & documentation",
        "home.heroFeatures.trainingGroups" to "Training groups & training times",
        "home.heroSubtitle" to "The TrainingDiary is the comprehensive solution for clubs: member management, training groups, training times, training diary, tournament organization, team management, MyTable Tennis integration, statistics and more - GDPR compliant and easy to use.",
        "home.heroTitle" to "Club management, training planning and tournaments – all in one place",
        "home.howItWorks" to "This is how it works",
        "home.registerNow" to "Register now for free",
        "home.rolesAndPrivacy" to "Roles, permissions & GDPR",
        "home.startFree" to "Start for free",
        "home.step1.description" to "Create an account for free and activate it via email.",
        "home.step1.title" to "Register",
        "home.step2.description" to "Create your club, invite members and set up groups.",
        "home.step2.title" to "Create a club",
        "home.step3.description" to "Plan appointments, document training and track progress.",
        "home.step3.title" to "Plan & document",
        "home.welcome" to "Welcome to the training diary",
        "home.welcomeBack" to "Welcome back! You are logged in successfully.",
        "home.whatCanYouDo" to "What can you do with the training diary?",
        "imageDialog.close" to "Close",
        "imageDialog.noImageAvailable" to "No picture available",
        "imageDialog.title" to "Screen",
        "imageViewer.camera" to "Camera",
        "imageViewer.delete" to "Delete",
        "imageViewer.deleteImage" to "Delete image",
        "imageViewer.nextImage" to "Next image",
        "imageViewer.noImageAvailable" to "No picture available",
        "imageViewer.previousImage" to "previous image",
        "imageViewer.rotateLeft" to "Rotate 90° Left",
        "imageViewer.rotateRight" to "Rotate 90° Right",
        "imageViewer.selectFiles" to "Select Files",
        "imageViewer.setAsPrimary" to "set as main image",
        "imageViewer.setAsPrimaryButton" to "Set featured image",
        "imprint.contact" to "Contact",
        "imprint.serviceProvider" to "Name of the service provider",
        "imprint.title" to "Legal notice",
        "languages.de" to "Deutsch (German)",
        "languages.de-CH" to "Schwiizerdütsch (Swiss German)",
        "languages.en-AU" to "English",
        "languages.en-GB" to "English (British English)",
        "languages.en-US" to "English (US English)",
        "languages.es" to "Español (Spanish)",
        "languages.fil" to "Filipino",
        "languages.fr" to "Français (French)",
        "languages.it" to "Italiano (Italian)",
        "languages.ja" to "日本語 (Japanese)",
        "languages.pl" to "Polski (Polish)",
        "languages.th" to "ไทย (Thai)",
        "languages.tl" to "Tagalog",
        "languages.zh" to "中文 (Chinese)",
        "legal.backToHome" to "Back to homepage",
        "legal.imprint" to "Legal notice",
        "legal.privacyPolicy" to "Privacy policy",
        "logs.actions" to "Actions",
        "logs.all" to "All",
        "logs.apiRequests" to "API Requests",
        "logs.applyFilters" to "Apply filter",
        "logs.backend" to "Backend Settings",
        "logs.clearFilters" to "Revert",
        "logs.cronJobs" to "Cron Jobs",
        "logs.details" to "Details",
        "logs.displayed" to "displayed",
        "logs.displayedLabel" to "Viewed",
        "logs.error" to "Error",
        "logs.errorLabel" to "Error",
        "logs.errorLoading" to "Error loading logs",
        "logs.executionTime" to "Execution time",
        "logs.from" to "From",
        "logs.httpMethod" to "HTTP Method",
        "logs.justNow" to "just now",
        "logs.loadingLogs" to "Loading logs...",
        "logs.logDetails" to "Log Detail",
        "logs.logDetailsLabels.error" to "Error",
        "logs.logDetailsLabels.executionTime" to "Execution time",
        "logs.logDetailsLabels.ip" to "IP",
        "logs.logDetailsLabels.method" to "Method",
        "logs.logDetailsLabels.path" to "path",
        "logs.logDetailsLabels.requestBody" to "Request Body",
        "logs.logDetailsLabels.responseBody" to "Response Body",
        "logs.logDetailsLabels.schedulerJob" to "Scheduler Job",
        "logs.logDetailsLabels.status" to "status",
        "logs.logDetailsLabels.time" to "Time",
        "logs.logDetailsLabels.type" to "Type",
        "logs.logType" to "Log Type",
        "logs.logTypeLabels.api_request" to "API Request",
        "logs.logTypeLabels.cron_job" to "Cron Job",
        "logs.logTypeLabels.manual" to "Manual",
        "logs.logTypeLabels.scheduler" to "scheduler",
        "logs.manual" to "Manual Executions",
        "logs.method" to "Method",
        "logs.minutesAgo" to "{n} minutes ago",
        "logs.mytischtennis" to "myTischtennis",
        "logs.next" to "Next ",
        "logs.of" to "by",
        "logs.ownBackend" to "Own backend",
        "logs.page" to "Page",
        "logs.path" to "path",
        "logs.pathPlaceholder" to "e.g. /api/diary",
        "logs.previous" to "Previous",
        "logs.recordsFound" to "Records found",
        "logs.scheduler" to "scheduler",
        "logs.secondsAgo" to "{n} seconds ago",
        "logs.status" to "status",
        "logs.subtitle" to "Overview of all API requests, responses and executions",
        "logs.successfullyLoaded" to "Loaded successfully",
        "logs.time" to "Time",
        "logs.title" to "System Logs",
        "logs.to" to "To",
        "logs.total" to "Total",
        "logs.type" to "Type",
        "matchReport.analyzeNuscore" to "nuscore analysis",
        "matchReport.createLocalCopy" to "Create local copy",
        "matchReport.hideAnalyzer" to "Hide Analyzer",
        "matchReportApi.availablePlayers" to "Available Players",
        "matchReportApi.bothTeamsAppeared" to "Both teams competed",
        "matchReportApi.clickToRemove" to "Click to remove",
        "matchReportApi.completed" to "Closed",
        "matchReportApi.completion" to "Completion",
        "matchReportApi.endTime" to "end time",
        "matchReportApi.errorLoading" to "Error loading data",
        "matchReportApi.general" to "General",
        "matchReportApi.greeting" to "Welcoming",
        "matchReportApi.guestLineup" to "Guest setup",
        "matchReportApi.guestPin" to "PIN Guest Club",
        "matchReportApi.guestTeamNotAppeared" to "Guest team {team} not competed",
        "matchReportApi.homeLineup" to "Installation at home",
        "matchReportApi.homePin" to "PIN Home Club",
        "matchReportApi.homeTeamNotAppeared" to "Home team {team} not competed",
        "matchReportApi.loading" to "Loading match report data...",
        "matchReportApi.noLineupData" to "No installation data available",
        "matchReportApi.notAppeared" to "Not participated for all",
        "matchReportApi.pending" to "Pending",
        "matchReportApi.pinInput" to "PIN input",
        "matchReportApi.playSystem" to "Gaming system",
        "matchReportApi.rank" to "Circle",
        "matchReportApi.result" to "Entering results",
        "matchReportApi.retry" to "Try again",
        "matchReportApi.selectedPlayers" to "Selected Player",
        "matchReportApi.setCurrentTime" to "Set current time",
        "matchReportApi.signLineup" to "Sign installation",
        "matchReportApi.startTime" to "start time",
        "matchReportApi.status" to "status",
        "matchReportApi.vs" to "vs",
        "matchReportHeaderActions.copied" to "Copied!",
        "matchReportHeaderActions.copyError" to "Error copying pin",
        "matchReportHeaderActions.copyPin" to "Copy PIN",
        "matchReportHeaderActions.copyPinTitle" to "Copy to clipboard",
        "matchReportHeaderActions.insertPin" to "INSERT YOUR PIN",
        "matchReportHeaderActions.insertPinTitle" to "Auto insert",
        "matchReportHeaderActions.noPinAvailable" to "No PIN AVAILABLE",
        "memberActivities.activity" to "Exercise",
        "memberActivities.all" to "All",
        "memberActivities.close" to "Close",
        "memberActivities.dates" to "Data",
        "memberActivities.frequency" to "Frequency",
        "memberActivities.last3Months" to "Last 3 months",
        "memberActivities.last4Weeks" to "last 2 months",
        "memberActivities.last6Months" to "last half year",
        "memberActivities.lastYear" to "Last year",
        "memberActivities.loading" to "Loading exercises...",
        "memberActivities.more" to "other",
        "memberActivities.noActivities" to "No exercises found in the selected period.",
        "memberActivities.period" to "Time period",
        "memberActivities.showLess" to "show less",
        "memberActivities.title" to "Exercises by",
        "memberGallery.imageSize" to "Image Size",
        "memberGallery.loading" to "Loading gallery...",
        "memberGallery.noImage" to "No Image",
        "memberGallery.noMembersWithImages" to "No members found with images.",
        "memberGallery.title" to "Members Gallery",
        "memberGallery.titleWithDate" to "Member Gallery - Click on an image to add as a participant",
        "memberNotes.add" to "Add",
        "memberNotes.memberImage" to "Image Member",
        "memberNotes.newNote" to "New note",
        "memberNotes.notes" to "Notes",
        "memberNotes.phone" to "Telephone no. ",
        "memberNotes.selectTags" to "Select Tags",
        "memberNotes.tags" to "Tags",
        "memberNotes.title" to "Notes for",
        "members.actions" to "Actions",
        "members.active" to "Active",
        "members.activeMembers" to "Active members",
        "members.addEmail" to "Add email address",
        "members.addGroup" to "Add group...",
        "members.addPhone" to "Add phone number",
        "members.address" to "Address",
        "members.adultReleaseApproved" to "Approved for adults",
        "members.adultReserveApproved" to "Adult reserve",
        "members.adults" to "Adults (18+)",
        "members.age" to "Age",
        "members.ageFromPlaceholder" to "from",
        "members.ageGroup" to "Age group",
        "members.ageRange" to "Age from - to",
        "members.ageToPlaceholder" to "to",
        "members.batchFormsMarkedEmpty" to "There are no unverified forms in the current selection.",
        "members.batchFormsMarkedSuccess" to "Marked {count} form(s) as verified.",
        "members.batchMarkedRegularEmpty" to "There are no trial members in the current selection.",
        "members.batchMarkedRegularSuccess" to "Marked {count} trial member(s) as regular.",
        "members.batchPartialFailure" to "{success} succeeded, {failed} failed.",
        "members.birthdate" to "Birthdate",
        "members.bulkActions" to "Bulk actions",
        "members.camera" to "Camera",
        "members.change" to "Change",
        "members.city" to "City",
        "members.clearFields" to "Clear fields",
        "members.clearFilters" to "Reset filters",
        "members.clickTtRequestAction" to "Request click-TT eligibility",
        "members.clickTtRequestConfirm" to "Start the automated Click-TT request for {name}?",
        "members.clickTtRequestError" to "The Click-TT request could not be submitted.",
        "members.clickTtRequestFailedLog" to "Click-TT request failed",
        "members.clickTtRequestHint" to "The request is processed automatically by the backend Click-TT workflow.",
        "members.clickTtRequestPending" to "Click-TT request in progress",
        "members.clickTtRequestPendingShort" to "Pending ...",
        "members.clickTtRequestShort" to "Click TT",
        "members.clickTtRequestSuccess" to "Please sign in to click-tt and submit the request there.",
        "members.clickTtRequestTitle" to "Start Click-TT request",
        "members.clickTtSubmitted" to "Click-TT submitted",
        "members.closeEditor" to "Close editor",
        "members.composeEmail" to "Compose email",
        "members.contact" to "Contact",
        "members.copyContactSummary" to "Copy contact summary",
        "members.copyContactSummarySuccess" to "Contact summary copied to clipboard.",
        "members.copyEmails" to "Copy emails",
        "members.copyEmailsEmpty" to "There are no email addresses in the current selection.",
        "members.copyEmailsSuccess" to "Email list copied to clipboard.",
        "members.copyPhones" to "Copy phones",
        "members.copyPhonesEmpty" to "There are no phone numbers in the current selection.",
        "members.copyPhonesSuccess" to "Phone list copied to clipboard.",
        "members.create" to "Create",
        "members.createNewMember" to "Create new member",
        "members.dataIssueAddress" to "Address missing",
        "members.dataIssueBirthdate" to "Birthdate missing",
        "members.dataIssueCity" to "Suburb/city missing",
        "members.dataIssueEmail" to "Email missing",
        "members.dataIssueGender" to "Gender unclear",
        "members.dataIssuePhone" to "Phone missing",
        "members.dataIssuePostalCode" to "Postcode missing",
        "members.dataIssueStreet" to "Street missing",
        "members.dataIssueTrainingGroup" to "Training group missing",
        "members.dataQuality" to "Data quality",
        "members.dataQualityComplete" to "Data complete",
        "members.deactivateMember" to "Deactivate member",
        "members.deactivateMemberConfirm" to "Do you really want to deactivate \"{name}\"?",
        "members.deactivateMemberTitle" to "Deactivate member",
        "members.deleteImageConfirm" to "Do you really want to delete this image?",
        "members.deleteImageTitle" to "Delete image",
        "members.editHint" to "Click a row to open the editor.",
        "members.editMember" to "Edit member",
        "members.editorAssignTrainingGroupHint" to "Please assign at least one training group.",
        "members.editorCreateHint" to "Create a new member and capture contact details directly.",
        "members.editorEditHint" to "Edit the details for {name}.",
        "members.editorRecommendedEntry" to "Recommended entry",
        "members.emailAddress" to "Email address",
        "members.emailAddressShort" to "Email address",
        "members.emails" to "Email addresses",
        "members.errorAddingToGroup" to "Error adding to group",
        "members.errorDeactivatingMember" to "Error deactivating member",
        "members.errorDeletingImage" to "Image could not be deleted",
        "members.errorLoadingImage" to "Error loading image",
        "members.errorLoadingMembers" to "Failed to load the member list.",
        "members.errorLoadingTrainingParticipations" to "Error loading training participations",
        "members.errorMarkingForm" to "Error marking the form.",
        "members.errorRemovingFromGroup" to "Error removing from group",
        "members.errorRemovingTestMembership" to "Error removing the trial membership.",
        "members.errorRotatingImage" to "Error rotating image",
        "members.errorSavingMember" to "Error saving member",
        "members.errorSettingPrimaryImage" to "Primary image could not be set",
        "members.errorTransfer" to "Transfer error",
        "members.errorUpdatingRatings" to "Error updating TTR/QTTR values",
        "members.errorUploadingImage" to "Image could not be uploaded",
        "members.exercises" to "Exercises",
        "members.exportCsv" to "Export CSV",
        "members.exportCsvFile" to "member-selection.csv",
        "members.exportEmails" to "Email",
        "members.exportMembersSelected" to "members currently selected",
        "members.exportPhones" to "Phone",
        "members.exportPreview" to "Export preview",
        "members.exportPreviewEmpty" to "No members in the current selection",
        "members.exportPreviewNames" to "Preview",
        "members.exportReachableByEmail" to "with email address",
        "members.exportReachableByPhone" to "with phone number",
        "members.firstName" to "First name",
        "members.formHandedOver" to "Membership form handed over",
        "members.formMarkedAsHandedOver" to "Membership form marked as handed over.",
        "members.gender" to "Gender",
        "members.genderDiverse" to "Diverse",
        "members.genderFemale" to "Female",
        "members.genderMale" to "Male",
        "members.genderUnknown" to "Unknown",
        "members.generatePhoneList" to "Generate phone list",
        "members.groupPhotoCrop" to "Process group photo",
        "members.groupPhotoCropSaved" to "Member photo saved from group photo.",
        "members.image" to "Image",
        "members.imageDeleted" to "Image deleted.",
        "members.imageInternet" to "Image (web?)",
        "members.imagePreview" to "Member image preview",
        "members.imageUpdated" to "Image updated",
        "members.inactive" to "inactive",
        "members.inactiveMembers" to "Inactive members",
        "members.j11" to "U11",
        "members.j13" to "U13",
        "members.j15" to "U15",
        "members.j17" to "U17 (17 and younger)",
        "members.j19" to "U19",
        "members.j9" to "U9",
        "members.lastName" to "Last name",
        "members.lastTrainingFilter" to "Last training",
        "members.lastTrainingFilterHasDate" to "With a recorded date",
        "members.lastTrainingFilterHint" to "Age-class column: current and next season. Extra detail (last training, participations) on row hover.",
        "members.lastTrainingFilterNoDate" to "No last training",
        "members.lastTrainingFilterNotInTraining" to "Flagged “no longer training”",
        "members.loadingMembers" to "Loading members...",
        "members.m11" to "G11",
        "members.m13" to "G13",
        "members.m15" to "G15",
        "members.m19" to "G19",
        "members.m9" to "G9",
        "members.markFormReceived" to "Mark form verified",
        "members.markFormsForSelection" to "Verify forms for selection",
        "members.markRegular" to "Mark regular",
        "members.markRegularForSelection" to "Mark selection regular",
        "members.memberDeactivated" to "Member deactivated",
        "members.memberDetails" to "Member details",
        "members.memberFormHandedOver" to "Membership form handed over",
        "members.memberImage" to "Member image",
        "members.memberImages" to "Member images",
        "members.memberInfo" to "Member info",
        "members.memberScope" to "Member scope",
        "members.missingTtrHistoryId" to "No myTischtennis ID stored",
        "members.name" to "Surname, first name",
        "members.newMember" to "New member",
        "members.noAddressShort" to "No address",
        "members.noEmailShort" to "No email",
        "members.noGroupsAssigned" to "No groups assigned",
        "members.noGroupsAvailable" to "No groups available",
        "members.noOpenTasks" to "No open tasks",
        "members.noPhoneShort" to "No phone",
        "members.notes" to "Notes",
        "members.noTestMembership" to "No longer a trial member",
        "members.notInTrainingTooltip" to "No participation for {weeks} training weeks",
        "members.onlyActiveMembers" to "Only active members are included",
        "members.openTasks" to "Open tasks",
        "members.parent" to "Parent",
        "members.parentFallback" to "Parent",
        "members.parentName" to "Name (e.g. mother, father)",
        "members.phoneList" to "phone-list.pdf",
        "members.phoneListForSelection" to "Phone list for selection",
        "members.phoneListSelectionFile" to "phone-list-selection.pdf",
        "members.phoneNumber" to "Phone number",
        "members.phoneNumberShort" to "Phone no.",
        "members.phones" to "Phone numbers",
        "members.picsInInternetAllowed" to "Pictures allowed online",
        "members.postalCode" to "Postcode",
        "members.previewLastTraining" to "Last training",
        "members.previewNoLastTraining" to "No participation yet",
        "members.primary" to "Primary",
        "members.primaryImageUpdated" to "Primary image updated.",
        "members.remove" to "Remove",
        "members.resultsVisible" to "members visible",
        "members.rowTooltipSeparator" to "·",
        "members.scopeActive" to "Active",
        "members.scopeActiveDataIncomplete" to "Active + data incomplete",
        "members.scopeActiveTest" to "Active + trial",
        "members.scopeAll" to "All",
        "members.scopeDataIncomplete" to "Data incomplete",
        "members.scopeInactive" to "Inactive",
        "members.scopeNeedsForm" to "Form unverified",
        "members.scopeNotTraining" to "No longer training",
        "members.scopeTest" to "Trial",
        "members.search" to "Search",
        "members.searchAndFilter" to "Search and filter",
        "members.searchPlaceholder" to "Search by name, city, phone or email",
        "members.selectFile" to "Select file",
        "members.showInactiveMembers" to "Show inactive members",
        "members.showTrainingParticipationsColumn" to "Show “Training participations” column",
        "members.showTtrHistory" to "Show TTR history",
        "members.sixOrMoreParticipations" to "6 or more training participations",
        "members.sortAge" to "Age",
        "members.sortBirthday" to "Birthday",
        "members.sortBy" to "Sort by",
        "members.sortFirstName" to "First name",
        "members.sortLastName" to "Last name",
        "members.sortLastTraining" to "Last training",
        "members.sortOpenTasks" to "Open tasks",
        "members.sortQttr" to "QTTR value",
        "members.status" to "status",
        "members.street" to "Street",
        "members.subtitle" to "Search, filter and edit members directly.",
        "members.taskActionMarkRegular" to "Mark regular",
        "members.taskActionRequest" to "Request",
        "members.taskActionReview" to "Open",
        "members.taskActionVerify" to "Verify",
        "members.taskAssignTrainingGroup" to "Assign training group",
        "members.taskCheckClickTt" to "Review Click-TT eligibility",
        "members.taskCheckDataQuality" to "Review data quality",
        "members.taskCheckTrainingStatus" to "Review training status",
        "members.taskReviewTrialStatus" to "Review trial status",
        "members.taskVerifyForm" to "Verify form",
        "members.testMember" to "Trial",
        "members.testMembers" to "Trial members",
        "members.testMembership" to "Trial membership",
        "members.testMembershipRemoved" to "Trial membership removed.",
        "members.threeOrMoreParticipations" to "3 or more training participations",
        "members.title" to "Members",
        "members.toggleSortDirection" to "Toggle sort direction",
        "members.trainingGroups" to "Training groups",
        "members.trainingParticipations" to "Training participations",
        "members.transferErrorTitle" to "Transfer error",
        "members.transferMembers" to "Transfer members",
        "members.transferSuccessTitle" to "Transfer successful",
        "members.ttAdult" to "Adults (not youth by cutoff)",
        "members.ttAgeClassCol" to "Age class (TT)",
        "members.ttFilterGroupJ" to "Boys & girls (mixed)",
        "members.ttFilterGroupM" to "Girls only",
        "members.ttrQttr" to "TTR/QTTR",
        "members.ttSeasonCurrentTag" to "current",
        "members.ttSeasonFilter" to "Season (cutoff)",
        "members.ttSeasonNextTag" to "upcoming",
        "members.ttStichtagHint" to "Cutoff 1 Jan (DTTB). Boys: J classes only. Girls: J and M.",
        "members.updateRatings" to "Update TTR/QTTR from myTischtennis",
        "members.updating" to "Updating...",
        "members.visibleMembers" to "Visible members",
        "members.wantsToPlay" to "Wants to play",
        "memberSelection.close" to "Close",
        "memberSelection.deselectAll" to "Deselect all",
        "memberSelection.generatePdf" to "Generate PDF",
        "memberSelection.members" to "Members",
        "memberSelection.noRecommendations" to "No matching recommendations found.",
        "memberSelection.recommendations" to "Recommendations",
        "memberSelection.selectAll" to "Select All",
        "memberSelection.title" to "Select Members",
        "memberTransfer.additionalField" to "Extra field",
        "memberTransfer.additionalFieldExample1" to "Additional field (e.g. client_id)",
        "memberTransfer.additionalFieldExample2" to "Additional field (e.g. client_secret)",
        "memberTransfer.analyzeAndImport" to "Analyze and Import Template",
        "memberTransfer.availablePlaceholders" to "Available placeholders",
        "memberTransfer.bulkMode" to "Bulk import mode (transfer all members at once)",
        "memberTransfer.bulkModeActive" to "Mode active",
        "memberTransfer.bulkModeActiveDescription" to "The template defines the format for a single member. The members are automatically wrapped in an array. You can optionally define the external structure in the \"bulk wrapper template\" (see below).",
        "memberTransfer.bulkModeHint" to "If enabled, all members in a request are transferred as an array.",
        "memberTransfer.bulkWrapperDescription" to "Optionally, you can define the outer structure into which the member array will be inserted. Use PLACEHOLDER_MEMBERS as placeholders for the array of members.",
        "memberTransfer.bulkWrapperNote" to "Note: If no wrapper template is specified, a members array is automatically used.",
        "memberTransfer.bulkWrapperTemplate" to "Bulk wrapper template (optional)",
        "memberTransfer.bulkWrapperWhat" to "What is a bulk wrapper template?",
        "memberTransfer.configDeleted" to "Configuration deleted successfully!",
        "memberTransfer.configInfo" to "Configure the settings for transferring members to external systems here. These settings are saved on a club-specific basis.",
        "memberTransfer.configSaved" to "Configuration saved successfully",
        "memberTransfer.confirmDelete" to "Delete configuration",
        "memberTransfer.confirmDeleteMessage" to "Are you sure you want to refund this transaction?",
        "memberTransfer.deleteConfig" to "Delete configuration",
        "memberTransfer.deleting" to "clearing...",
        "memberTransfer.errorDeleting" to "Error clearing",
        "memberTransfer.errorLoading" to "Error Loading Config",
        "memberTransfer.errorParsingTemplate" to "Error parsing template",
        "memberTransfer.errorSaving" to "Error while saving",
        "memberTransfer.example" to "Example",
        "memberTransfer.exampleFormData" to "Example of form data format",
        "memberTransfer.exampleJson" to "Example of JSON format (recommended)",
        "memberTransfer.exampleXml" to "Example of XML format",
        "memberTransfer.formDataHint" to "For form data, use a simple text template with lines in the format feldname=placeholder:",
        "memberTransfer.httpMethod" to "HTTP Method",
        "memberTransfer.importTemplate" to "Import template from full example",
        "memberTransfer.importTemplateHint" to "Include a full sample template (with sample members). The system will automatically detect the member template and bulk wrapper template.",
        "memberTransfer.importTemplatePlaceholder" to "Insert a full example template here, e.g.:\nLBRACE\n  December: [\n    LBRACE\n      D .firstNameD.: D .MaxD.,\n      D. LastNameD.: D. MustermannD.,\n      DMail: DMaxATexample.comMail: DMaxATexample.com\n    RBRACE\n  ]\nRBRACE",
        "memberTransfer.invalidJson" to "Please ensure valid JSON is used.",
        "memberTransfer.invalidTemplateFormat" to "Invalid template format",
        "memberTransfer.loadingConfig" to "Loading configuration...",
        "memberTransfer.loginConfiguration" to "Login Configuration",
        "memberTransfer.loginData" to "Login data",
        "memberTransfer.loginEndpointHint" to "Optional: Relative path to login endpoint (e.g. /api/auth/login)",
        "memberTransfer.loginEndpointPath" to "Login Endpoint Path",
        "memberTransfer.loginEndpointPlaceholder" to "/api/auth/login",
        "memberTransfer.loginFormat" to "Login Format",
        "memberTransfer.membersArray" to "Member Array",
        "memberTransfer.password" to "Password",
        "memberTransfer.passwordEncrypted" to "Passwords are stored encrypted.",
        "memberTransfer.placeholderHint" to "Click on a placeholder to insert it at the current cursor position:",
        "memberTransfer.placeholders.address" to "Combined Address",
        "memberTransfer.placeholders.addressDesc" to "Street and town combined",
        "memberTransfer.placeholders.birthDate" to "Date of birth",
        "memberTransfer.placeholders.birthDateAlt" to "Date of birth (old)",
        "memberTransfer.placeholders.birthDateAltDesc" to "Date of birth in the format YYYY-MM-DD (alternative name)",
        "memberTransfer.placeholders.birthDateDesc" to "in the format YYYY-MM-DD",
        "memberTransfer.placeholders.city" to "Location",
        "memberTransfer.placeholders.cityDesc" to "Place of Residence",
        "memberTransfer.placeholders.email" to "Email Address",
        "memberTransfer.placeholders.emailDesc" to "Member's email address",
        "memberTransfer.placeholders.firstName" to "First name",
        "memberTransfer.placeholders.firstNameDesc" to "Member First Name",
        "memberTransfer.placeholders.fullName" to "Full name ",
        "memberTransfer.placeholders.fullNameDesc" to "First name and last name combined",
        "memberTransfer.placeholders.gender" to "Sex",
        "memberTransfer.placeholders.genderDesc" to "Gender of the member",
        "memberTransfer.placeholders.lastName" to "Surname",
        "memberTransfer.placeholders.lastNameDesc" to "Member Last Name",
        "memberTransfer.placeholders.phone" to "Phone Number",
        "memberTransfer.placeholders.phoneDesc" to "Staff Member's Phone",
        "memberTransfer.placeholders.qttr" to "QTTR value",
        "memberTransfer.placeholders.qttrDesc" to "Member QTTR Value",
        "memberTransfer.placeholders.street" to "Street",
        "memberTransfer.placeholders.streetDesc" to "Street and house number",
        "memberTransfer.placeholders.ttr" to "TTR value",
        "memberTransfer.placeholders.ttrDesc" to "Member TTR Value",
        "memberTransfer.save" to "Save",
        "memberTransfer.saving" to "Saving...",
        "memberTransfer.serverBaseUrl" to "Server Base URL",
        "memberTransfer.serverBaseUrlHint" to "Base URL of the server (e.g. https://example.com)",
        "memberTransfer.serverBaseUrlPlaceholder" to "https://example.com",
        "memberTransfer.serverConfiguration" to "Server -configuration",
        "memberTransfer.templateDescription" to "The template defines the format in which the member data is transferred to the external system. Use placeholders such as PLACEHOLDER_FIRSTNAME to automatically replace the data.",
        "memberTransfer.templateImported" to "Template imported successfully.",
        "memberTransfer.templateImportedBulk" to "Member template detected, bulk mode enabled.",
        "memberTransfer.templateImportedDetails" to "Member and bulk wrapper templates have been detected and completed.",
        "memberTransfer.templateImportedSingle" to "Single member template detected.",
        "memberTransfer.templateTip" to "Tip: Place the cursor in the desired place in the template and click on a placeholder to insert it. Placeholders are automatically replaced by the actual member data when they are transferred.",
        "memberTransfer.templateWhat" to "What is a template?",
        "memberTransfer.title" to "Member Transfer - Settings",
        "memberTransfer.transferConfiguration" to "Transmission Configuration",
        "memberTransfer.transferConfigurationTitle" to "Transmission Configuration",
        "memberTransfer.transferEndpointHint" to "Relative path to the transmission endpoint (e.g. /api/members/bulk)",
        "memberTransfer.transferEndpointPath" to "Transmission Endpoint Path",
        "memberTransfer.transferEndpointPlaceholder" to "/api/members/bulk",
        "memberTransfer.transferFormat" to "Transmission format",
        "memberTransfer.transferTemplate" to "Transfer Template",
        "memberTransfer.usernameEmail" to "Username / email",
        "memberTransferDialog.additionalErrors" to "additional faults",
        "memberTransferDialog.additionalFieldPlaceholder" to "Additional field (e.g. client_id)",
        "memberTransferDialog.additionalFieldPlaceholderForm" to "Field name: Value (e.g. client_id: abc123)",
        "memberTransferDialog.bulkImport" to "Bulk Import",
        "memberTransferDialog.cancel" to "Cancel",
        "memberTransferDialog.editConfig" to "Edit the configuration.",
        "memberTransferDialog.endpoint" to "Endpoint",
        "memberTransferDialog.excludedMembers" to "Excluded members (missing mandatory fields)",
        "memberTransferDialog.format" to "Format",
        "memberTransferDialog.goToSettings" to "Settings Where to?",
        "memberTransferDialog.loadingConfig" to "Loading saved configuration",
        "memberTransferDialog.loginData" to "Login data",
        "memberTransferDialog.loginDataHint" to "The login details are used from the settings. You can overwrite them here if necessary.",
        "memberTransferDialog.loginDataOverride" to "Login details (optional overwrite)",
        "memberTransferDialog.loginDataOverrideHint" to "Only fill in if you want to overwrite the saved login data. Empty fields use the stored values.",
        "memberTransferDialog.method" to "Method",
        "memberTransferDialog.mode" to "mode",
        "memberTransferDialog.noConfigFound" to "No configuration found",
        "memberTransferDialog.noConfigMessage" to "Please configure the member transfer in the settings first.",
        "memberTransferDialog.passwordPlaceholder" to "Password (leave blank for saved)",
        "memberTransferDialog.server" to "Server",
        "memberTransferDialog.single" to "Single",
        "memberTransferDialog.title" to "Transfer Members",
        "memberTransferDialog.transfer" to "Transferred",
        "memberTransferDialog.transferConfiguration" to "Transmission Configuration",
        "memberTransferDialog.transferError" to "Error during transmission",
        "memberTransferDialog.transferFailed" to "Transfer failed",
        "memberTransferDialog.transferring" to "Communicating...",
        "memberTransferDialog.transferSuccess" to "{transferred} successfully transferred by {total} members.",
        "memberTransferDialog.usernameEmail" to "Username / email",
        "messages.cancel" to "Cancel",
        "messages.confirm" to "Confirm",
        "messages.error" to "Error",
        "messages.fileTooLarge" to "File too large",
        "messages.imageMaxSize" to "The image must be a maximum of 5 MB.",
        "messages.info" to "information",
        "messages.invalidFile" to "Invalid file",
        "messages.note" to "Notice",
        "messages.pleaseSelectImageFile" to "Please select an image file.",
        "messages.recordsDisplayed" to "displayed",
        "messages.recordsFound" to "Records found",
        "messages.success" to "Success",
        "messages.successfullyLoaded" to "Loaded successfully",
        "messages.warning" to "Warning",
        "mobile.active" to "Active",
        "mobile.add" to "Add",
        "mobile.appLoading" to "Loading app",
        "mobile.calendarAgendaEmpty" to "No events in this month.",
        "mobile.calendarAgendaTitle" to "Events this month",
        "mobile.calendarAllSourcesFailed" to "Calendar data could not be loaded.",
        "mobile.calendarCancellationEnd" to "Until (optional)",
        "mobile.calendarCancellationHint" to "Hides recurring training times on those days.",
        "mobile.calendarCancellationInMonth" to "Cancellations this month",
        "mobile.calendarCancellationReason" to "Reason",
        "mobile.calendarCancellationSave" to "Save",
        "mobile.calendarCancellationStart" to "Date (YYYY-MM-DD)",
        "mobile.calendarCancellationTitle" to "Training cancelled",
        "mobile.calendarGridTitle" to "Month",
        "mobile.calendarLegend" to "Display",
        "mobile.calendarLegendCancellation" to "Cancellation",
        "mobile.calendarLegendHoliday" to "Public holiday",
        "mobile.calendarLegendMatch" to "League match",
        "mobile.calendarLegendOfficial" to "Participation",
        "mobile.calendarLegendSchool" to "School break",
        "mobile.calendarLegendTournament" to "Tournament",
        "mobile.calendarLegendTraining" to "Training",
        "mobile.calendarSourceCancellations" to "Training cancellations",
        "mobile.calendarSourceDiary" to "Diary",
        "mobile.calendarSourceFailed" to "not loaded",
        "mobile.calendarSourceHolidays" to "Holidays / school breaks",
        "mobile.calendarSourceMatches" to "League matches",
        "mobile.calendarSourceOfficial" to "Official participations",
        "mobile.calendarSourceTournaments" to "Tournaments",
        "mobile.calendarSourceTrainingTimes" to "Training times",
        "mobile.calendarSubtitle" to "Training, tournaments, matches and holidays for the month.",
        "mobile.calendarTitle" to "Calendar",
        "mobile.calendarToday" to "Today",
        "mobile.cancel" to "Cancel",
        "mobile.clubRequest" to "Request access",
        "mobile.clubRequested" to "Requested",
        "mobile.createDiaryEntry" to "Create entry",
        "mobile.deleteNote" to "Delete note",
        "mobile.deleteTag" to "Remove tag",
        "mobile.editTimes" to "Edit times",
        "mobile.emailAndPasswordRequired" to "Email and password are required",
        "mobile.entry" to "Entry",
        "mobile.inactive" to "Inactive",
        "mobile.language" to "Language",
        "mobile.lastTraining" to "Last training",
        "mobile.loginFailed" to "Login failed",
        "mobile.loginInProgress" to "Signing in...",
        "mobile.more" to "More",
        "mobile.new" to "New",
        "mobile.newNote" to "New note",
        "mobile.newTag" to "New tag",
        "mobile.noDiaryEntries" to "No diary entries yet",
        "mobile.noMembers" to "No members found",
        "mobile.noResults" to "No results",
        "mobile.noTimes" to "No times",
        "mobile.offlineCacheHint" to "No connection – showing last loaded data.",
        "mobile.participationTop" to "Top attendance",
        "mobile.refresh" to "Refresh",
        "mobile.requestedAccess" to "Requested",
        "mobile.role" to "Role",
        "mobile.saveEntry" to "Save",
        "mobile.search" to "Search",
        "mobile.select" to "Select",
        "mobile.sessionCheck" to "Check session",
        "mobile.sessionCheckFailed" to "Session check failed",
        "mobile.sessionInvalid" to "Session invalid",
        "mobile.sessionValid" to "Session valid",
        "mobile.status" to "Status",
        "mobile.user" to "User",
        "myTischtennis.about" to "About myTischtennis",
        "myTischtennis.aboutFeatures.fetch" to "Retrieve competition data directly",
        "myTischtennis.aboutFeatures.import" to "Automatically import tournament data",
        "myTischtennis.aboutFeatures.sync" to "Sync Player Results",
        "myTischtennis.aboutText" to "By linking your myTischtennis account, you can:",
        "myTischtennis.autoUpdates" to "Auto Update",
        "myTischtennis.club" to "Association (myTischtennis)",
        "myTischtennis.deleteAccount" to "Disconnect account",
        "myTischtennis.disabled" to "Unchecked",
        "myTischtennis.editAccount" to "Edit account",
        "myTischtennis.enabled" to "ON",
        "myTischtennis.fetchStatistics" to "Data Retrieval Statistics",
        "myTischtennis.lastFetch" to "Last Fetched:",
        "myTischtennis.lastLoginAttempt" to "Last login attempt",
        "myTischtennis.lastSuccessfulLogin" to "Last successful login",
        "myTischtennis.leagueTables" to "JoomSport Standings",
        "myTischtennis.linkAccount" to "Link account",
        "myTischtennis.linkedAccount" to "Linked Account",
        "myTischtennis.loadingStats" to "Loading stats",
        "myTischtennis.matchResults" to "Event Results",
        "myTischtennis.neverFetched" to "Never Retrieved",
        "myTischtennis.no" to "No",
        "myTischtennis.noAccount" to "No myTischtennis account linked.",
        "myTischtennis.passwordNote" to "Note: Saving the password is optional. If you do not save it, you will be asked for the password each time you synchronize.",
        "myTischtennis.passwordSaved" to "Password saved",
        "myTischtennis.passwordsEncrypted" to "Passwords are stored encrypted.",
        "myTischtennis.playerRatings" to "Player Ratings",
        "myTischtennis.refreshStats" to "Reload Stats",
        "myTischtennis.testLogin" to "Re-login",
        "myTischtennis.title" to "myTischtennis-Account",
        "myTischtennis.updateHistory" to "Update History",
        "myTischtennis.yes" to "Yes",
        "myTischtennisAccount.aboutDescription" to "By linking your myTischtennis account, you can:",
        "myTischtennisAccount.aboutFeature1" to "Automatically import tournament data",
        "myTischtennisAccount.aboutFeature2" to "Sync Player Results",
        "myTischtennisAccount.aboutFeature3" to "Retrieve competition data directly",
        "myTischtennisAccount.aboutHint" to "Saving the password is optional. If you do not save it, you will be asked for the password each time you synchronize.",
        "myTischtennisAccount.aboutMyTischtennis" to "About myTischtennis",
        "myTischtennisAccount.accountSaved" to "myTischtennis-Account successfully saved",
        "myTischtennisAccount.accountUnlinked" to "myTischtennis account successfully disconnected",
        "myTischtennisAccount.autoUpdates" to "Automatic updates:",
        "myTischtennisAccount.club" to "Association (myTischtennis):",
        "myTischtennisAccount.daysAgo" to "{count} days ago",
        "myTischtennisAccount.disabled" to "Unchecked",
        "myTischtennisAccount.editAccount" to "Edit account",
        "myTischtennisAccount.email" to "E-mail:",
        "myTischtennisAccount.enabled" to "ON",
        "myTischtennisAccount.errorLoadingAccount" to "Error loading myTischtennis account",
        "myTischtennisAccount.errorLoadingStatistics" to "Error loading fetch statistics",
        "myTischtennisAccount.errorUnlinking" to "Error disconnecting account",
        "myTischtennisAccount.fetchStatistics" to "Data Retrieval Statistics",
        "myTischtennisAccount.hoursAgo" to "{count} h ago",
        "myTischtennisAccount.justNow" to "just now",
        "myTischtennisAccount.lastFetch" to "Last Fetched:",
        "myTischtennisAccount.lastLoginAttempt" to "Last login attempt:",
        "myTischtennisAccount.lastSuccessfulLogin" to "Last successful login:",
        "myTischtennisAccount.leagueTables" to "JoomSport Standings",
        "myTischtennisAccount.linkAccount" to "Link account",
        "myTischtennisAccount.linkedAccount" to "Linked Account",
        "myTischtennisAccount.loading" to "Loading...",
        "myTischtennisAccount.loadingStatistics" to "Loading stats",
        "myTischtennisAccount.loginAgain" to "Re-login",
        "myTischtennisAccount.loginFailed" to "Login failed",
        "myTischtennisAccount.loginSuccessful" to "Login successful! Connection details updated.",
        "myTischtennisAccount.matchResults" to "Event Results",
        "myTischtennisAccount.minutesAgo" to "{count} min ago",
        "myTischtennisAccount.never" to "Never",
        "myTischtennisAccount.neverFetched" to "Never Retrieved",
        "myTischtennisAccount.no" to "No",
        "myTischtennisAccount.noAccountLinked" to "No myTischtennis account linked.",
        "myTischtennisAccount.passwordRequired" to "Password required",
        "myTischtennisAccount.passwordSaved" to "Password saved",
        "myTischtennisAccount.playerRatings" to "Player Ratings",
        "myTischtennisAccount.playersUpdated" to "Player Updated",
        "myTischtennisAccount.refreshStatistics" to "Reload Stats",
        "myTischtennisAccount.results" to "Results",
        "myTischtennisAccount.teams" to "Teams",
        "myTischtennisAccount.title" to "myTischtennis Account",
        "myTischtennisAccount.unlinkAccount" to "Disconnect account",
        "myTischtennisAccount.unlinkAccountConfirm" to "Are you sure you want to unlink the myTischtennis account?",
        "myTischtennisAccount.unlinkAccountTitle" to "Disconnect account",
        "myTischtennisAccount.updateHistory" to "Update History",
        "myTischtennisAccount.yes" to "Yes",
        "myTischtennisAccount.yesterday" to "yesterday",
        "myTischtennisDialog.appPassword" to "Your app password to confirm",
        "myTischtennisDialog.appPasswordHint" to "For security reasons, we need your app password to save the myTischtennis password.",
        "myTischtennisDialog.appPasswordPlaceholder" to "Your password for this app",
        "myTischtennisDialog.autoUpdateRatings" to "Enable automatic update ratings",
        "myTischtennisDialog.autoUpdateRatingsHint" to "The latest ratings from myTischtennis are automatically retrieved every day at 6:00 am. Requires saved password.",
        "myTischtennisDialog.autoUpdateWarning" to "For automatic updates, the myTischtennis password must be saved.",
        "myTischtennisDialog.cancel" to "Cancel",
        "myTischtennisDialog.editAccount" to "edit myTischtennis-Account",
        "myTischtennisDialog.email" to "myTischtennis-Email",
        "myTischtennisDialog.emailPlaceholder" to "Your myTischtennis email address",
        "myTischtennisDialog.errorLogin" to "Login error.",
        "myTischtennisDialog.errorSaving" to "Error saving Account",
        "myTischtennisDialog.linkAccount" to "link myTischtennis account",
        "myTischtennisDialog.loadingLoginForm" to "Loading Login Form...",
        "myTischtennisDialog.loggingIn" to "Log in...",
        "myTischtennisDialog.login" to "Log in",
        "myTischtennisDialog.password" to "myTischtennis-Password",
        "myTischtennisDialog.passwordPlaceholder" to "Your myTischtennis password",
        "myTischtennisDialog.passwordPlaceholderKeep" to "Leave blank to keep",
        "myTischtennisDialog.save" to "Save",
        "myTischtennisDialog.savePassword" to "save mytabletennis-password",
        "myTischtennisDialog.savePasswordHint" to "If enabled, your myTischtennis password will be stored encrypted so that automatic synchronizations are possible.",
        "myTischtennisDialog.saving" to "Saving...",
        "myTischtennisHistory.close" to "Close",
        "myTischtennisHistory.failed" to "That didnt work.",
        "myTischtennisHistory.loading" to "Loading history...",
        "myTischtennisHistory.noHistory" to "No automatic updates performed yet.",
        "myTischtennisHistory.ratingsUpdated" to "Ratings updated",
        "myTischtennisHistory.successful" to "Successful",
        "myTischtennisHistory.title" to "Update Ratings History",
        "navigation.approvals" to "Approvals",
        "navigation.backToHome" to "Back to home",
        "navigation.billing" to "Billing",
        "navigation.clickTtAccount" to "HTTV / click-TT account",
        "navigation.clickTtBrowser" to "HTTV / click-TT",
        "navigation.clubSettings" to "Club Settings",
        "navigation.clubTournaments" to "Club Tournaments",
        "navigation.competitions" to "Competitions",
        "navigation.dailyBusiness" to "Daily Business",
        "navigation.diary" to "Diary",
        "navigation.home" to "Home",
        "navigation.login" to "Login",
        "navigation.logout" to "Logout",
        "navigation.logs" to "System Logs",
        "navigation.members" to "Members",
        "navigation.memberTransfer" to "Member Transfer",
        "navigation.myTischtennisAccount" to "myTischtennis Account",
        "navigation.orders" to "Orders",
        "navigation.permissions" to "Permissions",
        "navigation.personalSettings" to "Personal Settings",
        "navigation.predefinedActivities" to "Predefined Activities",
        "navigation.register" to "Register",
        "navigation.schedule" to "Schedules",
        "navigation.settings" to "Settings",
        "navigation.statistics" to "Training Statistics",
        "navigation.teamManagement" to "Team Management",
        "navigation.tournamentParticipations" to "Official tournaments & participations",
        "navigation.tournaments" to "Tournaments",
        "nuscoreAnalyzer.analysisComplete" to "✅ Analysis completed: {count} resources found",
        "nuscoreAnalyzer.analyze" to "🔍 nuscore analysis",
        "nuscoreAnalyzer.analyzing" to "Analyzing...",
        "nuscoreAnalyzer.createLocalCopy" to "Create 🏗️ local copy",
        "nuscoreAnalyzer.creating" to "🏗️ Creating...",
        "nuscoreAnalyzer.description" to "Analyzes and downloads nuscore resources for local use",
        "nuscoreAnalyzer.downloading" to "⬇️ Downloading...",
        "nuscoreAnalyzer.downloadResources" to "Download resources",
        "nuscoreAnalyzer.foundResources" to "📋 Resources found:",
        "nuscoreAnalyzer.log" to "Log",
        "nuscoreAnalyzer.pageLoaded" to "✅ nuscore page loaded",
        "nuscoreAnalyzer.startAnalysis" to "🔍 Starting nuscore analysis...",
        "nuscoreAnalyzer.title" to "🔍 nuscore Analyzer",
        "officialTournaments.action" to "Action",
        "officialTournaments.age" to "Age",
        "officialTournaments.ageClassCompetition" to "Age Group/Competition",
        "officialTournaments.ageClasses" to "Age classes",
        "officialTournaments.all" to "All",
        "officialTournaments.birthDate" to "Date of birth",
        "officialTournaments.checkBoxToActivate" to "Enable checkbox",
        "officialTournaments.competition" to "Competitor",
        "officialTournaments.competitions" to "Competitions",
        "officialTournaments.competitionTypes" to "Competition Types:",
        "officialTournaments.cutoffDate" to "Effective date:",
        "officialTournaments.date" to "Date",
        "officialTournaments.dateTime" to "Date:",
        "officialTournaments.deadlineDate" to "Registration deadline (date):",
        "officialTournaments.deadlineOnline" to "Registration deadline (online):",
        "officialTournaments.deadlines" to "Registration deadlines:",
        "officialTournaments.deadlinesByAgeClass" to "Registration deadlines for each AK:",
        "officialTournaments.delete" to "Delete",
        "officialTournaments.editTitle" to "Edit Title",
        "officialTournaments.eligible" to "Eligible to Participate",
        "officialTournaments.entryFee" to "starting cash",
        "officialTournaments.entryFees" to "Attendance fees:",
        "officialTournaments.events" to "Happenings",
        "officialTournaments.finalRound" to "Finals Competition",
        "officialTournaments.hasPlayed" to "{0} played their turn.",
        "officialTournaments.last12Months" to "Last 12 months",
        "officialTournaments.last2Years" to "Past 2 Years",
        "officialTournaments.last3Months" to "Last 3 months",
        "officialTournaments.last6Months" to "Past 6 months",
        "officialTournaments.markAsParticipated" to "Mark as attended",
        "officialTournaments.markAsRegistered" to "Mark as logged in",
        "officialTournaments.member" to "Member",
        "officialTournaments.name" to "name",
        "officialTournaments.noEvents" to "No events available yet. Upload a PDF to get started.",
        "officialTournaments.notInterested" to "Not interested",
        "officialTournaments.openTo" to "Open to",
        "officialTournaments.participants" to "Participants",
        "officialTournaments.participantsPdf" to "Participant PDF",
        "officialTournaments.participated" to "Participated",
        "officialTournaments.participations" to "Tournament Participations",
        "officialTournaments.pdfForSelectedMembers" to "PDF for flagged members",
        "officialTournaments.placement" to "Placement",
        "officialTournaments.preliminaryRound" to "1st Stage:",
        "officialTournaments.previousSeason" to "Previous Season",
        "officialTournaments.registered" to "Logged-In",
        "officialTournaments.resetStatus" to "Reset Status",
        "officialTournaments.results" to "Results",
        "officialTournaments.savedEvents" to "Saved Events",
        "officialTournaments.selectMembers" to "Select Members",
        "officialTournaments.showCompetitions" to "View Competitions",
        "officialTournaments.showEvents" to "View Saved Events",
        "officialTournaments.showParticipants" to "View Participant",
        "officialTournaments.showParticipations" to "View Tournament Shares",
        "officialTournaments.showResults" to "View Results",
        "officialTournaments.startTime" to "start time",
        "officialTournaments.startTimes" to "Start times:",
        "officialTournaments.status" to "status",
        "officialTournaments.timeRange" to "Period:",
        "officialTournaments.title" to "Title:",
        "officialTournaments.tournament" to "Tournament",
        "officialTournaments.updatePlacementError" to "Error updating placement",
        "officialTournaments.updateStatusError" to "Failed to update state",
        "officialTournaments.updateTitleError" to "This was unable to be saved.",
        "officialTournaments.uploadError" to "Error uploading PDF.",
        "officialTournaments.uploadPdf" to "Upload PDF",
        "officialTournaments.venues" to "Venues",
        "officialTournaments.wantsToParticipate" to "Want to Join",
        "orders.addOrder" to "Create order",
        "orders.budget" to "budget",
        "orders.club" to "Club",
        "orders.cost" to "Cost",
        "orders.dateAutoHint" to "The date is set automatically and every change is logged with a date.",
        "orders.errorLoading" to "Orders could not be loaded.",
        "orders.errorSaving" to "Order could not be saved.",
        "orders.filterAllClubs" to "All clubs",
        "orders.filterAllCompletionStates" to "All degrees",
        "orders.filterAllStatuses" to "All statuses",
        "orders.filterHandedOver" to "Item handed out",
        "orders.filterPaid" to "Paid",
        "orders.globalSubtitle" to "All orders across clubs can be viewed and managed here.",
        "orders.globalTitle" to "Orders Across All Clubs",
        "orders.history" to "History",
        "orders.item" to "Item",
        "orders.itemPlaceholder" to "e.g. shirt, hoodie or bat cover",
        "orders.loading" to "Loading orders...",
        "orders.member" to "Member",
        "orders.memberTitle" to "Orders: {name}",
        "orders.noOrdersGlobal" to "There are currently no orders.",
        "orders.noOrdersMember" to "There are no orders for this member yet.",
        "orders.open" to "Outstanding",
        "orders.orderDate" to "Created on",
        "orders.paid" to "Paid",
        "orders.paidConfirmed" to "Paid",
        "orders.searchPlaceholder" to "Search by club, member or item",
        "orders.showCompleted" to "Show completed ones",
        "orders.status" to "status",
        "orders.statusArrived" to "item arrived",
        "orders.statusDate" to "Last change",
        "orders.statusHandedOver" to "item handed over",
        "orders.statusOrdered" to "ordered",
        "orders.statusRequested" to "requested",
        "orders.title" to "Orders",
        "pdfGenerator.activityTimeBlock" to "Activity / Time Block",
        "pdfGenerator.allGames" to "All Cities",
        "pdfGenerator.alsoPlayable" to "Also playable",
        "pdfGenerator.birthDate" to "Date of birth",
        "pdfGenerator.clubLabel" to "Club:",
        "pdfGenerator.competition" to "Event",
        "pdfGenerator.competitionName" to "Competitor",
        "pdfGenerator.date" to "Date:",
        "pdfGenerator.diff" to "Diff",
        "pdfGenerator.duration" to "Minutes to Lockout",
        "pdfGenerator.fee" to "Fee",
        "pdfGenerator.generatedAt" to "Generated:",
        "pdfGenerator.group" to "Group",
        "pdfGenerator.groupLabel" to "Group",
        "pdfGenerator.groupMatrices" to "Group matrices",
        "pdfGenerator.hallShoes" to "Indoor shoes (must not rub off on the floor)",
        "pdfGenerator.hints" to "Notes:",
        "pdfGenerator.informTrainer" to "Since the club wants to take over the registration, inform the coaches at least one week before the tournament about the participation",
        "pdfGenerator.leagueLabel" to "League:",
        "pdfGenerator.lineupQttr" to "(Q)TTR",
        "pdfGenerator.member" to "Members:",
        "pdfGenerator.nameFirstName" to "Surname, first name",
        "pdfGenerator.noActivities" to "No activities recorded for this training day.",
        "pdfGenerator.noWhiteJersey" to "No white jersey",
        "pdfGenerator.officialTournament" to "Official Tournament",
        "pdfGenerator.oneHourBefore" to "Be in the hall one hour before the start of the competition",
        "pdfGenerator.overallRanking" to "Overall ranking (knockout rounds)",
        "pdfGenerator.periodLabel" to "Registration for:",
        "pdfGenerator.phoneList" to "Phone List - Active Members",
        "pdfGenerator.phoneNumber" to "Telephone no. ",
        "pdfGenerator.place" to "The square",
        "pdfGenerator.placement" to "Placement",
        "pdfGenerator.plannedLeagueLabel" to "Planned league:",
        "pdfGenerator.player" to "Skaters",
        "pdfGenerator.player1" to "Player 1",
        "pdfGenerator.player2" to "4 1/2 minutes",
        "pdfGenerator.points" to "Points",
        "pdfGenerator.recommendations" to "Recommendations",
        "pdfGenerator.result" to "Result",
        "pdfGenerator.round" to "Round",
        "pdfGenerator.seasonLabel" to "Season:",
        "pdfGenerator.sets" to "phrases",
        "pdfGenerator.sportShorts" to "Sports shorts (or sports skirts), preferably not white either",
        "pdfGenerator.startTime" to "start time",
        "pdfGenerator.status" to "status",
        "pdfGenerator.teamAgeGroupLabel" to "Team age group:",
        "pdfGenerator.teamGenderLabel" to "Team gender:",
        "pdfGenerator.teamLineupTitle" to "Team line-up",
        "pdfGenerator.teamNameLabel" to "Team:",
        "pdfGenerator.time" to "Time:",
        "pdfGenerator.timeBlock" to "Time block",
        "pdfGenerator.tournament" to "Tournament",
        "pdfGenerator.trainersPresent" to "The coaches try to be present at all tournaments.",
        "pdfGenerator.trainingPlan" to "Training plan",
        "pdfGenerator.venue" to "Location",
        "pdfGenerator.venues" to "Venues",
        "pdfGenerator.waterBottle" to "Have a bottle of water with you",
        "pendingApprovals.actions" to "Actions",
        "pendingApprovals.approve" to "Approve  ",
        "pendingApprovals.email" to "Email",
        "pendingApprovals.errorApproving" to "Error approving user",
        "pendingApprovals.errorLoadingRequests" to "failed to load pendings for %<%E%s%E%>",
        "pendingApprovals.errorRejecting" to "Error Rejecting User",
        "pendingApprovals.firstName" to "First name",
        "pendingApprovals.lastName" to "Surname",
        "pendingApprovals.noPendingRequests" to "No pending user requests.",
        "pendingApprovals.noPermission" to "No permission",
        "pendingApprovals.noPermissionDetails" to "Only admins can edit member requests.",
        "pendingApprovals.noPermissionMessage" to "You do not have permission to manage shares.",
        "pendingApprovals.reject" to "Dismiss",
        "pendingApprovals.title" to "Pending User Requests",
        "permissions.actions" to "Actions",
        "permissions.active" to "Active",
        "permissions.availableRoles" to "Available Roles",
        "permissions.baseRole" to "Base Role",
        "permissions.cancel" to "Cancel",
        "permissions.clickToActivate" to "Click to activate.",
        "permissions.clickToDeactivate" to "Click to disable",
        "permissions.clubMembers" to "Club members",
        "permissions.creator" to "Creator",
        "permissions.customize" to "Customize",
        "permissions.customizeInfo" to "Here you can make individual adjustments.",
        "permissions.email" to "Email",
        "permissions.errorLoadingData" to "Error loading data",
        "permissions.errorSavingPermissions" to "Error saving permissions",
        "permissions.errorUpdatingRole" to "Failed to update the role",
        "permissions.inactive" to "Unchecked",
        "permissions.loadingMembers" to "Inviting members...",
        "permissions.permissionsFor" to "Permissions for",
        "permissions.reset" to "Revert",
        "permissions.resetAll" to "Reset All",
        "permissions.role" to "Role",
        "permissions.save" to "Save",
        "permissions.status" to "status",
        "permissions.subtitle" to "Manage access rights for club members",
        "permissions.title" to "Credential management",
        "predefinedActivities.addImage" to "Add image",
        "predefinedActivities.cancel" to "Cancel",
        "predefinedActivities.code" to "Abbreviation",
        "predefinedActivities.createDrawing" to "Create Exercise Drawing",
        "predefinedActivities.deduplicate" to "Merge Duplicates",
        "predefinedActivities.delete" to "Delete",
        "predefinedActivities.description" to "Description",
        "predefinedActivities.duration" to "Duration minutes",
        "predefinedActivities.durationText" to "Duration (Text)",
        "predefinedActivities.durationTextPlaceholder" to "e.g. 2x7",
        "predefinedActivities.editActivity" to "Edit Activity",
        "predefinedActivities.editDrawing" to "Edit Exercise Drawing",
        "predefinedActivities.excludeFromStats" to "Exclude from statistics",
        "predefinedActivities.filterAll" to "All",
        "predefinedActivities.filterCustom" to "Custom",
        "predefinedActivities.filterStandard" to "Standard activities",
        "predefinedActivities.imageHelp" to "You can either enter a link to an image or upload an image:",
        "predefinedActivities.imageLink" to "Image link (optional)",
        "predefinedActivities.imageLinkPlaceholder" to "e.g. https://example.com/bild.jpg or /api/predefined-activities/:id/image/:imageId",
        "predefinedActivities.merge" to "Merge",
        "predefinedActivities.min" to "min",
        "predefinedActivities.name" to "name",
        "predefinedActivities.new" to "New",
        "predefinedActivities.newActivity" to "New Activity",
        "predefinedActivities.orUploadImage" to "Or upload image:",
        "predefinedActivities.reload" to "Re-Load",
        "predefinedActivities.searchPlaceholder" to "Search abbreviations (e.g. 'as vh us' or 'vh as us')...",
        "predefinedActivities.selectSource" to "Choose the source",
        "predefinedActivities.selectTarget" to "Select destination",
        "predefinedActivities.title" to "Predefined activities",
        "predefinedActivities.upload" to "Upload",
        "predefinedActivities.uploadAfterSave" to "Upload after saving",
        "predefinedActivities.uploadedImages" to "Uploaded video(s):",
        "predefinedActivities.uploadNote" to "Note: The image will not be uploaded until the activity is saved.",
        "privacy.clubData" to "Club/Activity Data",
        "privacy.consent" to "Consent-based operations",
        "privacy.cookies" to "Cookies/Local Storage",
        "privacy.dataCategories" to "Categories of personal data ",
        "privacy.logData" to "Logfiles",
        "privacy.memberData" to "Member details",
        "privacy.myTischtennisData" to "MyTischtennis data",
        "privacy.purposes" to "Purposes and legal bases of the processing",
        "privacy.recipients" to "Recipient",
        "privacy.registrationData" to "Registration/Profile Data",
        "privacy.responsible" to "Data Controller",
        "privacy.title" to "Privacy policy",
        "privacy.tournamentData" to "Tournament Data",
        "privacy.trainingData" to "Training data",
        "privacy.usage" to "Use of the training diary",
        "privacy.usageData" to "Usage data",
        "privacy.website" to "Preparation of the website",
        "quickAddMember.birthDate" to "Date of birth (optional)",
        "quickAddMember.cancel" to "Cancel",
        "quickAddMember.createAndAdd" to "Create & add new",
        "quickAddMember.firstName" to "First name",
        "quickAddMember.gender" to "Sex",
        "quickAddMember.lastName" to "Surname (optional)",
        "quickAddMember.pleaseSelect" to "Please select",
        "quickAddMember.title" to "Add new member",
        "schedule.activeSelection" to "Active selection",
        "schedule.addressLabel" to "Address",
        "schedule.adultSchedule" to "Adult schedule",
        "schedule.ageClass" to "Age group",
        "schedule.allLeagueMatches" to "All matches",
        "schedule.balls" to "Balls",
        "schedule.cancel" to "Cancel",
        "schedule.cityLabel" to "Postcode/city",
        "schedule.code" to "Code",
        "schedule.completedShort" to "Completed",
        "schedule.copyCode" to "Copy code",
        "schedule.copyGuestPin" to "Copy away PIN",
        "schedule.copyHomePin" to "Copy home PIN",
        "schedule.date" to "Date",
        "schedule.downloadPDF" to "Download PDF",
        "schedule.errorCopying" to "Error while copying",
        "schedule.errorImportingCSV" to "Failed to import the CSV file",
        "schedule.errorLoadingAdultSchedule" to "Failed to load the adult schedule",
        "schedule.errorLoadingGallery" to "The gallery could not be loaded.",
        "schedule.errorLoadingMatches" to "Failed to load matches",
        "schedule.errorLoadingMembers" to "Failed to load the member list.",
        "schedule.errorLoadingOverallSchedule" to "Failed to load the overall schedule",
        "schedule.errorLoadingTable" to "Failed to load league table data from myTischtennis",
        "schedule.errorLoadingTeams" to "Failed to load teams",
        "schedule.errorSavingPlayerSelection" to "Failed to save the player selection",
        "schedule.fetchDataFailed" to "Team data could not be fetched.",
        "schedule.fetchingTeamData" to "Fetching…",
        "schedule.fetchStartFailed" to "The fetch could not be started.",
        "schedule.fetchTeamData" to "Fetch schedule & results",
        "schedule.fetchTimedOut" to "Timed out while fetching data.",
        "schedule.gallery" to "Member gallery",
        "schedule.galleryLoading" to "Loading gallery…",
        "schedule.galleryTitle" to "Member gallery - click an image to mark as ready",
        "schedule.gamesFor" to "Matches for",
        "schedule.guestPin" to "Away PIN",
        "schedule.guestTeam" to "Away team",
        "schedule.homePin" to "Home PIN",
        "schedule.homeTeam" to "Home team",
        "schedule.imageSize" to "Image size",
        "schedule.importSchedule" to "Import schedule",
        "schedule.leagueTable" to "League table",
        "schedule.loadingMembers" to "Loading members...",
        "schedule.locationDialogTitle" to "Game room",
        "schedule.locationInfo" to "Location",
        "schedule.locationName" to "Game room",
        "schedule.matches" to "matches",
        "schedule.matchLabel" to "Game",
        "schedule.matchOverviewDescription" to "Controls which matches from the currently selected league are shown in the schedule.",
        "schedule.matchOverviewTitle" to "Match overview",
        "schedule.nextMatch" to "Next match",
        "schedule.noActiveMembers" to "No active members found",
        "schedule.noGames" to "No matches available",
        "schedule.noLeagueForTeam" to "No league is assigned to this team. Please assign a league first.",
        "schedule.noMatchesForPDF" to "No matches found to generate a PDF.",
        "schedule.noMatchingTeams" to "No teams match the current search.",
        "schedule.noMembersWithImages" to "No members with images found.",
        "schedule.noSelectionMessage" to "Choose the overall schedule, the adult schedule or a team from the left.",
        "schedule.noSelectionTitle" to "No active selection yet",
        "schedule.noTableData" to "No table data available",
        "schedule.noTeamsFound" to "No teams found for this season",
        "schedule.openMatchReport" to "Open match report",
        "schedule.otherTeamMatches" to "Other team",
        "schedule.overallSchedule" to "Overall schedule",
        "schedule.ownTeamMatches" to "Own team",
        "schedule.pendingShort" to "Open",
        "schedule.planned" to "Planned",
        "schedule.played" to "Played",
        "schedule.player" to "Player",
        "schedule.playerSelection" to "Player selection",
        "schedule.playerSelectionSaved" to "Player selection saved",
        "schedule.pleaseSelectGame" to "Please select a match first",
        "schedule.points" to "Pts",
        "schedule.position" to "Position",
        "schedule.ready" to "Ready",
        "schedule.refreshTable" to "Refresh table",
        "schedule.result" to "Result",
        "schedule.save" to "Save",
        "schedule.scheduleImportSuccess" to "Schedule imported successfully.",
        "schedule.schedulePDF" to "Schedules.pdf",
        "schedule.scheduleTab" to "Schedule",
        "schedule.searchTeams" to "Search team or league",
        "schedule.selection" to "Selection",
        "schedule.selectOtherTeam" to "Select other team",
        "schedule.selectSpecificLeague" to "Please select a specific league to load the table.",
        "schedule.sets" to "Sets",
        "schedule.showLocation" to "View Game Venue",
        "schedule.subtitle" to "Select teams, review fixtures and keep league tables in view.",
        "schedule.tableDataLoaded" to "League table data loaded successfully from myTischtennis.",
        "schedule.tableLoading" to "Loading table…",
        "schedule.tableTab" to "Table",
        "schedule.team" to "Team",
        "schedule.teamDataFetched" to "Team data updated successfully.",
        "schedule.teamDataFetchedDetails" to "Team: {team}\nProcessed records: {count}",
        "schedule.teams" to "Teams",
        "schedule.time" to "Time",
        "schedule.title" to "Schedules",
        "schedule.vs" to "vs",
        "schedule.workspaceScheduleDescription" to "{matches} matches, {completed} completed and {pending} open.",
        "schedule.workspaceTableDescription" to "{count} table rows currently loaded.",
        "seasonSelector.addSeason" to "Add new Season",
        "seasonSelector.alreadyExists" to "This season already exists!",
        "seasonSelector.cancel" to "Cancel",
        "seasonSelector.create" to "Create",
        "seasonSelector.errorCreating" to "Error creating season",
        "seasonSelector.errorLoading" to "Error loading seasons",
        "seasonSelector.hint" to "Notice",
        "seasonSelector.label" to "Season:",
        "seasonSelector.loading" to "Loading...",
        "seasonSelector.newSeason" to "Create New Season",
        "seasonSelector.placeholder" to "e.g. 2023/2024",
        "seasonSelector.selectSeason" to "Select season(s)",
        "settings.language" to "Language",
        "settings.languageChanged" to "Language successfully changed",
        "settings.languageDescription" to "Choose your preferred language for the application",
        "settings.personalSettings" to "Personal Settings",
        "settings.selectLanguage" to "Select Language",
        "settings.title" to "Settings",
        "tagHistory.noHistory" to "No tag history available",
        "tagHistory.selectTags" to "Select Tags",
        "tagHistory.title" to "Tag: TypePad",
        "teamManagement.activeTeam" to "Active team",
        "teamManagement.addPlanningTeam" to "Add Planning Team",
        "teamManagement.allMembersAssigned" to "All members are currently assigned.",
        "teamManagement.assignLeagueBeforeDocuments" to "Please assign a league to the team first so documents can be processed.",
        "teamManagement.assignLeagueBeforeParsing" to "Please assign a league to the team first to parse PDF files.",
        "teamManagement.assignMemberToTeam" to "Add to team",
        "teamManagement.association" to "Association",
        "teamManagement.asyncJobStartFailed" to "The async job could not be started.",
        "teamManagement.autoFetchEnabled" to "Automatic data retrieval is enabled",
        "teamManagement.automaticJobs" to "Automatic jobs",
        "teamManagement.autoSaved" to "AutoSaved",
        "teamManagement.autoSaveError" to "Autosaving Failed",
        "teamManagement.availableLineupMembers" to "Available players",
        "teamManagement.basicSettings" to "Basic settings",
        "teamManagement.basicSettingsIntro" to "Review and adjust team name and league in a calmer form.",
        "teamManagement.change" to "Change",
        "teamManagement.clearFields" to "Clear fields",
        "teamManagement.codeList" to "Code list",
        "teamManagement.configurationStatus" to "Configuration status",
        "teamManagement.configureLeagueDetails" to "Association: {association}\nSeason: {season}\nLeague: {league}\nGroup ID: {groupId}\n\nDo you want to configure this league in the database? This enables automatic table data retrieval.",
        "teamManagement.configureLeagueTitle" to "Configure league?",
        "teamManagement.createAndEdit" to "Create & edit",
        "teamManagement.created" to "Created",
        "teamManagement.createNewTeam" to "Create new team",
        "teamManagement.dataFetchFailed" to "Data could not be fetched.",
        "teamManagement.delete" to "Delete",
        "teamManagement.deleteTeamConfirm" to "Do you really want to delete the club team \"{name}\"?",
        "teamManagement.deleteTeamTitle" to "Delete club team",
        "teamManagement.documentAvailable" to "Available",
        "teamManagement.documentMissing" to "Missing",
        "teamManagement.documentNotFound" to "The selected document could not be found.",
        "teamManagement.documentParsedSummary" to "{label} uploaded and parsed successfully.\n\nMatches found: {matchesFound}\nNew matches created: {created}\nMatches updated: {updated}",
        "teamManagement.documents" to "Documents",
        "teamManagement.documentsIntro" to "Upload, review and re-parse code lists and PIN lists when needed.",
        "teamManagement.documentUploaded" to "{label} \"{fileName}\" was uploaded successfully.",
        "teamManagement.edit" to "Edit",
        "teamManagement.editTeam" to "Edit team",
        "teamManagement.eligibility" to "Eligibility",
        "teamManagement.eligibilityAdultRelease" to "Approved for adults",
        "teamManagement.eligibilityAdultReleaseAndReserve" to "Approved + adult reserve",
        "teamManagement.eligibilityAdultReserve" to "Adult reserve",
        "teamManagement.eligibilityRegular" to "Regular",
        "teamManagement.enterUrlForAutoConfig" to "Enter a myTischtennis URL for automatic configuration",
        "teamManagement.error" to "Error",
        "teamManagement.errorConfiguringLeague" to "The league could not be configured.",
        "teamManagement.errorConfiguringTeam" to "The team could not be configured.",
        "teamManagement.errorDeletingTeam" to "Failed to delete the club team.",
        "teamManagement.errorLoadingPdf" to "Failed to load the PDF.",
        "teamManagement.errorLoadingStats" to "Statistics could not be loaded.",
        "teamManagement.errorParsingPdf" to "Failed to parse the PDF file",
        "teamManagement.errorParsingUrl" to "The URL could not be parsed. Please check the format.",
        "teamManagement.errorsCount" to "Errors: {count}",
        "teamManagement.errorUploadingDocument" to "Failed to upload and parse the file.",
        "teamManagement.exportLineupPdf" to "Export line-up as PDF",
        "teamManagement.fetched" to "fetched",
        "teamManagement.fetchTimedOut" to "Timed out while fetching data (async job took too long).",
        "teamManagement.fetchTimeoutShort" to "Timed out while fetching data.",
        "teamManagement.fileTooLarge" to "{label} must not exceed 10 MB.",
        "teamManagement.fileTooLargeTitle" to "File too large",
        "teamManagement.filterAll" to "All",
        "teamManagement.filterConfigured" to "Configured",
        "teamManagement.filterNeedsAttention" to "Needs review",
        "teamManagement.filterNoLeague" to "Without league",
        "teamManagement.firstHalf" to "First half",
        "teamManagement.firstHalfFull" to "First half (July - December)",
        "teamManagement.fullyConfigured" to "Fully configured",
        "teamManagement.groupId" to "Group ID",
        "teamManagement.groupName" to "Group name",
        "teamManagement.invalidFileExtension" to "{label} must have one of the following extensions: {extensions}.",
        "teamManagement.invalidFileTypeTitle" to "Invalid file type",
        "teamManagement.invalidMimeType" to "{label} has an unexpected MIME type: {type}.",
        "teamManagement.lastRun" to "Last run",
        "teamManagement.lastUpdated" to "Last updated",
        "teamManagement.latestUpload" to "Last uploaded: {date}",
        "teamManagement.league" to "League",
        "teamManagement.leagueConfiguredDetails" to "League: {league}\nSeason: {season}\nAssociation: {association}\nGroup ID: {groupId}\n\nTable data can now be retrieved automatically.",
        "teamManagement.leagueConfiguredSuccess" to "League configured successfully. Table data can now be retrieved automatically.",
        "teamManagement.leagueFieldRequired" to "Please select a league class and save.",
        "teamManagement.lineupEmpty" to "No players have been assigned to this team yet.",
        "teamManagement.lineupPdfEmpty" to "No players in the line-up – cannot create PDF.",
        "teamManagement.lineupPdfFilePrefix" to "Line-up",
        "teamManagement.lineupProposal" to "Line-up by QTTR",
        "teamManagement.lineupSaved" to "Team line-up saved.",
        "teamManagement.lineupSaveError" to "Team line-up could not be saved.",
        "teamManagement.lineupUnsavedChanges" to "There are unsaved changes in the team line-up.",
        "teamManagement.lineupValidationTooLargeGap" to "{higher} is more than 30 QTTR points ahead of {lower}. Please correct this order.",
        "teamManagement.loadingStats" to "Loading statistics...",
        "teamManagement.manualFetch" to "Fetch",
        "teamManagement.markAsInterested" to "Mark as Interested",
        "teamManagement.matchesSummary" to "Matches found: {matchesFound}\nNew matches created: {created}\nMatches updated: {updated}",
        "teamManagement.matchResults" to "Match results",
        "teamManagement.missingConfigSummary" to "Missing:",
        "teamManagement.missingItems" to "Missing: {items}",
        "teamManagement.missingLeagueForTeam" to "No league was provided for the selected team.",
        "teamManagement.moreErrors" to "... and {count} more",
        "teamManagement.myTischtennis" to "myTischtennis",
        "teamManagement.myTischtennisIntro" to "Paste a URL, review the configuration and fetch data manually when needed.",
        "teamManagement.mytischtennisLoginRequired" to "Login to myTischtennis required",
        "teamManagement.myTischtennisUrlPlaceholder" to "myTischtennis URL...",
        "teamManagement.myTischtennisUrlRequired" to "Paste and parse the MyTischtennis URL to link the team ID and league data.",
        "teamManagement.never" to "Never",
        "teamManagement.newTeam" to "New team",
        "teamManagement.noAssignment" to "No assignment",
        "teamManagement.noAutomaticUpdate" to "No automatic update yet",
        "teamManagement.noDocumentUploadYet" to "No document uploaded yet.",
        "teamManagement.noIssues" to "No open configuration issues.",
        "teamManagement.noLeague" to "No league",
        "teamManagement.noMatchesFoundDetails" to "Note: No matches detected.\nLines in document: {lines}",
        "teamManagement.noMatchesFoundTitle" to "No matches found",
        "teamManagement.noMatchingTeams" to "No teams match the current search or filter.",
        "teamManagement.noMembersInPool" to "No matching members found.",
        "teamManagement.noPlannedLeague" to "No scheduled league",
        "teamManagement.noPlayerStats" to "No appearances recorded.",
        "teamManagement.notConfigured" to "Not configured",
        "teamManagement.notCreated" to "Not created",
        "teamManagement.noTeamsYet" to "No teams yet. Create your first team.",
        "teamManagement.openDocument" to "Open",
        "teamManagement.openInWorkspace" to "Open to edit",
        "teamManagement.parseDocument" to "Parse again",
        "teamManagement.parseUrlAction" to "Check URL",
        "teamManagement.partiallyConfigured" to "Partially configured",
        "teamManagement.pdfFileNotFound" to "The PDF file could not be found.",
        "teamManagement.pinList" to "PIN list",
        "teamManagement.plannedLeague" to "Planned league",
        "teamManagement.plannedLeagueHint" to "Optional. Independent of the registered league (MyTischtennis).",
        "teamManagement.plannedLeaguePlaceholder" to "e.g. district league, after next registration …",
        "teamManagement.planningSubtitle" to "Distribute members to scheduled teams, set order, and see open assignments.",
        "teamManagement.planningTitle" to "Team planning",
        "teamManagement.player" to "Player",
        "teamManagement.playersPoolSubtitle" to "All active members with game interest",
        "teamManagement.playerStats" to "Appearances",
        "teamManagement.playerStatsIntro" to "Quick overview of this team's appearances in the current season.",
        "teamManagement.playersWantToPlay" to "We want to play.",
        "teamManagement.qttr" to "(Q)TTR rating",
        "teamManagement.ratingUpdates" to "Rating updates",
        "teamManagement.refreshStats" to "Refresh",
        "teamManagement.reuploadFile" to "Please upload the file again and try once more.",
        "teamManagement.searchMembers" to "Search member",
        "teamManagement.searchTeams" to "Search team",
        "teamManagement.season" to "Season",
        "teamManagement.seasonFull" to "Full season (from 1 July)",
        "teamManagement.seasonUnknown" to "unknown",
        "teamManagement.secondHalf" to "Second half",
        "teamManagement.secondHalfFull" to "Second half (from 1 January)",
        "teamManagement.selectedLineup" to "Selected players",
        "teamManagement.selectMember" to "Select member",
        "teamManagement.selectTeam" to "Select Team",
        "teamManagement.selectTeamFirst" to "Please select a team first",
        "teamManagement.selectTeamForConfiguration" to "To activate the myTischtennis configuration, you must first select a team from the list.",
        "teamManagement.selectTeamTitle" to "Select team",
        "teamManagement.showCodeList" to "Show code list",
        "teamManagement.showPinList" to "Show PIN list",
        "teamManagement.sortFirstLast" to "Sorting: First name Last name",
        "teamManagement.sortLastFirst" to "Sorting: Last name First name",
        "teamManagement.status" to "status",
        "teamManagement.subtitle" to "Select teams, review configuration and maintain league data in one place.",
        "teamManagement.successful" to "Successful",
        "teamManagement.tableUpdateLabel" to "Table update:",
        "teamManagement.tableUrlDetected" to "Table URL detected",
        "teamManagement.team" to "Team",
        "teamManagement.teamAgeGroup" to "Age group",
        "teamManagement.teamConfiguredDetails" to "League: {league}\nSeason: {season}\nAutomatic data retrieval is now active.",
        "teamManagement.teamConfiguredSuccess" to "Team configured successfully. Automatic data retrieval is now active.",
        "teamManagement.teamDataFetched" to "Team data fetched successfully.",
        "teamManagement.teamDataFetchedDetails" to "Team: {team}\nFetched records: {count}",
        "teamManagement.teamGender" to "Gender",
        "teamManagement.teamGenderFemale" to "Female",
        "teamManagement.teamGenderOpen" to "Open",
        "teamManagement.teamHasNoLeague" to "This team is not assigned to a league.",
        "teamManagement.teamId" to "Team ID",
        "teamManagement.teamName" to "Team name",
        "teamManagement.teamNamePlaceholder" to "e.g. Men 1, Women 2",
        "teamManagement.teams" to "Teams",
        "teamManagement.title" to "Team Management",
        "teamManagement.unassignedMembers" to "not yet assigned",
        "teamManagement.unassignedMembersSubtitle" to "Members Without Team Assignment",
        "teamManagement.unknown" to "Unknown",
        "teamManagement.unknownTeam" to "Unknown team",
        "teamManagement.updated" to "updated",
        "teamManagement.uploadNewVersion" to "Upload new version",
        "tournament.apply" to "Apply Changes",
        "tournaments.action" to "Action",
        "tournaments.add" to "Add",
        "tournaments.addClass" to "Add Class",
        "tournaments.addClubMember" to "Add Club Member",
        "tournaments.addExternalParticipant" to "Add External Participant",
        "tournaments.addPairing" to "Add pairing",
        "tournaments.addPoolRule" to "Add pool rule",
        "tournaments.address" to "Address",
        "tournaments.adjustTournamentSearch" to "Adjust the search term or create a new tournament.",
        "tournaments.advancersPerGroup" to "Promoters per group",
        "tournaments.allClasses" to "All Classes",
        "tournaments.allDataComplete" to "All participant data is complete.",
        "tournaments.allDataCompleteTop3" to "All data for the top 3 placed players is complete.",
        "tournaments.apply" to "Apply Changes",
        "tournaments.assignmentReviewTitle" to "{count} participants need a choice:",
        "tournaments.atLeastOnePoolRule" to "Please add at least one pool rule for {label} (e.g. places 1,2).",
        "tournaments.autoAssignableParticipantsHint" to "{count} of them can be assigned automatically.",
        "tournaments.autoAssignEligible" to "Assign automatically",
        "tournaments.autoAssignEligibleDone" to "{count} participants were assigned automatically.",
        "tournaments.autoAssignEligibleNone" to "There are currently no participants with a single automatic class assignment.",
        "tournaments.autoAssignEligiblePartial" to "{successCount} participants were assigned automatically, {errorCount} failed.",
        "tournaments.birthdate" to "Date of birth",
        "tournaments.cancel" to "Cancel",
        "tournaments.class" to "Class",
        "tournaments.classes" to "Classes",
        "tournaments.className" to "Class Name",
        "tournaments.cleanupOrphanedMatches" to "Clean up orphaned games",
        "tournaments.club" to "Association",
        "tournaments.clubMember" to "(Club member)",
        "tournaments.conflictSuggestionLabel" to "Suggestions:",
        "tournaments.correctMatch" to "Correct",
        "tournaments.create" to "Create",
        "tournaments.createFinalFromIntermediate" to "Create final round from intermediate round",
        "tournaments.createFinalFromPreliminary" to "Create final round from preliminary round",
        "tournaments.createGroupMatches" to "Create group matches",
        "tournaments.createGroups" to "Who Can Create Groups",
        "tournaments.createIntermediateFromPreliminary" to "Create intermediate round from preliminary round",
        "tournaments.createMatches" to "Set matches",
        "tournaments.createSuggestedPairings" to "Create pairings",
        "tournaments.currentClass" to "Active Class",
        "tournaments.dataNotRecorded" to "Not yet recorded",
        "tournaments.date" to "Date",
        "tournaments.delete" to "Delete",
        "tournaments.deleteClassConfirm" to "Do you really want to delete class \"{name}\"?",
        "tournaments.deleteClassParticipantsDetached" to "All participants will be detached from this class.",
        "tournaments.deleteClassTitle" to "Delete class",
        "tournaments.deleteExistingPairingsConfirm" to "Existing pairings will be deleted. Continue?",
        "tournaments.deleteKORound" to "Knockout",
        "tournaments.diff" to "Diff",
        "tournaments.distributeTables" to "Distribute free tables",
        "tournaments.distributeTablesResult" to "Table distribution",
        "tournaments.doubles" to "Double",
        "tournaments.doublesPairingHint" to "{count} participants in this doubles class still need a partner.",
        "tournaments.doublesTournament" to "Doubles tournament",
        "tournaments.doublesTournamentHint" to "Switches all existing classes to doubles and creates new classes as doubles by default.",
        "tournaments.edit" to "Edit",
        "tournaments.eligibleClassesHint" to "Suitable for: {classes}",
        "tournaments.email" to "Email address",
        "tournaments.encounter" to "Meeting",
        "tournaments.enterClassName" to "Please enter a class name.",
        "tournaments.enterExternalParticipantName" to "Please enter at least first name and last name.",
        "tournaments.enterMiniLocation" to "Please enter a location.",
        "tournaments.errorCreatingGroups" to "Error creating groups.",
        "tournaments.errorCreatingTournament" to "Error creating tournament.",
        "tournaments.errorDistributingTables" to "Error distributing tables.",
        "tournaments.errorGeneratingPdf" to "Error generating the PDF.",
        "tournaments.errorMergingClasses" to "Failed to merge classes.",
        "tournaments.errorMoreSeededThanUnseeded" to "There are more betted than unseeded players. Cannot create random pairings.",
        "tournaments.errorResettingKORound" to "Error resetting knockout round.",
        "tournaments.errorUpdatingTournament" to "Error updating tournament.",
        "tournaments.exportPDF" to "Export PDF",
        "tournaments.external" to "External",
        "tournaments.finalPlacements" to "Final placements",
        "tournaments.finalRound" to "Final round",
        "tournaments.finishMatch" to "Finish",
        "tournaments.firstName" to "First name",
        "tournaments.forForwarding" to "for forwarding",
        "tournaments.gaveUp" to "Placed",
        "tournaments.gaveUpHint" to "Player has surrendered – all games count for the opponent (11:0) or 0:0 for both.",
        "tournaments.genderAll" to "All",
        "tournaments.genderMixed" to "Mixed",
        "tournaments.generatingPDF" to "Generating PDF...",
        "tournaments.group" to "Group",
        "tournaments.groupMatches" to "Inter Group Matches",
        "tournaments.groupNumber" to "Group",
        "tournaments.groupPlacements" to "Group Placements",
        "tournaments.groupsLabel" to "Groups",
        "tournaments.groupsOverview" to "Groups overview",
        "tournaments.groupsPerClass" to "Pool Standings",
        "tournaments.groupsPerClassHint" to "For each class, enter the number of groups (0 = no groups for this class):",
        "tournaments.index" to "Index",
        "tournaments.intermediateRound" to "Intermediate round (round 2)",
        "tournaments.internalStatsAbsoluteRank" to "Total score ranking",
        "tournaments.internalStatsAgeFilter" to "Age group & gender (singles)",
        "tournaments.internalStatsAgeFilterAll" to "All age classes",
        "tournaments.internalStatsAgeFilterNone" to "No age class selected",
        "tournaments.internalStatsAgeNoClass" to "No class assigned",
        "tournaments.internalStatsAgeSelectAll" to "All",
        "tournaments.internalStatsAgeSelectNone" to "None",
        "tournaments.internalStatsAverageRank" to "Average per tournament",
        "tournaments.internalStatsAvgPoints" to "Avg.",
        "tournaments.internalStatsEmpty" to "No data for the selected period.",
        "tournaments.internalStatsExportPdf" to "Export as PDF",
        "tournaments.internalStatsFilterAgeBands" to "Age classes",
        "tournaments.internalStatsFilterGenderColumn" to "Gender",
        "tournaments.internalStatsGenderScopeAll" to "All",
        "tournaments.internalStatsGenderScopeGirls" to "Girls only",
        "tournaments.internalStatsLast12Months" to "Last 12 months",
        "tournaments.internalStatsLast3Months" to "Last 3 months",
        "tournaments.internalStatsLast6Months" to "Last 6 months",
        "tournaments.internalStatsOpenButton" to "Tournament statistics (singles)",
        "tournaments.internalStatsPeriod" to "Period",
        "tournaments.internalStatsPoints" to "Total",
        "tournaments.internalStatsPointsExplain" to "Scoring: In each group, placement is expressed as a percentage (with N ranked players: 1st = 100%, last = 0%, linear in between; tied ranks share the same value). N counts everyone ranked in that group (including guests). With only one player: 100%. Players who reach the knockout get the highest group score in that class plus 1, then one extra point per knockout match won. Club members in singles classes only.",
        "tournaments.internalStatsTitle" to "Internal tournaments statistics (singles)",
        "tournaments.internalStatsTournamentsInPeriod" to "{count} tournament(s) in this period (excluding mini championships).",
        "tournaments.internalStatsTtAdult" to "Adults",
        "tournaments.internalTournaments" to "Internal tournaments",
        "tournaments.knockoutLabel" to "KO",
        "tournaments.koRound" to "knock-out round",
        "tournaments.lastName" to "Surname",
        "tournaments.livePosition" to "Live seat",
        "tournaments.loadFromTraining" to "Load from training day",
        "tournaments.markMatchLive" to "Mark as live",
        "tournaments.maxGroupSize" to "Maximum Party Size",
        "tournaments.mergeClasses" to "Merge classes (common group phase)",
        "tournaments.mergeDistribute" to "Distribute players from A to all groups (from B)",
        "tournaments.mergeSingleGroup" to "All players from A in a group (at B)",
        "tournaments.minBirthYear" to "Born in year or later",
        "tournaments.miniChampionshipLocation" to "Location",
        "tournaments.miniChampionships" to "Mini Championships",
        "tournaments.miniChampionshipYear" to "Year",
        "tournaments.miniChampionshipYearHint" to "12 = this year 12 or 13 years, 10 = 10 or 11, 8 = 9 and younger",
        "tournaments.minimumParticipantsForPairings" to "At least 2 participants are required for pairings.",
        "tournaments.missingDataPDF" to "Missing data as PDF",
        "tournaments.missingDataPDFSubtitle" to "Please collect the missing data (marked with ____) from participants and note them here.",
        "tournaments.missingDataPDFSubtitleTop3" to "Please collect missing data of the top 3 (marked with ____) and note them here.",
        "tournaments.missingDataPDFTitle" to "Missing participant data – Mini championship",
        "tournaments.missingDataPDFTitleTop3" to "Missing data – Top 3 Mini championship",
        "tournaments.name" to "name",
        "tournaments.newMiniChampionship" to "New Mini Championship",
        "tournaments.setShort" to "Set",
        "tournaments.newTournament" to "Add New Tournament",
        "tournaments.noAssignableMatches" to "No matches available where both players are free.",
        "tournaments.noClassesYet" to "No classes available yet. Add a new class.",
        "tournaments.noEligibleClass" to "No suitable class found.",
        "tournaments.noFreeTables" to "No free tables available.",
        "tournaments.noMatchingTournamentsTitle" to "No matching tournaments",
        "tournaments.noOrphanedMatchesFound" to "No orphaned matches found.",
        "tournaments.noPlacementsYet" to "No placements available yet.",
        "tournaments.noPlayerDataAvailable" to "No player data available",
        "tournaments.noPoolRulesYet12" to "No rules yet. Example: places 1 and 2 -> top round-2 groups.",
        "tournaments.noPoolRulesYetFinal" to "No rules yet. Example: places 1 and 2 -> final round.",
        "tournaments.noTop3Yet" to "No top 3 placements have been determined yet.",
        "tournaments.noTournamentDate" to "No tournament date available.",
        "tournaments.noTournamentsCreatedYet" to "No tournaments have been created yet.",
        "tournaments.noTrainingOnDate" to "No training session found for {date}.",
        "tournaments.noTrainingParticipants" to "No participants were found in the training session for this date.",
        "tournaments.noValidTrainingParticipants" to "No valid participants were found in the training session for this date.",
        "tournaments.numberOfGroups" to "Nr of groups",
        "tournaments.numberOfTables" to "Number of tables",
        "tournaments.openTournaments" to "Open Tournaments",
        "tournaments.optional" to "optional",
        "tournaments.orphanedMatchesRemoved" to "{count} orphaned matches removed.",
        "tournaments.outOfCompetition" to "Player from A out of competition",
        "tournaments.page" to "Page",
        "tournaments.pairingAlreadyExists" to "This pairing already exists.",
        "tournaments.pairings" to "Double Pairings",
        "tournaments.pairingsCreatedWithErrors" to "{successCount} pairings created, {errorCount} errors.",
        "tournaments.participantConflicts" to "Conflicts",
        "tournaments.participantNotFound" to "Participant not found.",
        "tournaments.participants" to "Participants",
        "tournaments.participantsNeedClassAssignment" to "{count} participants are not assigned to a class yet. These should be assigned first.",
        "tournaments.phone" to "Phone",
        "tournaments.placementsPendingFinals" to "Final placings will appear once multiple groups or a final round exist.",
        "tournaments.placementsPendingGroups" to "Group placings will appear once group matches exist.",
        "tournaments.placementsPendingNoGroups" to "Placings will appear here once group matches or a final round exist.",
        "tournaments.placementsPendingSelectedClass" to "There are no placings for the currently selected class yet.",
        "tournaments.placementsPendingTitle" to "Placings not available yet",
        "tournaments.placesFromEachGroup" to "Places from each group (e.g. 1,2)",
        "tournaments.player" to "Skaters",
        "tournaments.playerOne" to "Player 1",
        "tournaments.playerTwo" to "Player 2",
        "tournaments.playInGroups" to "Playing in groups",
        "tournaments.playThirdPlace" to "Play third place match",
        "tournaments.pleaseEnterDate" to "Please enter a date",
        "tournaments.pleaseSelectParticipant" to "Please select a student.",
        "tournaments.points" to "Points",
        "tournaments.pointsRatio" to "Game Points",
        "tournaments.poolRuleLabel" to "Rule {number}",
        "tournaments.poolRulePlacesHelp" to "Example: 1 or 1,2",
        "tournaments.poolRulePlacesLabel" to "Which places advance?",
        "tournaments.poolRulePreview" to "From each group, places {places} advance to {target}.",
        "tournaments.poolRuleQuickExamples" to "Quick examples:",
        "tournaments.poolRuleSummary" to "Places {places} go to {target}",
        "tournaments.poolRuleTargetGroupsDetailed" to "{count} target groups",
        "tournaments.poolRuleTargetKnockout" to "the knockout bracket",
        "tournaments.poolRuleTargetLabel" to "Where do these places go?",
        "tournaments.position" to "The square",
        "tournaments.problemConfigDescription" to "Check date, name and winning sets.",
        "tournaments.problemConfigTitle" to "Configuration incomplete",
        "tournaments.problemConflictsDescription" to "Review invalid classes, missing data or unclear assignments.",
        "tournaments.problemConflictsTitle" to "{count} participants with conflicts",
        "tournaments.problemDoublesAutoDescription" to "The open doubles class can be paired automatically right away.",
        "tournaments.problemDoublesDescription" to "One or more doubles classes still need partner assignments.",
        "tournaments.problemDoublesTitle" to "{count} open doubles partners",
        "tournaments.problemGroupMatchesDescription" to "The groups are ready, but the matches have not been created yet.",
        "tournaments.problemGroupMatchesTitle" to "Group matches not generated yet",
        "tournaments.problemGroupsMissingDescription" to "The group tournament needs groups to be created first.",
        "tournaments.problemGroupsMissingTitle" to "Groups not created yet",
        "tournaments.problemKnockoutReadyDescription" to "The group stage is complete and the final round can be generated now.",
        "tournaments.problemKnockoutReadyTitle" to "Knockout can be started",
        "tournaments.problemUnassignedAutoDescription" to "{count} of them can be assigned automatically right away.",
        "tournaments.problemUnassignedDescription" to "These participants still need a manual class assignment.",
        "tournaments.problemUnassignedTitle" to "{count} participants without class",
        "tournaments.promotionRule12" to "Advance: preliminary round → intermediate round (1→2)",
        "tournaments.promotionRuleDescription12" to "Define which places from each preliminary group advance to the intermediate round.",
        "tournaments.promotionRuleDescriptionFinalGroups" to "Define which places from the previous round advance to the final-round groups.",
        "tournaments.promotionRuleDescriptionFinalKnockout" to "Define which places from the previous round advance to the knockout bracket.",
        "tournaments.promotionRuleFinal" to "Advance: round {from} → round {to}",
        "tournaments.randomizeGroups" to "Randomize",
        "tournaments.randomPairings" to "Random Double Pairs",
        "tournaments.randomPairingsCreated" to "Random pairings have been created.",
        "tournaments.resetGroupMatches" to "Inter Group Matches",
        "tournaments.resetGroups" to "Reset Groups",
        "tournaments.result" to "Result",
        "tournaments.resultsRanking" to "Ranking",
        "tournaments.round" to "Round",
        "tournaments.roundGroupCount" to "Number of groups",
        "tournaments.roundMode" to "Mode",
        "tournaments.ruleStatusBlocked" to "Blocked",
        "tournaments.ruleStatusOk" to "Looks good",
        "tournaments.ruleStatusOkDescription" to "This rule matches the current target round and can be used as-is.",
        "tournaments.ruleStatusReview" to "Review",
        "tournaments.save" to "Save",
        "tournaments.saveRounds" to "Save rounds",
        "tournaments.seeded" to "Seed",
        "tournaments.selectClass" to "Select Class",
        "tournaments.selectClassPrompt" to "Please select a class.",
        "tournaments.selectedTournament" to "Active tournament",
        "tournaments.selectParticipant" to "Choose user",
        "tournaments.selectPlayer" to "Select players",
        "tournaments.selectTournamentFirst" to "Please select a tournament first.",
        "tournaments.selectTwoDifferentPlayers" to "Please select two different players.",
        "tournaments.setDiff" to "Sentence Difference",
        "tournaments.sets" to "phrases",
        "tournaments.showClass" to "View Class",
        "tournaments.showingTournamentCount" to "{visible} of {total}",
        "tournaments.showPlayerDetails" to "View Player Details",
        "tournaments.singles" to "Single",
        "tournaments.sourceClass" to "Source",
        "tournaments.stageActionMissingRulesHint" to "Create at least one advancement rule first before moving players into the next round.",
        "tournaments.stageActionRun" to "Run now",
        "tournaments.stageActionsDescription" to "These steps move qualified players into the next round.",
        "tournaments.stageActionsTitle" to "Next actions",
        "tournaments.stageConfigBadServerResponse" to "Invalid server response.",
        "tournaments.stageConfigCurrentSetup" to "Current structure",
        "tournaments.stageConfigIntro" to "The intermediate round is optional. If you activate it, a final round follows afterwards. A knockout final round is created as a single bracket.",
        "tournaments.stageConfigLoadError" to "Error loading round configuration.",
        "tournaments.stageConfigLoading" to "Loading round configuration…",
        "tournaments.stageConfigMissingIds" to "Cannot save: club or tournament ID is missing.",
        "tournaments.stageConfigTitle" to "Intermediate & Final Round",
        "tournaments.stageCreated" to "Round {round} was created.",
        "tournaments.stageFinalDescription" to "Decide whether the final round should be played as groups or directly as a knockout bracket.",
        "tournaments.stageFlowBreakdownActionAddRule" to "Add rule",
        "tournaments.stageFlowBreakdownActionOpen" to "Open rule",
        "tournaments.stageFlowBreakdownActionReview" to "Review issues",
        "tournaments.stageFlowBreakdownErrors" to "{count} blocking error(s)",
        "tournaments.stageFlowBreakdownMissingRule" to "No complete rule has been added yet",
        "tournaments.stageFlowBreakdownOk" to "Configuration looks good",
        "tournaments.stageFlowBreakdownWarnings" to "{count} warning(s) open",
        "tournaments.stageFlowDirectFinal" to "Preliminary round -> final round ({final})",
        "tournaments.stageFlowHealthBlocked" to "Round logic is contradictory",
        "tournaments.stageFlowHealthBlockedDescription" to "At least one rule currently does not match the target round or contains blocking configuration errors.",
        "tournaments.stageFlowHealthIncomplete" to "Round logic is incomplete",
        "tournaments.stageFlowHealthMissingRules" to "At least one transition does not yet have a complete advancement rule.",
        "tournaments.stageFlowHealthOk" to "Round logic looks good",
        "tournaments.stageFlowHealthOkDescription" to "The transitions between rounds are fully configured and currently coherent.",
        "tournaments.stageFlowHealthReviewDescription" to "The round logic is basically usable, but should still be reviewed because of open hints.",
        "tournaments.stageFlowPreviewMissing" to "No rule has been configured yet.",
        "tournaments.stageFlowPreviewRule" to "Places {places} go to {target}",
        "tournaments.stageFlowPreviewRuleWithCount" to "{base} (expected qualifiers: {count})",
        "tournaments.stageFlowQualifiedPreviewEntry" to "G{group} · Place {position} · {name}",
        "tournaments.stageFlowQualifiedPreviewTitle" to "Currently qualified",
        "tournaments.stageFlowReadinessIncompleteGroups" to "{count} group(s) are not fully decided yet",
        "tournaments.stageFlowReadinessNoGroups" to "No matching groups exist yet",
        "tournaments.stageFlowReadinessReady" to "Transition is ready to start",
        "tournaments.stageFlowRecommendationError" to "Review the first blocking error in the round logic first.",
        "tournaments.stageFlowRecommendationFixes" to "The typical configuration problems can be cleaned up automatically right away.",
        "tournaments.stageFlowRecommendationMissingRule" to "A complete rule is still missing for {label}. That is the best place to continue.",
        "tournaments.stageFlowRecommendationSave" to "The round logic is coherent. You can save the configuration now.",
        "tournaments.stageFlowRecommendationTitle" to "Recommended next step",
        "tournaments.stageFlowRecommendationWarnings" to "There are still warnings that should be reviewed before saving.",
        "tournaments.stageFlowWithIntermediate" to "Preliminary round -> intermediate round ({stage2}) -> final round ({final})",
        "tournaments.stageParticipantsTransferred" to "Qualified players were moved into {round}.",
        "tournaments.stageStep1" to "Step 1",
        "tournaments.stageStep1Description" to "First decide whether there should be an additional round after the preliminary round.",
        "tournaments.stageStep1Title" to "Decide on an intermediate round",
        "tournaments.stageStep2" to "Step 2",
        "tournaments.stageStep2Description" to "Define what the intermediate round should look like and how many groups it needs.",
        "tournaments.stageStep3" to "Step 3",
        "tournaments.stageValidationApplyAllFixes" to "Apply {count} quick fix(es)",
        "tournaments.stageValidationApplyFix" to "Apply",
        "tournaments.stageValidationApplyTargetGroupFix" to "Set to {count} target groups",
        "tournaments.stageValidationApplyTargetTypeFix" to "Switch to {target}",
        "tournaments.stageValidationDescription" to "Fix these points before saving or moving players into the next round.",
        "tournaments.stageValidationGroupCountRequired" to "Please set at least one valid group count.",
        "tournaments.stageValidationKnockoutByesLikely" to "With an expected {count} qualifiers, the knockout bracket will very likely include byes.",
        "tournaments.stageValidationKnockoutNeedsTwoPlayers" to "A knockout bracket needs at least 2 qualified players.",
        "tournaments.stageValidationKnockoutTargetOnly" to "For a knockout final round, only the knockout bracket is allowed as the target here.",
        "tournaments.stageValidationNoRules" to "There is no advancement rule yet for {stage}.",
        "tournaments.stageValidationNotEnoughQualifiersForGroups" to "With only {count} qualifiers for {groups} target groups, empty groups would be created.",
        "tournaments.stageValidationRulePlacesDuplicate" to "A single rule must not contain the same place more than once.",
        "tournaments.stageValidationRulePlacesGap" to "The place definition has gaps. Usually a continuous order such as 1,2 or 1,2,3 is intended.",
        "tournaments.stageValidationRulePlacesInvalid" to "The place definition is invalid. Only positive whole numbers such as 1 or 1,2 are allowed.",
        "tournaments.stageValidationRulePlacesRequired" to "Enter at least one place that should advance.",
        "tournaments.stageValidationRulesOverlap" to "Place {place} is assigned twice, in rule {first} and rule {second}.",
        "tournaments.stageValidationSaveBlocked" to "Please fix the highlighted configuration errors first.",
        "tournaments.stageValidationSuggestion" to "Suggestion: {value}",
        "tournaments.stageValidationTargetGroupCountMismatch" to "The number of target groups must match the target round. Expected: {expected}.",
        "tournaments.stageValidationTargetGroupsRequired" to "Please enter a valid number of target groups.",
        "tournaments.stageValidationTargetTypeMismatch" to "The target of this rule must match the target round. Expected: {target}.",
        "tournaments.stageValidationThinGroupsLikely" to "With {count} qualifiers across {groups} target groups, the groups will likely be very small.",
        "tournaments.stageValidationTitle" to "Review configuration",
        "tournaments.startKORound" to "Start knockout round",
        "tournaments.statusActionAssign" to "Assign",
        "tournaments.statusActionCreate" to "Create",
        "tournaments.statusActionGenerate" to "Generate",
        "tournaments.statusActionPair" to "Pair",
        "tournaments.statusActionReview" to "Review",
        "tournaments.statusActionStart" to "Start",
        "tournaments.statusConfigIncomplete" to "Configuration incomplete",
        "tournaments.statusConfigReady" to "Configuration ready",
        "tournaments.statusFinished" to "Finished",
        "tournaments.statusGroupsMissing" to "Groups not created yet",
        "tournaments.statusGroupsReady" to "Groups ready",
        "tournaments.statusGroupsRunning" to "Group stage in progress",
        "tournaments.statusKnockoutReady" to "Knockout ready to start",
        "tournaments.statusKnockoutRunning" to "Knockout in progress",
        "tournaments.statusLive" to "live",
        "tournaments.statusOpen" to "Open",
        "tournaments.statusParticipantsConflicts" to "{count} participants with conflicts",
        "tournaments.statusParticipantsReady" to "{count} participants conflict-free",
        "tournaments.statusParticipantsUnassigned" to "{count} without class",
        "tournaments.statusTournamentCompleted" to "Tournament completed",
        "tournaments.statusUnpairedDoubles" to "{count} doubles without partner",
        "tournaments.strategy" to "Strategy",
        "tournaments.tabConfig" to "Configuration",
        "tournaments.tabGroups" to "Pool Standings",
        "tournaments.table" to "Table",
        "tournaments.tablesDistributed" to "Tables have been distributed.",
        "tournaments.tabParticipants" to "Participants",
        "tournaments.tabPlacements" to "Placings",
        "tournaments.tabResults" to "Results",
        "tournaments.target" to "Target",
        "tournaments.targetClass" to "Target",
        "tournaments.targetGroupCount" to "Target number of groups",
        "tournaments.targetGroupsLabel" to "{count} groups",
        "tournaments.tournamentClassGenderFemale" to "Female",
        "tournaments.tournamentClassGenderOpen" to "Open (all)",
        "tournaments.tournamentName" to "Tournament name",
        "tournaments.tournamentParticipations" to "Official Tournaments & Entries",
        "tournaments.transferQualifiedToFinalFromIntermediate" to "Move qualified players into the final round",
        "tournaments.transferQualifiedToFinalFromIntermediateDesc" to "Uses the intermediate-round to final-round rules and moves the qualified players across.",
        "tournaments.transferQualifiedToFinalFromPreliminary" to "Move qualified players straight into the final round",
        "tournaments.transferQualifiedToFinalFromPreliminaryDesc" to "Uses the preliminary-round to final-round rules and creates the qualified players directly there.",
        "tournaments.transferQualifiedToIntermediate" to "Move qualified players into the intermediate round",
        "tournaments.transferQualifiedToIntermediateDesc" to "Uses the preliminary-round to intermediate-round rules and moves the qualified players across.",
        "tournaments.unknown" to "Unknown",
        "tournaments.unknownDate" to "Unknown Date",
        "tournaments.unmarkMatchLive" to "Remove live marker",
        "tournaments.unpairedDoubles" to "Doubles without partner",
        "tournaments.useIntermediateStage" to "Use intermediate round",
        "tournaments.warningBirthDateMissing" to "Birth date is missing for this class",
        "tournaments.warningClassMissing" to "Class not found",
        "tournaments.warningGenderMismatch" to "Gender does not match class",
        "tournaments.warningGenderMissing" to "Gender is missing for this class",
        "tournaments.warningMissingPairing" to "Doubles partner missing",
        "tournaments.warningTooOldForClass" to "Too old for this class",
        "tournaments.warningTooYoungForClass" to "Too young for this class",
        "tournaments.winningSets" to "Winning rates",
        "tournaments.withoutClass" to "Without Class",
        "tournaments.workspaceProblemsTitle" to "{count} open issues",
        "trainingDetails.birthdate" to "Date of birth",
        "trainingDetails.birthYear" to "Year of birth",
        "trainingDetails.last12Months" to "Last 12 months",
        "trainingDetails.last3Months" to "Last 3 months",
        "trainingDetails.maxBirthYear" to "Born ≤ year",
        "trainingDetails.noTrainings" to "No training attendance available",
        "trainingDetails.title" to "Training Details",
        "trainingDetails.total" to "Total",
        "trainingDetails.trainingParticipations" to "Training participations (sorted in descending order)",
        "trainingGroupsTab.addMember" to "Add Member...",
        "trainingGroupsTab.cancel" to "Cancel",
        "trainingGroupsTab.create" to "Create",
        "trainingGroupsTab.delete" to "Delete",
        "trainingGroupsTab.edit" to "Edit",
        "trainingGroupsTab.editGroup" to "Edit Group",
        "trainingGroupsTab.groupName" to "Group Name",
        "trainingGroupsTab.groups" to "Pool Standings",
        "trainingGroupsTab.members" to "Members",
        "trainingGroupsTab.newGroup" to "+ New Group",
        "trainingGroupsTab.noMembersAvailable" to "No affiliate partners available",
        "trainingGroupsTab.remove" to "Remove",
        "trainingStats.actions" to "Actions",
        "trainingStats.activeMembers" to "Active members",
        "trainingStats.allTrainingDays" to "All training days",
        "trainingStats.attendingMembers" to "Attending members",
        "trainingStats.averageParticipationCurrentMonth" to "Average participation (current month)",
        "trainingStats.averageParticipationHalfYear" to "Average participation (half-year)",
        "trainingStats.averageParticipationLastMonth" to "Average participation (last month)",
        "trainingStats.averageParticipationQuarter" to "Average participation (quarter)",
        "trainingStats.averageParticipationYear" to "Average participation (year)",
        "trainingStats.birthdate" to "Birthdate",
        "trainingStats.date" to "Date",
        "trainingStats.lastTraining" to "Last training",
        "trainingStats.memberParticipations" to "Member participations",
        "trainingStats.name" to "name",
        "trainingStats.noParticipants" to "No participants",
        "trainingStats.panelAgeGroups" to "Attendance by age class",
        "trainingStats.panelBestDay" to "Busiest training day",
        "trainingStats.panelGroupPerformance" to "Progress by group",
        "trainingStats.panelMemberStructure" to "Member structure",
        "trainingStats.panelMonthlyTrend" to "Monthly trend",
        "trainingStats.panelSummary" to "Key figures (filtered)",
        "trainingStats.panelWeekdayStats" to "Training days by weekday",
        "trainingStats.participants" to "Participants",
        "trainingStats.participations12Months" to "Participations (12 months)",
        "trainingStats.participations3Months" to "Participations (3 months)",
        "trainingStats.participationsTotal" to "Participations (total)",
        "trainingStats.qttr" to "QTTR",
        "trainingStats.showDetails" to "Show details",
        "trainingStats.title" to "Training statistics",
        "trainingStats.trainingDayFilter" to "Training day",
        "trainingStats.trainingDays" to "Training days (last 12 months)",
        "trainingStats.ttr" to "TTR",
        "trainingStats.weekday" to "Weekday",
        "trainingTimesTab.addTime" to "Add time",
        "trainingTimesTab.cancel" to "Cancel",
        "trainingTimesTab.create" to "Create",
        "trainingTimesTab.delete" to "Delete",
        "trainingTimesTab.edit" to "Edit",
        "trainingTimesTab.editTime" to "Edit Training Time",
        "trainingTimesTab.excludeFromQuickDiaryCreate" to "Exclude from quick creation (diary)",
        "trainingTimesTab.excludeFromQuickDiarySaveError" to "The setting could not be saved.",
        "trainingTimesTab.friday" to "Friday",
        "trainingTimesTab.from" to "From:",
        "trainingTimesTab.loading" to "Loading workout times...",
        "trainingTimesTab.monday" to "Monday",
        "trainingTimesTab.noTimes" to "No training times defined",
        "trainingTimesTab.saturday" to "Saturday",
        "trainingTimesTab.save" to "Save",
        "trainingTimesTab.saveError" to "Error saving workout time",
        "trainingTimesTab.sunday" to "Sunday",
        "trainingTimesTab.thursday" to "Thursday",
        "trainingTimesTab.to" to "To:",
        "trainingTimesTab.tuesday" to "Tuesday",
        "trainingTimesTab.wednesday" to "Wednesday",
        "trainingTimesTab.weekday" to "Weekdays:",
        "unknown" to "Unknown",
    ) }

    private val en_GB: Map<String, String> by lazy { mapOf(
        "accident.accident" to "Accident",
        "accident.accidentDescription" to "Description of the accident...",
        "accident.close" to "Close",
        "accident.member" to "Member",
        "accident.pleaseSelect" to "Please select",
        "accident.reportAccident" to "Report accidents",
        "accident.reportedAccidents" to "Reported Accidents",
        "accident.submit" to "Submit",
        "activityStats.activityStatistics" to "Exercise statistics",
        "activityStats.last3Participations" to "Last 3 Entries",
        "activityStats.noParticipations" to "No entries available",
        "activityStats.noStatistics" to "No statistics available",
        "activityStats.title" to "Exercise Stats",
        "app.name" to "Training Diary",
        "app.title" to "Training Diary",
        "auth.accountActivated" to "Account activated! You can now log in.",
        "auth.activate" to "Activate",
        "auth.activateAccount" to "Activate account",
        "auth.activationFailed" to "Activation failed. Please check the link or try again.",
        "auth.confirmPassword" to "Confirm password",
        "auth.email" to "Email",
        "auth.forgotPassword" to "Forgot password?",
        "auth.forgotPasswordDescription" to "Enter your email address. You will receive a link to reset your password.",
        "auth.hasAccount" to "Already have an account?",
        "auth.login" to "Login",
        "auth.loginFailed" to "Login failed. Please check your credentials and try again.",
        "auth.loginSuccess" to "Successfully logged in",
        "auth.logout" to "Logout",
        "auth.logoutSuccess" to "Successfully logged out",
        "auth.newPassword" to "New password",
        "auth.noAccount" to "Don't have an account?",
        "auth.password" to "Password",
        "auth.passwordResetSuccess" to "Your password has been changed successfully. You can now log in with your new password.",
        "auth.passwordsDoNotMatch" to "Passwords do not match.",
        "auth.passwordTooShort" to "Password must be at least 6 characters long.",
        "auth.register" to "Register",
        "auth.registerFailed" to "Registration failed. Please try again.",
        "auth.registerSuccess" to "Registration successful! Please check your email to activate your account.",
        "auth.rememberMe" to "Remember me",
        "auth.resetEmailSent" to "If an account with this email exists, a reset link has been sent. Please check your inbox (and spam folder).",
        "auth.resetFailed" to "Password could not be changed. The link may have expired.",
        "auth.resetPassword" to "Set new password",
        "auth.resetRequestFailed" to "Request failed. Please try again.",
        "auth.saveNewPassword" to "Save password",
        "auth.saving" to "Saving...",
        "auth.sending" to "Sending...",
        "auth.sendResetLink" to "Send link",
        "auth.sessionExpired" to "Your session has expired. You will be logged out.",
        "auth.toLogin" to "Go to login",
        "baseDialog.close" to "Close",
        "baseDialog.minimize" to "minimize",
        "baseDialog.resize" to "Resize",
        "billing.autoSuggestMapping" to "Car suggestions",
        "billing.deleteBilling" to "Delete",
        "billing.deleteConfirm" to "Really delete this generated statement?",
        "billing.deleteError" to "Billing could not be deleted.",
        "billing.deleteSuccess" to "Billing has been deleted.",
        "billing.deleteTemplate" to "Delete template",
        "billing.deleteTemplateConfirm" to "Really delete this template?",
        "billing.deleteTemplateError" to "Template could not be deleted.",
        "billing.deleteTemplateSuccess" to "Template has been deleted.",
        "billing.documentDate" to "Date",
        "billing.downloadError" to "PDF could not be downloaded.",
        "billing.downloadPdf" to "Download PDF",
        "billing.generateAndDownloadPdf" to "Generate + download PDF",
        "billing.generateError" to "PDF could not be created.",
        "billing.generateOwnBilling" to "Generate your own billing",
        "billing.generatePdf" to "Generate PDF",
        "billing.generateSuccess" to "PDF has been created.",
        "billing.generatingPdf" to "Create PDF...",
        "billing.hourlyRate" to "Hourly salary",
        "billing.hoursAutoHint" to "Number of hours is automatically calculated from the training days: {hours} h ({count} units).",
        "billing.hoursTotal" to "Number of hours",
        "billing.iban" to "IBAN",
        "billing.ibanBoxesReset" to "IBAN boxes have been reset.",
        "billing.ibanLearnCancel" to "Cancel IBAN learning",
        "billing.ibanLearnDone" to "IBAN boxes have been assigned from the selected area.",
        "billing.ibanLearnStart" to "Learn IBAN",
        "billing.ibanLearnStep1" to "IBAN learning: please click on the first IBAN box to be used.",
        "billing.ibanLearnStep2" to "IBAN learning: please click on the last IBAN box to be used.",
        "billing.ibanWithoutCountry" to "without country code",
        "billing.locationText" to "Location",
        "billing.mappingEditorHint" to "Select the field, then click in the PDF. The position will be taken over immediately.",
        "billing.mappingEditorTitle" to "Assign fields in the PDF with a click",
        "billing.mappingField" to "Field",
        "billing.mappingHint" to "Adjust and save coordinates once for each field. These positions are used in “Create PDF”.",
        "billing.mappingPreviewError" to "PDF preview for mapping could not be loaded.",
        "billing.mappingSaved" to "Mapping has been saved.",
        "billing.mappingSaveError" to "Mapping could not be saved.",
        "billing.mappingSuggested" to "Car suggestions have been entered. Please check and fine-tune.",
        "billing.mappingSuggestError" to "Auto suggestions could not be determined.",
        "billing.mappingTitle" to "Position mapping",
        "billing.monthFrom" to "month of",
        "billing.monthTo" to "month to",
        "billing.noRuns" to "No invoices available yet.",
        "billing.noSessionsInRange" to "No training sessions found in the selected period.",
        "billing.noTemplates" to "No templates available yet.",
        "billing.omitField" to "do not specify",
        "billing.openMappingEditor" to "Mapping with a click",
        "billing.resetIbanBoxes" to "IBAN boxes reset",
        "billing.runSection" to "Billing run",
        "billing.runsTitle" to "Previous billings",
        "billing.sameAccountCheckbox" to "Same account as last statement",
        "billing.saveMapping" to "Save mapping",
        "billing.selfRecipientName" to "Own name",
        "billing.sessionHours" to "Hours",
        "billing.sessionLabel" to "Identifier",
        "billing.sessionTime" to "Time",
        "billing.step1" to "Step 1: Store template",
        "billing.step2" to "Step 2: Create a billing run",
        "billing.step3" to "Step 3: Generate and download PDF",
        "billing.subtitle" to "Create your own monthly practice lesson bill.",
        "billing.template" to "Template",
        "billing.templateDescription" to "Description",
        "billing.templateName" to "Template name",
        "billing.templatePdf" to "PDF template",
        "billing.templateSection" to "Upload template",
        "billing.title" to "Invoice",
        "billing.uploadTemplate" to "Save Template",
        "calendar.agendaEmpty" to "No events this month.",
        "calendar.agendaTitle" to "Events this month",
        "calendar.cancelCancellation.confirm" to "Cancel cancellation",
        "calendar.cancelCancellation.message" to "Really cancel the training cancellation “{title}” on {date}?",
        "calendar.cancelCancellation.title" to "Cancel training cancellation",
        "calendar.cancellation.date" to "Date",
        "calendar.cancellation.description" to "Hides regular training times.",
        "calendar.cancellation.fallbackTitle" to "Training cancelled",
        "calendar.cancellation.reasonPlaceholder" to "Reason (optional)",
        "calendar.cancellation.saving" to "Saving...",
        "calendar.cancellation.submit" to "Add",
        "calendar.cancellation.subtitle" to "Training cancellation",
        "calendar.cancellation.title" to "Training cancelled",
        "calendar.cancellation.trainingGroups" to "Training groups",
        "calendar.cancellation.untilOptional" to "Until optional",
        "calendar.customEvent.categoryPlaceholder" to "Category (optional)",
        "calendar.customEvent.description" to "District meetings, sessions, internal meetings, ...",
        "calendar.customEvent.saving" to "Saving...",
        "calendar.customEvent.submit" to "Create",
        "calendar.customEvent.subtitleFallback" to "Own event",
        "calendar.customEvent.title" to "Own events",
        "calendar.customEvent.titlePlaceholder" to "Title",
        "calendar.description" to "Training days, club tournaments and league matches in a monthly view.",
        "calendar.eventTitles.match" to "League match",
        "calendar.eventTitles.officialTournament" to "Tournament participation",
        "calendar.eventTitles.tournament" to "Tournament",
        "calendar.eventTitles.training" to "training",
        "calendar.eyebrow" to "Club calendar",
        "calendar.holidayTypes.holiday" to "Holiday",
        "calendar.holidayTypes.schoolHoliday" to "School holidays",
        "calendar.legend.customEvent" to "Event",
        "calendar.legend.holiday" to "Holiday",
        "calendar.legend.match" to "League match",
        "calendar.legend.officialTournament" to "Participation",
        "calendar.legend.schoolHoliday" to "School holidays",
        "calendar.legend.tournament" to "Tournament",
        "calendar.legend.training" to "training",
        "calendar.legend.trainingCancellation" to "Cancelled",
        "calendar.loadError" to "Calendar data could not be loaded.",
        "calendar.loading" to "Loading calendar data...",
        "calendar.match.guest" to "Away",
        "calendar.match.home" to "Home",
        "calendar.noClub" to "Please select a club first.",
        "calendar.options.subtitle" to "Cancellations & own events",
        "calendar.options.title" to "Options",
        "calendar.participants" to "{count} participants",
        "calendar.quickCancellation.confirm" to "Add cancellation",
        "calendar.quickCancellation.message" to "Mark “{title}” as training cancellation?",
        "calendar.quickCancellation.noGroups" to "No training groups with training times are available.",
        "calendar.quickCancellation.title" to "Training cancellation",
        "calendar.quickCancellation.trainingGroups" to "Affected training groups",
        "calendar.quickCancellation.useWholeRange" to "Apply to the full period ({start} to {end})",
        "calendar.recurringTrainingTime" to "Regular training time",
        "calendar.sources.customEvents" to "Own events",
        "calendar.sources.holidays" to "Holidays/school holidays",
        "calendar.sources.matches" to "League matches",
        "calendar.sources.officialTournaments" to "Tournament participations",
        "calendar.sources.tournaments" to "Tournaments",
        "calendar.sources.trainingCancellations" to "Training cancellations",
        "calendar.sources.trainingDays" to "Training days",
        "calendar.sources.trainingTimes" to "Training times",
        "calendar.sourceWarning" to "{source} could not be loaded",
        "calendar.starts" to "{count} starts",
        "calendar.title" to "Calendar",
        "calendar.today" to "Today",
        "calendar.tournament.club" to "Club tournament",
        "calendar.tournament.open" to "Open tournament",
        "calendar.weekdays.friday" to "Fri",
        "calendar.weekdays.monday" to "Mon",
        "calendar.weekdays.saturday" to "Sat",
        "calendar.weekdays.sunday" to "Sun",
        "calendar.weekdays.thursday" to "Thu",
        "calendar.weekdays.tuesday" to "Tue",
        "calendar.weekdays.wednesday" to "Wed",
        "club.accessDenied" to "Access to the club was denied.",
        "club.accessRequested" to "Access has been requested.",
        "club.accessRequestFailed" to "Access request could not be submitted.",
        "club.accessRequestPending" to "Access to this club has been requested. Please be patient.",
        "club.create" to "Create Club",
        "club.createTitle" to "Create club",
        "club.diary" to "Training diary",
        "club.errorLoadingRequests" to "Failed to load open requests",
        "club.load" to "Load",
        "club.members" to "Members",
        "club.mobileSelectHint" to "Please select a club first to use the app on your smartphone.",
        "club.name" to "Club Name",
        "club.new" to "New Club",
        "club.noAccess" to "You have not yet been granted access to this club.",
        "club.openAccessRequests" to "Open access requests",
        "club.openRequests" to "Open access requests",
        "club.requestAccess" to "Request access",
        "club.select" to "Select Club",
        "club.selectPlaceholder" to "Choose club...",
        "club.title" to "Club",
        "club.trainingDiary" to "Training diary",
        "clubSettings.associationMemberNumber" to "Association membership number",
        "clubSettings.associationMemberNumberPlaceholder" to "e.g. SN-12-3456.",
        "clubSettings.autoFetchRankings" to "Automatically retrieve rankings",
        "clubSettings.greetingHint" to "This text appears in the \"Welcome\" tab of the game report sheet.",
        "clubSettings.greetingPlaceholder" to "Welcome text for home games...",
        "clubSettings.greetingText" to "Greeting text",
        "clubSettings.guestPlayers" to "Player and Doubles Guest Team",
        "clubSettings.guestTeam" to "Guest Team Name",
        "clubSettings.homePlayers" to "Players and home team doubles",
        "clubSettings.homeTeam" to "Home Team Name",
        "clubSettings.loadFailed" to "Settings could not be loaded",
        "clubSettings.memberDataQuality" to "Data quality members",
        "clubSettings.memberDataQualityHint" to "These fields count as necessary on the member page. All fields can still be entered.",
        "clubSettings.myTischtennisFedNickname" to "Association abbreviation",
        "clubSettings.myTischtennisFedNicknamePlaceholder" to "e.g. HeTTV",
        "clubSettings.myTischtennisRankings" to "myTischtennis TTR/QTTR rankings",
        "clubSettings.myTischtennisRankingsHint" to "Automatic retrieval of the club ranking for TTR and QTTR updates of the members.",
        "clubSettings.noClubSelected" to "Please select a doctor first.",
        "clubSettings.placeholders" to "Spacer",
        "clubSettings.rankingsUsesAssociationNumber" to "The club number for the ranking list retrieval corresponds to the association membership number above.",
        "clubSettings.requireCity" to "Location Required",
        "clubSettings.requireEmail" to "Email Required",
        "clubSettings.requirePhone" to "Phone Number Required",
        "clubSettings.requirePostalCode" to "Zip code required",
        "clubSettings.requireStreet" to "Road Required",
        "clubSettings.save" to "Save",
        "clubSettings.saved" to "Stored",
        "clubSettings.saveFailed" to "Cannot Save",
        "clubSettings.settings" to "Settings",
        "clubSettings.title" to "Club Settings",
        "clubSettings.trainingGroups" to "Training groups.",
        "clubSettings.trainingTimes" to "Practice schedule",
        "common.actions" to "Actions",
        "common.active" to "Active",
        "common.add" to "Add",
        "common.all" to "All",
        "common.apply" to "Apply",
        "common.back" to "Back",
        "common.cancel" to "Cancel",
        "common.choose" to "Choose",
        "common.clear" to "Clear",
        "common.close" to "Close",
        "common.confirm" to "Confirm",
        "common.create" to "Create",
        "common.date" to "Date",
        "common.days" to "days",
        "common.delete" to "Delete",
        "common.description" to "Description",
        "common.details" to "Details",
        "common.disabled" to "Disabled",
        "common.download" to "Download",
        "common.edit" to "Edit",
        "common.enabled" to "Enabled",
        "common.filter" to "filter",
        "common.hours" to "hours",
        "common.in" to "in",
        "common.inactive" to "Inactive",
        "common.loading" to "Loading...",
        "common.min" to "min",
        "common.minutes" to "minutes",
        "common.months" to "months",
        "common.move" to "Move",
        "common.name" to "name",
        "common.new" to "New",
        "common.next" to "Next",
        "common.no" to "No",
        "common.ok" to "OK",
        "common.optional" to "Optional",
        "common.period" to "Period",
        "common.previous" to "Previous",
        "common.refresh" to "Reload",
        "common.remove" to "Remove",
        "common.required" to "Required",
        "common.reset" to "Reset",
        "common.save" to "Save",
        "common.saved" to "Saved",
        "common.saving" to "Saving...",
        "common.search" to "Search",
        "common.select" to "Select",
        "common.status" to "status",
        "common.submit" to "Submit",
        "common.time" to "Time",
        "common.today" to "Today",
        "common.type" to "Type",
        "common.update" to "Update",
        "common.view" to "View",
        "common.weeks" to "weeks",
        "common.years" to "years",
        "common.yes" to "Yes",
        "courtDrawing.cancel" to "Cancel",
        "courtDrawing.durationMinutes" to "Duration (minutes)",
        "courtDrawing.durationText" to "Duration (text)",
        "courtDrawing.durationTextPlaceholder" to "e.g. 2x5",
        "courtDrawing.group" to "Group",
        "courtDrawing.ok" to "OK",
        "courtDrawing.selectGroup" to "Select group...",
        "courtDrawing.title" to "Configure table tennis exercise",
        "courtDrawingRender.animationRunning" to "Animation in progress...",
        "courtDrawingRender.startAnimation" to "Start animation",
        "courtDrawingTool.addStroke" to "Add stroke",
        "courtDrawingTool.backhand" to "Backhand",
        "courtDrawingTool.codeLabel" to "Code",
        "courtDrawingTool.completeFirstStroke" to "Complete the first stroke",
        "courtDrawingTool.completeFirstStrokeHint" to "Choose start position, stroke side, spin and target. The graphic will then appear.",
        "courtDrawingTool.configureExercise" to "Configure exercise",
        "courtDrawingTool.counterSpin" to "Counter-spin",
        "courtDrawingTool.forehand" to "Forehand",
        "courtDrawingTool.noAdditionalStrokes" to "No follow-up strokes added yet.",
        "courtDrawingTool.preview" to "Preview",
        "courtDrawingTool.previewHint" to "The graphic appears as soon as the first stroke is fully configured.",
        "courtDrawingTool.service" to "Serve:",
        "courtDrawingTool.serviceTitle" to "Serve",
        "courtDrawingTool.sidespin" to "Sidespin",
        "courtDrawingTool.sideUnderspin" to "Side-backspin",
        "courtDrawingTool.spin" to "Spin:",
        "courtDrawingTool.startLeft" to "left",
        "courtDrawingTool.startMiddle" to "centre",
        "courtDrawingTool.startRight" to "right",
        "courtDrawingTool.stepAdditionalStrokes" to "4. Follow-up strokes",
        "courtDrawingTool.stepAdditionalStrokesHint" to "Optionally build additional balls as a sequence.",
        "courtDrawingTool.stepFirstStroke" to "2. First stroke",
        "courtDrawingTool.stepFirstStrokeHint" to "Set stroke side and spin for the first ball.",
        "courtDrawingTool.stepStartPosition" to "1. Start position",
        "courtDrawingTool.stepStartPositionHint" to "Which service position does the exercise start from?",
        "courtDrawingTool.stepTarget" to "3. Target",
        "courtDrawingTool.stepTargetHint" to "Choose the target zone for the first stroke.",
        "courtDrawingTool.strokeSide" to "Side",
        "courtDrawingTool.strokeTypeBlock" to "Block",
        "courtDrawingTool.strokeTypeChopDefense" to "Chop defence",
        "courtDrawingTool.strokeTypeCounter" to "Counter",
        "courtDrawingTool.strokeTypeFlip" to "flip",
        "courtDrawingTool.strokeTypeLabel" to "Stroke type",
        "courtDrawingTool.strokeTypeLobDefense" to "Lob defence",
        "courtDrawingTool.strokeTypePush" to "Push",
        "courtDrawingTool.strokeTypeSmash" to "Smash",
        "courtDrawingTool.strokeTypeTopspin" to "Top spin",
        "courtDrawingTool.targetBackhandHalfLong" to "Backhand half-long",
        "courtDrawingTool.targetBackhandLong" to "Backhand deep",
        "courtDrawingTool.targetBackhandShort" to "Backhand short",
        "courtDrawingTool.targetForehandHalfLong" to "Forehand half-long",
        "courtDrawingTool.targetForehandLong" to "Forehand deep",
        "courtDrawingTool.targetForehandShort" to "Forehand short",
        "courtDrawingTool.targetMiddleHalfLong" to "Middle half-long",
        "courtDrawingTool.targetMiddleLong" to "Middle deep",
        "courtDrawingTool.targetMiddleShort" to "Middle short",
        "courtDrawingTool.targetPosition" to "Target position:",
        "courtDrawingTool.targetPositionLabel" to "Target position",
        "courtDrawingTool.title" to "Table tennis exercise drawing",
        "courtDrawingTool.titleLabel" to "Title",
        "courtDrawingTool.topspin" to "Topspin",
        "courtDrawingTool.toTarget" to "to",
        "courtDrawingTool.underspin" to "Backspin",
        "createClub.clubExists" to "The association already exists.",
        "createClub.clubName" to "name of club",
        "createClub.create" to "Create a club",
        "createClub.nameRequired" to "Please give the association a meaningful name.",
        "createClub.title" to "Create a club",
        "createClub.unknownError" to "Unknown error occurred, try again",
        "csvImport.cancel" to "Cancel",
        "csvImport.import" to "Importing",
        "csvImport.title" to "Import Schedule",
        "csvImport.uploadCsvFile" to "Upload CSV file",
        "dialogExamples.composableConfirmDetails" to "This is an example of the useConfirm Composable.",
        "dialogExamples.composableConfirmMessage" to "Do you wish to proceed?",
        "dialogExamples.composableConfirmTitle" to "useConfirm example",
        "dialogExamples.composableDialogText" to "This dialog uses the useDialog Composable.",
        "dialogExamples.composableDialogText2" to "This makes it easier to manage!",
        "dialogExamples.composableDialogTitle" to "Dialogue with useDialog Composable",
        "dialogExamples.composableUsage" to "Composable Usage",
        "dialogExamples.confirmDeleteMessage" to "Are you sure you wish to delete this gift card?",
        "dialogExamples.confirmDeleteTitle" to "Confirm Delete",
        "dialogExamples.confirmDialogs" to "Confirmation dialogs",
        "dialogExamples.confirmWarningDetails" to "This action cannot be undone.",
        "dialogExamples.confirmWarningMessage" to "Are you sure you want to continue?",
        "dialogExamples.error" to "Error",
        "dialogExamples.errorDetails" to "Please try again later.",
        "dialogExamples.errorMessage" to "An error has occurred.",
        "dialogExamples.fullscreenModal" to "Fullscreen Modal",
        "dialogExamples.fullscreenModalText" to "This is a fullscreen dialog.",
        "dialogExamples.fullscreenModalText2" to "It occupies almost the entire screen (90vw x 90vh).",
        "dialogExamples.fullscreenModalTitle" to "Fullscreen Modal Dialog",
        "dialogExamples.info" to "Information",
        "dialogExamples.infoDialogs" to "Information dialogues",
        "dialogExamples.infoMessage" to "This is an information message.",
        "dialogExamples.information" to "information",
        "dialogExamples.largeModal" to "Large Modal",
        "dialogExamples.largeModalText" to "This is a great modal dialogue.",
        "dialogExamples.largeModalText2" to "It offers more space for content.",
        "dialogExamples.largeModalTitle" to "Large Modal Dialogue",
        "dialogExamples.minimizedDialogs" to "Minimized dialogs:",
        "dialogExamples.modalDialogs" to "Modal Dialogues",
        "dialogExamples.multipleDialogs" to "Multiple Dialogs",
        "dialogExamples.nonModalDialog" to "Non-modal dialogue",
        "dialogExamples.nonModalDialogs" to "Non-modal dialogues",
        "dialogExamples.nonModalText" to "This is a non-modal dialogue.",
        "dialogExamples.nonModalText2" to "You can move it and open several at once!",
        "dialogExamples.nonModalTitle" to "Non-modal dialogue",
        "dialogExamples.scrollArea" to "Scroll area for lots of content...",
        "dialogExamples.secondNonModalText" to "Another non-modal dialogue!",
        "dialogExamples.secondNonModalTitle" to "Second non-modal dialogue",
        "dialogExamples.simpleModal" to "Simple Modal",
        "dialogExamples.simpleModalText" to "This is a simple modal dialog with medium size.",
        "dialogExamples.simpleModalText2" to "Click outside or on the X to close.",
        "dialogExamples.simpleModalTitle" to "Simple modal dialogue",
        "dialogExamples.success" to "Achievement",
        "dialogExamples.successDetails" to "All changes have been saved.",
        "dialogExamples.successMessage" to "The operation has been completed successfully!",
        "dialogExamples.title" to "Dialog examples",
        "dialogExamples.useConfirmExample" to "useConfirm example",
        "dialogExamples.useDialogExample" to "useDialog example",
        "dialogExamples.warning" to "Cautions",
        "dialogExamples.warningDetails" to "Some fields may not be filled in completely.",
        "dialogExamples.warningMessage" to "The following links may help you:",
        "dialogManager.close" to "Close",
        "dialogManager.minimize" to "minimize",
        "dialogManager.noMinimizedDialogs" to "No minimized dialogs",
        "dialogs.confirm.cancel" to "Cancel",
        "dialogs.confirm.ok" to "OK",
        "dialogs.confirm.title" to "Confirmation",
        "dialogs.info.ok" to "OK",
        "dialogs.info.title" to "information",
        "diary.activeTrainingDay" to "Active training day",
        "diary.activities" to "Activities",
        "diary.activity" to "Activity",
        "diary.activityDrawing" to "Activity drawing",
        "diary.activityImage" to "Activity image",
        "diary.activityNotFound" to "Activity not found. Please choose one from the list.",
        "diary.activityOrTimeblock" to "Activity / time block",
        "diary.activityPlaceholder" to "Activity",
        "diary.activityRequired" to "Please enter an activity.",
        "diary.addActivity" to "Add activity",
        "diary.addGroup" to "Add group",
        "diary.addGroupActivity" to "Add group activity",
        "diary.addGroupButton" to "+ Group",
        "diary.addTimeblock" to "Time block",
        "diary.all" to "All",
        "diary.applySuggestion" to "Apply suggestion",
        "diary.assignParticipants" to "Assign participants",
        "diary.assignParticipantsForGroupActivity" to "Assign participants for group activity",
        "diary.assignShort" to "Assign",
        "diary.bookAccident" to "Record accident",
        "diary.confirmDelete" to "Confirm deletion",
        "diary.confirmDeleteDate" to "Do you really want to delete this date?",
        "diary.confirmDeleteDateDetails" to "All associated data will also be deleted.",
        "diary.confirmDeleteGroup" to "Do you really want to delete the group \"{name}\"?",
        "diary.createDate" to "Create date",
        "diary.createDrawing" to "Create exercise drawing",
        "diary.createGroups" to "Create groups",
        "diary.createNew" to "Create new",
        "diary.createNewDate" to "Create new date",
        "diary.date" to "Date",
        "diary.dateCannotBeDeleted" to "Date cannot be deleted",
        "diary.dateCannotBeDeletedDetails" to "There is still content present (training plan, participants, activities, accidents or notes).",
        "diary.dateNoLongerCurrent" to "The selected date was no longer current. Please try again.",
        "diary.delete" to "Delete",
        "diary.deleteDate" to "Delete date",
        "diary.deleteGroup" to "Delete group",
        "diary.duration" to "Duration",
        "diary.durationExampleLong" to "e.g. 2x7 or 3*5",
        "diary.durationExampleShort" to "e.g. 2x7",
        "diary.durationMinutes" to "Duration (min)",
        "diary.editActivity" to "Edit activity",
        "diary.editGroupActivity" to "Edit group activity",
        "diary.editTrainingTimes" to "Edit training times",
        "diary.errorCreatingActivity" to "Error creating activity",
        "diary.errorCreatingGroups" to "Error creating groups",
        "diary.errorDeletingGroup" to "Error deleting group",
        "diary.errorLoadingPredefinedActivities" to "Failed to load predefined activities",
        "diary.errorMarkingForm" to "Error marking the membership form",
        "diary.errorOccurred" to "An error occurred. Please try again.",
        "diary.existingGroups" to "Existing groups",
        "diary.filterAbsent" to "Absent",
        "diary.filterAll" to "All",
        "diary.filterExcused" to "Excused",
        "diary.filterPresent" to "Present",
        "diary.filterTest" to "Trial",
        "diary.formHandedOver" to "Membership form handed over",
        "diary.formMarkedAsHandedOver" to "Membership form marked as handed over",
        "diary.freeActivities" to "Free activities",
        "diary.gallery" to "Member gallery",
        "diary.galleryCreating" to "Creating gallery…",
        "diary.group" to "Group...",
        "diary.groupDeletedSuccessfully" to "Group deleted successfully.",
        "diary.groupManagement" to "Group management",
        "diary.groupsCreated" to "{count} groups were created successfully.",
        "diary.groupsLabel" to "Groups",
        "diary.groupsSection" to "Groups",
        "diary.leader" to "Leader",
        "diary.min" to "Min",
        "diary.minutes" to "Minutes",
        "diary.mustCreateAtLeastTwoGroups" to "At least 2 groups must be created the first time.",
        "diary.nextAppointment" to "Next appointment",
        "diary.noActiveTrainingDay" to "No training day selected.",
        "diary.noEntries" to "No entries",
        "diary.noFreeActivitiesYet" to "No free activities have been recorded yet.",
        "diary.noParticipants" to "No participants available for this training day.",
        "diary.numberOfGroups" to "Number of groups",
        "diary.oneGroupAdded" to "1 group was added successfully.",
        "diary.openPlanItems" to "{count} open",
        "diary.openPlanItemsLabel" to "Plan status",
        "diary.overallActivity" to "Overall activity",
        "diary.participants" to "Participants",
        "diary.participantStatusCancelled" to "Cancelled",
        "diary.participantStatusExcused" to "Excused",
        "diary.participantStatusNone" to "No status",
        "diary.planActivitiesCount" to "Planned activities",
        "diary.planAddHint" to "Add new plan items using the actions above.",
        "diary.planEmptyState" to "Nothing has been entered in the training plan yet.",
        "diary.quickAdd" to "+ Quick add",
        "diary.quickCreate" to "Quick add",
        "diary.quickCreateFailed" to "Could not create the training day entry.",
        "diary.quickCreateNoSlot" to "No free training slot found (per group schedule, one year ahead).",
        "diary.searchParticipants" to "Search participants",
        "diary.selectGroup" to "Select group...",
        "diary.selectGroupAndActivity" to "Please select a group and enter an activity.",
        "diary.selectParticipantAndNote" to "Please select a participant and enter a note.",
        "diary.selectTags" to "Select tags",
        "diary.selectTrainingGroup" to "Select training group",
        "diary.selectTrainingGroupPlaceholder" to "Please choose...",
        "diary.showImage" to "Show image/drawing",
        "diary.skipSuggestion" to "Continue without suggestion",
        "diary.standardActivities" to "Standard activities",
        "diary.standardActivityAddError" to "Standard activity could not be added.",
        "diary.standardDurationShort" to "Min",
        "diary.startTime" to "Start time",
        "diary.statusEmpty" to "This training day is still empty.",
        "diary.statusInProgress" to "This training day is partially prepared.",
        "diary.statusOpenShort" to "Open",
        "diary.statusReady" to "Times and training plan are set.",
        "diary.statusReadyShort" to "Ready",
        "diary.suggestion" to "Suggestion",
        "diary.timeblock" to "Time block",
        "diary.timeblocksCount" to "Time blocks",
        "diary.title" to "Training diary",
        "diary.today" to "Today",
        "diary.trainingDayAsPDF" to "Download training day as PDF",
        "diary.trainingDayAsPDFShort" to "Training day as PDF",
        "diary.trainingDayChecklist" to "Completion checklist",
        "diary.trainingDaySection" to "Training day",
        "diary.trainingDaySummaryPdfShort" to "Participant summary as PDF",
        "diary.trainingEnd" to "Training end",
        "diary.trainingPlan" to "Training plan",
        "diary.trainingPlanAsPDF" to "Training plan as PDF",
        "diary.trainingPlanPdfShort" to "Schedule as PDF",
        "diary.trainingStart" to "Training start",
        "diary.trainingTimesUpdated" to "Training times updated successfully.",
        "diary.trainingWindow" to "Training window",
        "diary.trainingWindowUnset" to "Not set yet",
        "diary.unassignedPlanItems" to "{count} open",
        "diary.updateTimes" to "Update times",
        "errors.ERROR_ACTIVITY_IMAGE_DELETE_FAILED" to "Error in deleting the image.",
        "errors.ERROR_BAD_REQUEST" to "Invalid request.",
        "errors.ERROR_CLUB_ALREADY_EXISTS" to "The association already exists.",
        "errors.ERROR_CLUB_NAME_REQUIRED" to "Please give the association a meaningful name.",
        "errors.ERROR_CLUB_NAME_TOO_SHORT" to "Please give the association a meaningful name.",
        "errors.ERROR_CLUB_NOT_FOUND" to "Club not found.",
        "errors.ERROR_DIARY_ACTIVITY_PARTICIPANTS_UPDATE_FAILED" to "Error updating activity participants",
        "errors.ERROR_DIARY_ASSIGN_ALL_PARTICIPANTS_FAILED" to "Error assigning all participants",
        "errors.ERROR_DIARY_ASSIGN_GROUP_FAILED" to "Error mapping group",
        "errors.ERROR_DIARY_DATE_NOT_FOUND" to "Date not found",
        "errors.ERROR_DIARY_DATE_UPDATED" to "Date was not (no longer) available. The date picker has been updated. Please try again.",
        "errors.ERROR_DIARY_GROUP_ASSIGNMENT_UPDATE_FAILED" to "Error updating group assignment",
        "errors.ERROR_DIARY_IMAGE_LOAD_FAILED" to "FAILED TO LOAD IMAGE",
        "errors.ERROR_DIARY_MEMBER_CREATE_FAILED" to "Error creating member",
        "errors.ERROR_DIARY_NO_EXERCISE_DATA" to "No exercise data received",
        "errors.ERROR_DIARY_NO_PARTICIPANTS" to "No participants available for this training day.",
        "errors.ERROR_DIARY_PARTICIPANT_ASSIGN_FAILED" to "Participants could not be assigned.",
        "errors.ERROR_DIARY_PARTICIPANT_GROUP_ASSIGNMENT_UPDATE_FAILED" to "Error updating participant group assignment",
        "errors.ERROR_DIARY_PDF_GENERATION_FAILED" to "Error generating PDF.",
        "errors.ERROR_DIARY_STATS_LOAD_FAILED" to "Failed to load statistics.",
        "errors.ERROR_FORBIDDEN" to "Permission denied.",
        "errors.ERROR_GROUP_ALREADY_EXISTS" to "A group by this name already exists.",
        "errors.ERROR_GROUP_CANNOT_RENAME_PRESET" to "Default groups cannot be renamed.",
        "errors.ERROR_GROUP_INVALID_PRESET_TYPE" to "Invalid preset type.",
        "errors.ERROR_GROUP_NAME_REQUIRED" to "Please enter a group name.",
        "errors.ERROR_GROUP_NOT_FOUND" to "Group not found.",
        "errors.ERROR_INTERNAL_SERVER_ERROR" to "An internal server error has occurred.",
        "errors.ERROR_INVALID_PASSWORD" to "Incorrect password.",
        "errors.ERROR_LOG_NOT_FOUND" to "Log entry not found",
        "errors.ERROR_LOGIN_FAILED" to "Login failed.",
        "errors.ERROR_MEMBER_ALREADY_EXISTS" to "The member already exists",
        "errors.ERROR_MEMBER_FIRSTNAME_REQUIRED" to "First name is required.",
        "errors.ERROR_MEMBER_LASTNAME_REQUIRED" to "Last name is required.",
        "errors.ERROR_MEMBER_NOT_FOUND" to "Members not found",
        "errors.ERROR_MEMBER_TRANSFER_BULK_FAILED" to "Bulk transfer error: {message}",
        "errors.ERROR_MYTISCHTENNIS_ACCOUNT_NOT_LINKED" to "No myTischtennis account linked.",
        "errors.ERROR_MYTISCHTENNIS_CAPTCHA_REQUIRED" to "CAPTCHA required. MyTischtennis now uses a CAPTCHA when logging in. Please log in directly to mytischtennis.de to solve the CAPTCHA, or contact support.",
        "errors.ERROR_MYTISCHTENNIS_INVALID_PASSWORD" to "Invalid myTischtennis password.",
        "errors.ERROR_MYTISCHTENNIS_LOGIN_FAILED" to "Login failed. Please check your credentials.",
        "errors.ERROR_MYTISCHTENNIS_NO_PASSWORD_SAVED" to "No password saved and session expired. Please enter your password.",
        "errors.ERROR_MYTISCHTENNIS_PASSWORD_NOT_SAVED" to "No password saved. Please enter your password.",
        "errors.ERROR_MYTISCHTENNIS_SESSION_EXPIRED" to "Session expired. Please log in again.",
        "errors.ERROR_MYTISCHTENNIS_USER_NOT_FOUND" to "myTischtennis user not found.",
        "errors.ERROR_NOT_FOUND" to "Not found. ",
        "errors.ERROR_OFFICIAL_TOURNAMENT_PDF_UPLOAD" to "Error uploading PDF.",
        "errors.ERROR_SESSION_EXPIRED" to "Session expired.",
        "errors.ERROR_TEAM_LINK_TO_LEAGUE_REQUIRED" to "Please assign a league to the team first so that documents can be processed.",
        "errors.ERROR_TEAM_NOT_LINKED_TO_LEAGUE" to "This team is not assigned to any league.",
        "errors.ERROR_TEAM_PDF_LOAD_FAILED" to "Failed to load PDF",
        "errors.ERROR_TEAM_STATS_LOAD_FAILED" to "Statistics could not be loaded",
        "errors.ERROR_TOURNAMENT_CLASS_NAME_REQUIRED" to "Please enter a class name!",
        "errors.ERROR_TOURNAMENT_NO_DATE" to "No tournament date available!",
        "errors.ERROR_TOURNAMENT_NO_PARTICIPANTS" to "No participants found in training day for this date!",
        "errors.ERROR_TOURNAMENT_NO_TRAINING_DAY" to "No training day found for {date}!",
        "errors.ERROR_TOURNAMENT_NO_VALID_PARTICIPANTS" to "No valid participants found in training day for this date!",
        "errors.ERROR_TOURNAMENT_NOT_FOUND" to "Tournament not found",
        "errors.ERROR_TOURNAMENT_PDF_GENERATION_FAILED" to "Error Generating PDF",
        "errors.ERROR_TOURNAMENT_SELECT_FIRST" to "Please select a tournament first.",
        "errors.ERROR_TRAINING_STATS_LOAD_FAILED" to "Error loading training statistics",
        "errors.ERROR_UNAUTHORIZED" to "Not authorized.",
        "errors.ERROR_UNKNOWN_ERROR" to "An unknown error occurred.",
        "errors.ERROR_USER_NOT_FOUND" to "User Not Found.",
        "errors.ERROR_VALIDATION_FAILED" to "Failed validation",
        "errors.SUCCESS_DIARY_GROUP_ASSIGNMENT_UPDATED" to "Group Mapping Updated",
        "errors.SUCCESS_DIARY_MEMBER_CREATED" to "Member \"{name}\" was successfully created and added!",
        "errors.SUCCESS_OFFICIAL_TOURNAMENT_PDF_UPLOAD" to "Upload successful.",
        "home.authenticatedFeatures.keepDiary" to "Keep a training diary",
        "home.authenticatedFeatures.keepDiaryDesc" to "Document training activities, participants, activities and notes for each training day.",
        "home.authenticatedFeatures.manageMembers" to "Manage members",
        "home.authenticatedFeatures.manageMembersDesc" to "Manage your club members, create training groups and keep track of all participants.",
        "home.authenticatedFeatures.manageTournaments" to "Manage tournaments",
        "home.authenticatedFeatures.manageTournamentsDesc" to "Create internal and open tournaments, import official tournaments and manage entries.",
        "home.authenticatedFeatures.myTischtennisIntegration" to "MyTable Tennis integration",
        "home.authenticatedFeatures.myTischtennisIntegrationDesc" to "Automatically synchronize game results and statistics with MyTischtennis.de.",
        "home.authenticatedFeatures.pdfExport" to "PDF export",
        "home.authenticatedFeatures.pdfExportDesc" to "Export training days as PDF with participants, activities and statistics.",
        "home.authenticatedFeatures.statistics" to "Statistics & evaluations",
        "home.authenticatedFeatures.statisticsDesc" to "Get detailed training and participation overviews as well as activity statistics.",
        "home.authenticatedFeatures.teamManagement" to "Team management",
        "home.authenticatedFeatures.teamManagementDesc" to "Manage teams, leagues, fixtures and results for your club.",
        "home.authenticatedFeatures.trainingGroups" to "Training groups & times",
        "home.authenticatedFeatures.trainingGroupsDesc" to "Organise training groups, define training times and manage group assignments.",
        "home.faq" to "Frequently asked questions",
        "home.faqFree.answer" to "Yes, you can start for free. Extensions can follow later.",
        "home.faqFree.question" to "Is it free to use?",
        "home.faqInstallation.answer" to "No, it is a web application. You use it directly in the browser – on desktop, tablet and smartphone.",
        "home.faqInstallation.question" to "Do I need installation?",
        "home.faqMyTischtennis.answer" to "Yes, after setup, the application automatically synchronizes with MyTischtennis.de and imports game results and statistics.",
        "home.faqMyTischtennis.question" to "Does the MyTischtennis integration work automatically?",
        "home.faqPermissions.answer" to "There are four roles: Admin, Coach, Team Leader and Member. Each role has specific permissions that can be customized.",
        "home.faqPermissions.question" to "How does the authorization system work?",
        "home.faqPrivacy.answer" to "We rely on data economy, transparent approvals, role-based access and complete activity logs. The application is GDPR compliant.",
        "home.faqPrivacy.question" to "What about data protection?",
        "home.faqTournaments.answer" to "You can manage internal tournaments, open tournaments and official tournaments (e.g. from associations). Official tournaments can be imported.",
        "home.faqTournaments.question" to "Which tournament types are supported?",
        "home.faqTrainingGroups.answer" to "Yes, you can create training groups, define training times and assign members to the groups. The training diary automatically suggests suitable groups and times.",
        "home.faqTrainingGroups.question" to "Can I manage training groups and times?",
        "home.features.activityLog" to "Activity log",
        "home.features.activityLogDesc" to "Complete logging of all actions for transparency and traceability.",
        "home.features.keepDiary" to "Keep a training diary",
        "home.features.keepDiaryDesc" to "Document the content, scope and attendance of each unit – comprehensibly and structured.",
        "home.features.manageMembers" to "Manage members",
        "home.features.manageMembersDesc" to "Create member profiles, form groups and keep contact and approval statuses up to date.",
        "home.features.myTischtennisIntegration" to "MyTable Tennis integration",
        "home.features.myTischtennisIntegrationDesc" to "Automatic synchronization with MyTischtennis.de for game results and statistics.",
        "home.features.officialTournaments" to "Official tournaments",
        "home.features.officialTournamentsDesc" to "Import and manage official tournaments, manage entries and results.",
        "home.features.organizeSchedules" to "Organise game plans",
        "home.features.organizeSchedulesDesc" to "Plan games, tournaments and events including groups, rounds and results.",
        "home.features.pdfExport" to "PDF export",
        "home.features.pdfExportDesc" to "Export training days as PDF with participants, activities and statistics.",
        "home.features.permissionSystem" to "Authorization system",
        "home.features.permissionSystemDesc" to "Role-based access (admin, coach, team captain, member) with individual permissions.",
        "home.features.predefinedActivities" to "Predefined activities",
        "home.features.predefinedActivitiesDesc" to "Use templates for recurring exercises and speed up your documentation.",
        "home.features.security" to "Security & GDPR",
        "home.features.securityDesc" to "Data protection-friendly architecture, member approvals and transparent access.",
        "home.features.statistics" to "Statistics & evaluation",
        "home.features.statisticsDesc" to "Receive training and participation overviews, recognize development and plan specifically.",
        "home.features.teamManagement" to "Team management",
        "home.features.teamManagementDesc" to "Manage teams, leagues, fixtures and results for your club.",
        "home.features.trainingGroups" to "Training groups & times",
        "home.features.trainingGroupsDesc" to "Organise training groups, define training times and manage group assignments.",
        "home.forWhom" to "Who is the training diary for?",
        "home.forWhomText" to "The TrainingDiary is the comprehensive platform for clubs, departments and coaching teams. It combines member management with training groups and times, detailed training diary, comprehensive tournament organization (internal, open and official tournaments), team management with league integration, MyTischtennis synchronization, meaningful statistics and evaluations as well as a flexible authorization system in a modern web application. Through clear roles (admin, trainer, team leader, member) and individual authorizations, those responsible retain control, while members can participate in a self-determined manner. Ideal for team, racquet and individual sports – from junior to advanced level. GDPR compliant with transparent approvals and full activity log.",
        "home.haveAccount" to "I already have an account",
        "home.heroFeatures.memberManagement" to "Member and group management",
        "home.heroFeatures.myTischtennis" to "MyTable Tennis integration",
        "home.heroFeatures.statistics" to "Statistics & evaluations",
        "home.heroFeatures.teamManagement" to "Team Management & Leagues",
        "home.heroFeatures.tournaments" to "Tournaments (internal, open, official)",
        "home.heroFeatures.trainingDiary" to "Training diary & documentation",
        "home.heroFeatures.trainingGroups" to "Training groups & training times",
        "home.heroSubtitle" to "The TrainingDiary is the comprehensive solution for clubs: member management, training groups, training times, training diary, tournament organization, team management, MyTable Tennis integration, statistics and more - GDPR compliant and easy to use.",
        "home.heroTitle" to "Club management, training planning and tournaments – all in one place",
        "home.howItWorks" to "This is how it works",
        "home.registerNow" to "Register now for free",
        "home.rolesAndPrivacy" to "Roles, permissions & GDPR",
        "home.startFree" to "Start for free",
        "home.step1.description" to "Create an account for free and activate it via email.",
        "home.step1.title" to "Register",
        "home.step2.description" to "Create your club, invite members and set up groups.",
        "home.step2.title" to "Create a club",
        "home.step3.description" to "Plan appointments, document training and track progress.",
        "home.step3.title" to "Plan & document",
        "home.welcome" to "Welcome to the training diary",
        "home.welcomeBack" to "Welcome back! You are logged in successfully.",
        "home.whatCanYouDo" to "What can you do with the training diary?",
        "imageDialog.close" to "Close",
        "imageDialog.noImageAvailable" to "No picture available",
        "imageDialog.title" to "Screen",
        "imageViewer.camera" to "Camera",
        "imageViewer.delete" to "Delete",
        "imageViewer.deleteImage" to "Delete image",
        "imageViewer.nextImage" to "Next image",
        "imageViewer.noImageAvailable" to "No picture available",
        "imageViewer.previousImage" to "previous image",
        "imageViewer.rotateLeft" to "Rotate 90° Left",
        "imageViewer.rotateRight" to "Rotate 90° Right",
        "imageViewer.selectFiles" to "Select Files",
        "imageViewer.setAsPrimary" to "set as main image",
        "imageViewer.setAsPrimaryButton" to "Set featured image",
        "imprint.contact" to "Contact",
        "imprint.serviceProvider" to "Name of the service provider",
        "imprint.title" to "Legal notice",
        "languages.de" to "Deutsch (German)",
        "languages.de-CH" to "Schwiizerdütsch (Swiss German)",
        "languages.en-AU" to "English (Australian English)",
        "languages.en-GB" to "English",
        "languages.en-US" to "English (US English)",
        "languages.es" to "Español (Spanish)",
        "languages.fil" to "Filipino",
        "languages.fr" to "Français (French)",
        "languages.it" to "Italiano (Italian)",
        "languages.ja" to "日本語 (Japanese)",
        "languages.pl" to "Polski (Polish)",
        "languages.th" to "ไทย (Thai)",
        "languages.tl" to "Tagalog",
        "languages.zh" to "中文 (Chinese)",
        "legal.backToHome" to "Back to homepage",
        "legal.imprint" to "Legal notice",
        "legal.privacyPolicy" to "Privacy policy",
        "logs.actions" to "Actions",
        "logs.all" to "All",
        "logs.apiRequests" to "API Requests",
        "logs.applyFilters" to "Apply filter",
        "logs.backend" to "Backend Settings",
        "logs.clearFilters" to "Revert",
        "logs.cronJobs" to "Cron Jobs",
        "logs.details" to "Details",
        "logs.displayed" to "displayed",
        "logs.displayedLabel" to "Viewed",
        "logs.error" to "Error",
        "logs.errorLabel" to "Error",
        "logs.errorLoading" to "Error loading logs",
        "logs.executionTime" to "Execution time",
        "logs.from" to "From",
        "logs.httpMethod" to "HTTP Method",
        "logs.justNow" to "just now",
        "logs.loadingLogs" to "Loading logs...",
        "logs.logDetails" to "Log Detail",
        "logs.logDetailsLabels.error" to "Error",
        "logs.logDetailsLabels.executionTime" to "Execution time",
        "logs.logDetailsLabels.ip" to "IP",
        "logs.logDetailsLabels.method" to "Method",
        "logs.logDetailsLabels.path" to "path",
        "logs.logDetailsLabels.requestBody" to "Request Body",
        "logs.logDetailsLabels.responseBody" to "Response Body",
        "logs.logDetailsLabels.schedulerJob" to "Scheduler Job",
        "logs.logDetailsLabels.status" to "status",
        "logs.logDetailsLabels.time" to "Time",
        "logs.logDetailsLabels.type" to "Type",
        "logs.logType" to "Log Type",
        "logs.logTypeLabels.api_request" to "API Request",
        "logs.logTypeLabels.cron_job" to "Cron Job",
        "logs.logTypeLabels.manual" to "Manual",
        "logs.logTypeLabels.scheduler" to "scheduler",
        "logs.manual" to "Manual Executions",
        "logs.method" to "Method",
        "logs.minutesAgo" to "{n} minutes ago",
        "logs.mytischtennis" to "myTischtennis",
        "logs.next" to "Next ",
        "logs.of" to "by",
        "logs.ownBackend" to "Own backend",
        "logs.page" to "Page",
        "logs.path" to "path",
        "logs.pathPlaceholder" to "e.g. /api/diary",
        "logs.previous" to "Previous",
        "logs.recordsFound" to "Records found",
        "logs.scheduler" to "scheduler",
        "logs.secondsAgo" to "{n} seconds ago",
        "logs.status" to "status",
        "logs.subtitle" to "Overview of all API requests, responses and executions",
        "logs.successfullyLoaded" to "Loaded successfully",
        "logs.time" to "Time",
        "logs.title" to "System Logs",
        "logs.to" to "To",
        "logs.total" to "Total",
        "logs.type" to "Type",
        "matchReport.analyzeNuscore" to "nuscore analysis",
        "matchReport.createLocalCopy" to "Create local copy",
        "matchReport.hideAnalyzer" to "Hide Analyzer",
        "matchReportApi.availablePlayers" to "Available Players",
        "matchReportApi.bothTeamsAppeared" to "Both teams competed",
        "matchReportApi.clickToRemove" to "Click to remove",
        "matchReportApi.completed" to "Closed",
        "matchReportApi.completion" to "Completion",
        "matchReportApi.endTime" to "end time",
        "matchReportApi.errorLoading" to "Error loading data",
        "matchReportApi.general" to "General",
        "matchReportApi.greeting" to "Welcoming",
        "matchReportApi.guestLineup" to "Guest setup",
        "matchReportApi.guestPin" to "PIN Guest Club",
        "matchReportApi.guestTeamNotAppeared" to "Guest team {team} not competed",
        "matchReportApi.homeLineup" to "Installation at home",
        "matchReportApi.homePin" to "PIN Home Club",
        "matchReportApi.homeTeamNotAppeared" to "Home team {team} not competed",
        "matchReportApi.loading" to "Loading match report data...",
        "matchReportApi.noLineupData" to "No installation data available",
        "matchReportApi.notAppeared" to "Not participated for all",
        "matchReportApi.pending" to "Pending",
        "matchReportApi.pinInput" to "PIN input",
        "matchReportApi.playSystem" to "Gaming system",
        "matchReportApi.rank" to "Circle",
        "matchReportApi.result" to "Entering results",
        "matchReportApi.retry" to "Try again",
        "matchReportApi.selectedPlayers" to "Selected Player",
        "matchReportApi.setCurrentTime" to "Set current time",
        "matchReportApi.signLineup" to "Sign installation",
        "matchReportApi.startTime" to "start time",
        "matchReportApi.status" to "status",
        "matchReportApi.vs" to "vs",
        "matchReportHeaderActions.copied" to "Copied!",
        "matchReportHeaderActions.copyError" to "Error copying pin",
        "matchReportHeaderActions.copyPin" to "Copy PIN",
        "matchReportHeaderActions.copyPinTitle" to "Copy to clipboard",
        "matchReportHeaderActions.insertPin" to "INSERT YOUR PIN",
        "matchReportHeaderActions.insertPinTitle" to "Auto insert",
        "matchReportHeaderActions.noPinAvailable" to "No PIN AVAILABLE",
        "memberActivities.activity" to "Exercise",
        "memberActivities.all" to "All",
        "memberActivities.close" to "Close",
        "memberActivities.dates" to "Data",
        "memberActivities.frequency" to "Frequency",
        "memberActivities.last3Months" to "Last 3 months",
        "memberActivities.last4Weeks" to "last 2 months",
        "memberActivities.last6Months" to "last half year",
        "memberActivities.lastYear" to "Last year",
        "memberActivities.loading" to "Loading exercises...",
        "memberActivities.more" to "other",
        "memberActivities.noActivities" to "No exercises found in the selected period.",
        "memberActivities.period" to "Time period",
        "memberActivities.showLess" to "show less",
        "memberActivities.title" to "Exercises by",
        "memberGallery.imageSize" to "Image Size",
        "memberGallery.loading" to "Loading gallery...",
        "memberGallery.noImage" to "No Image",
        "memberGallery.noMembersWithImages" to "No members found with images.",
        "memberGallery.title" to "Members Gallery",
        "memberGallery.titleWithDate" to "Member Gallery - Click on an image to add as a participant",
        "memberNotes.add" to "Add",
        "memberNotes.memberImage" to "Image Member",
        "memberNotes.newNote" to "New note",
        "memberNotes.notes" to "Notes",
        "memberNotes.phone" to "Telephone no. ",
        "memberNotes.selectTags" to "Select Tags",
        "memberNotes.tags" to "Tags",
        "memberNotes.title" to "Notes for",
        "members.actions" to "Actions",
        "members.active" to "Active",
        "members.activeMembers" to "Active members",
        "members.addEmail" to "Add email address",
        "members.addGroup" to "Add group...",
        "members.addPhone" to "Add phone number",
        "members.address" to "Address",
        "members.adultReleaseApproved" to "Approved for adults",
        "members.adultReserveApproved" to "Adult reserve",
        "members.adults" to "Adults (18+)",
        "members.age" to "Age",
        "members.ageFromPlaceholder" to "from",
        "members.ageGroup" to "Age group",
        "members.ageRange" to "Age from - to",
        "members.ageToPlaceholder" to "to",
        "members.batchFormsMarkedEmpty" to "There are no unverified forms in the current selection.",
        "members.batchFormsMarkedSuccess" to "Marked {count} form(s) as verified.",
        "members.batchMarkedRegularEmpty" to "There are no trial members in the current selection.",
        "members.batchMarkedRegularSuccess" to "Marked {count} trial member(s) as regular.",
        "members.batchPartialFailure" to "{success} succeeded, {failed} failed.",
        "members.birthdate" to "Birthdate",
        "members.bulkActions" to "Bulk actions",
        "members.camera" to "Camera",
        "members.change" to "Change",
        "members.city" to "City",
        "members.clearFields" to "Clear fields",
        "members.clearFilters" to "Reset filters",
        "members.clickTtRequestAction" to "Request click-TT eligibility",
        "members.clickTtRequestConfirm" to "Start the automated Click-TT request for {name}?",
        "members.clickTtRequestError" to "The Click-TT request could not be submitted.",
        "members.clickTtRequestFailedLog" to "Click-TT request failed",
        "members.clickTtRequestHint" to "The request is processed automatically by the backend Click-TT workflow.",
        "members.clickTtRequestPending" to "Click-TT request in progress",
        "members.clickTtRequestPendingShort" to "Pending ...",
        "members.clickTtRequestShort" to "Click TT",
        "members.clickTtRequestSuccess" to "Please sign in to click-tt and submit the request there.",
        "members.clickTtRequestTitle" to "Start Click-TT request",
        "members.clickTtSubmitted" to "Click-TT submitted",
        "members.closeEditor" to "Close editor",
        "members.composeEmail" to "Compose email",
        "members.contact" to "Contact",
        "members.copyContactSummary" to "Copy contact summary",
        "members.copyContactSummarySuccess" to "Contact summary copied to clipboard.",
        "members.copyEmails" to "Copy emails",
        "members.copyEmailsEmpty" to "There are no email addresses in the current selection.",
        "members.copyEmailsSuccess" to "Email list copied to clipboard.",
        "members.copyPhones" to "Copy phones",
        "members.copyPhonesEmpty" to "There are no phone numbers in the current selection.",
        "members.copyPhonesSuccess" to "Phone list copied to clipboard.",
        "members.create" to "Create",
        "members.createNewMember" to "Create new member",
        "members.dataIssueAddress" to "Address missing",
        "members.dataIssueBirthdate" to "Birthdate missing",
        "members.dataIssueCity" to "Town/city missing",
        "members.dataIssueEmail" to "Email missing",
        "members.dataIssueGender" to "Gender unclear",
        "members.dataIssuePhone" to "Phone missing",
        "members.dataIssuePostalCode" to "Postcode missing",
        "members.dataIssueStreet" to "Street missing",
        "members.dataIssueTrainingGroup" to "Training group missing",
        "members.dataQuality" to "Data quality",
        "members.dataQualityComplete" to "Data complete",
        "members.deactivateMember" to "Deactivate member",
        "members.deactivateMemberConfirm" to "Do you really want to deactivate \"{name}\"?",
        "members.deactivateMemberTitle" to "Deactivate member",
        "members.deleteImageConfirm" to "Do you really want to delete this image?",
        "members.deleteImageTitle" to "Delete image",
        "members.editHint" to "Click a row to open the editor.",
        "members.editMember" to "Edit member",
        "members.editorAssignTrainingGroupHint" to "Please assign at least one training group.",
        "members.editorCreateHint" to "Create a new member and capture contact details directly.",
        "members.editorEditHint" to "Edit the details for {name}.",
        "members.editorRecommendedEntry" to "Recommended entry",
        "members.emailAddress" to "Email address",
        "members.emailAddressShort" to "Email address",
        "members.emails" to "Email addresses",
        "members.errorAddingToGroup" to "Error adding to group",
        "members.errorDeactivatingMember" to "Error deactivating member",
        "members.errorDeletingImage" to "Image could not be deleted",
        "members.errorLoadingImage" to "Error loading image",
        "members.errorLoadingMembers" to "Failed to load the member list.",
        "members.errorLoadingTrainingParticipations" to "Error loading training participations",
        "members.errorMarkingForm" to "Error marking the form.",
        "members.errorRemovingFromGroup" to "Error removing from group",
        "members.errorRemovingTestMembership" to "Error removing the trial membership.",
        "members.errorRotatingImage" to "Error rotating image",
        "members.errorSavingMember" to "Error saving member",
        "members.errorSettingPrimaryImage" to "Primary image could not be set",
        "members.errorTransfer" to "Transfer error",
        "members.errorUpdatingRatings" to "Error updating TTR/QTTR values",
        "members.errorUploadingImage" to "Image could not be uploaded",
        "members.exercises" to "Exercises",
        "members.exportCsv" to "Export CSV",
        "members.exportCsvFile" to "member-selection.csv",
        "members.exportEmails" to "Email",
        "members.exportMembersSelected" to "members currently selected",
        "members.exportPhones" to "Phone",
        "members.exportPreview" to "Export preview",
        "members.exportPreviewEmpty" to "No members in the current selection",
        "members.exportPreviewNames" to "Preview",
        "members.exportReachableByEmail" to "with email address",
        "members.exportReachableByPhone" to "with phone number",
        "members.firstName" to "First name",
        "members.formHandedOver" to "Membership form handed over",
        "members.formMarkedAsHandedOver" to "Membership form marked as handed over.",
        "members.gender" to "Gender",
        "members.genderDiverse" to "Diverse",
        "members.genderFemale" to "Female",
        "members.genderMale" to "Male",
        "members.genderUnknown" to "Unknown",
        "members.generatePhoneList" to "Generate phone list",
        "members.groupPhotoCrop" to "Process group photo",
        "members.groupPhotoCropSaved" to "Member photo saved from group photo.",
        "members.image" to "Image",
        "members.imageDeleted" to "Image deleted.",
        "members.imageInternet" to "Image (web?)",
        "members.imagePreview" to "Member image preview",
        "members.imageUpdated" to "Image updated",
        "members.inactive" to "inactive",
        "members.inactiveMembers" to "Inactive members",
        "members.j11" to "U11",
        "members.j13" to "U13",
        "members.j15" to "U15",
        "members.j17" to "U17 (17 and younger)",
        "members.j19" to "U19",
        "members.j9" to "U9",
        "members.lastName" to "Last name",
        "members.lastTrainingFilter" to "Last training",
        "members.lastTrainingFilterHasDate" to "With a recorded date",
        "members.lastTrainingFilterHint" to "Age-class column: current and next season. Extra detail (last training, participations) on row hover.",
        "members.lastTrainingFilterNoDate" to "No last training",
        "members.lastTrainingFilterNotInTraining" to "Flagged “no longer training”",
        "members.loadingMembers" to "Loading members...",
        "members.m11" to "G11",
        "members.m13" to "G13",
        "members.m15" to "G15",
        "members.m19" to "G19",
        "members.m9" to "G9",
        "members.markFormReceived" to "Mark form verified",
        "members.markFormsForSelection" to "Verify forms for selection",
        "members.markRegular" to "Mark regular",
        "members.markRegularForSelection" to "Mark selection regular",
        "members.memberDeactivated" to "Member deactivated",
        "members.memberDetails" to "Member details",
        "members.memberFormHandedOver" to "Membership form handed over",
        "members.memberImage" to "Member image",
        "members.memberImages" to "Member images",
        "members.memberInfo" to "Member info",
        "members.memberScope" to "Member scope",
        "members.missingTtrHistoryId" to "No myTischtennis ID stored",
        "members.name" to "Surname, first name",
        "members.newMember" to "New member",
        "members.noAddressShort" to "No address",
        "members.noEmailShort" to "No email",
        "members.noGroupsAssigned" to "No groups assigned",
        "members.noGroupsAvailable" to "No groups available",
        "members.noOpenTasks" to "No open tasks",
        "members.noPhoneShort" to "No phone",
        "members.notes" to "Notes",
        "members.noTestMembership" to "No longer a trial member",
        "members.notInTrainingTooltip" to "No participation for {weeks} training weeks",
        "members.onlyActiveMembers" to "Only active members are included",
        "members.openTasks" to "Open tasks",
        "members.parent" to "Parent",
        "members.parentFallback" to "Parent",
        "members.parentName" to "Name (e.g. mother, father)",
        "members.phoneList" to "phone-list.pdf",
        "members.phoneListForSelection" to "Phone list for selection",
        "members.phoneListSelectionFile" to "phone-list-selection.pdf",
        "members.phoneNumber" to "Phone number",
        "members.phoneNumberShort" to "Phone no.",
        "members.phones" to "Phone numbers",
        "members.picsInInternetAllowed" to "Pictures allowed online",
        "members.postalCode" to "Postcode",
        "members.previewLastTraining" to "Last training",
        "members.previewNoLastTraining" to "No participation yet",
        "members.primary" to "Primary",
        "members.primaryImageUpdated" to "Primary image updated.",
        "members.remove" to "Remove",
        "members.resultsVisible" to "members visible",
        "members.rowTooltipSeparator" to "·",
        "members.scopeActive" to "Active",
        "members.scopeActiveDataIncomplete" to "Active + data incomplete",
        "members.scopeActiveTest" to "Active + trial",
        "members.scopeAll" to "All",
        "members.scopeDataIncomplete" to "Data incomplete",
        "members.scopeInactive" to "Inactive",
        "members.scopeNeedsForm" to "Form unverified",
        "members.scopeNotTraining" to "No longer training",
        "members.scopeTest" to "Trial",
        "members.search" to "Search",
        "members.searchAndFilter" to "Search and filter",
        "members.searchPlaceholder" to "Search by name, city, phone or email",
        "members.selectFile" to "Select file",
        "members.showInactiveMembers" to "Show inactive members",
        "members.showTrainingParticipationsColumn" to "Show “Training participations” column",
        "members.showTtrHistory" to "Show TTR history",
        "members.sixOrMoreParticipations" to "6 or more training participations",
        "members.sortAge" to "Age",
        "members.sortBirthday" to "Birthday",
        "members.sortBy" to "Sort by",
        "members.sortFirstName" to "First name",
        "members.sortLastName" to "Last name",
        "members.sortLastTraining" to "Last training",
        "members.sortOpenTasks" to "Open tasks",
        "members.sortQttr" to "QTTR value",
        "members.status" to "status",
        "members.street" to "Street",
        "members.subtitle" to "Search, filter and edit members directly.",
        "members.taskActionMarkRegular" to "Mark regular",
        "members.taskActionRequest" to "Request",
        "members.taskActionReview" to "Open",
        "members.taskActionVerify" to "Verify",
        "members.taskAssignTrainingGroup" to "Assign training group",
        "members.taskCheckClickTt" to "Review Click-TT eligibility",
        "members.taskCheckDataQuality" to "Review data quality",
        "members.taskCheckTrainingStatus" to "Review training status",
        "members.taskReviewTrialStatus" to "Review trial status",
        "members.taskVerifyForm" to "Verify form",
        "members.testMember" to "Trial",
        "members.testMembers" to "Trial members",
        "members.testMembership" to "Trial membership",
        "members.testMembershipRemoved" to "Trial membership removed.",
        "members.threeOrMoreParticipations" to "3 or more training participations",
        "members.title" to "Members",
        "members.toggleSortDirection" to "Toggle sort direction",
        "members.trainingGroups" to "Training groups",
        "members.trainingParticipations" to "Training participations",
        "members.transferErrorTitle" to "Transfer error",
        "members.transferMembers" to "Transfer members",
        "members.transferSuccessTitle" to "Transfer successful",
        "members.ttAdult" to "Adults (not youth by cutoff)",
        "members.ttAgeClassCol" to "Age class (TT)",
        "members.ttFilterGroupJ" to "Boys & girls (mixed)",
        "members.ttFilterGroupM" to "Girls only",
        "members.ttrQttr" to "TTR/QTTR",
        "members.ttSeasonCurrentTag" to "current",
        "members.ttSeasonFilter" to "Season (cutoff)",
        "members.ttSeasonNextTag" to "upcoming",
        "members.ttStichtagHint" to "Cutoff 1 Jan (DTTB). Boys: J classes only. Girls: J and M.",
        "members.updateRatings" to "Update TTR/QTTR from myTischtennis",
        "members.updating" to "Updating...",
        "members.visibleMembers" to "Visible members",
        "members.wantsToPlay" to "Wants to play",
        "memberSelection.close" to "Close",
        "memberSelection.deselectAll" to "Deselect all",
        "memberSelection.generatePdf" to "Generate PDF",
        "memberSelection.members" to "Members",
        "memberSelection.noRecommendations" to "No matching recommendations found.",
        "memberSelection.recommendations" to "Recommendations",
        "memberSelection.selectAll" to "Select All",
        "memberSelection.title" to "Select Members",
        "memberTransfer.additionalField" to "Extra field",
        "memberTransfer.additionalFieldExample1" to "Additional field (e.g. client_id)",
        "memberTransfer.additionalFieldExample2" to "Additional field (e.g. client_secret)",
        "memberTransfer.analyzeAndImport" to "Analyze and Import Template",
        "memberTransfer.availablePlaceholders" to "Available placeholders",
        "memberTransfer.bulkMode" to "Bulk import mode (transfer all members at once)",
        "memberTransfer.bulkModeActive" to "Mode active",
        "memberTransfer.bulkModeActiveDescription" to "The template defines the format for a single member. The members are automatically wrapped in an array. You can optionally define the external structure in the \"bulk wrapper template\" (see below).",
        "memberTransfer.bulkModeHint" to "If enabled, all members in a request are transferred as an array.",
        "memberTransfer.bulkWrapperDescription" to "Optionally, you can define the outer structure into which the member array will be inserted. Use PLACEHOLDER_MEMBERS as placeholders for the array of members.",
        "memberTransfer.bulkWrapperNote" to "Note: If no wrapper template is specified, a members array is automatically used.",
        "memberTransfer.bulkWrapperTemplate" to "Bulk wrapper template (optional)",
        "memberTransfer.bulkWrapperWhat" to "What is a bulk wrapper template?",
        "memberTransfer.configDeleted" to "Configuration deleted successfully!",
        "memberTransfer.configInfo" to "Configure the settings for transferring members to external systems here. These settings are saved on a club-specific basis.",
        "memberTransfer.configSaved" to "Configuration saved successfully",
        "memberTransfer.confirmDelete" to "Delete configuration",
        "memberTransfer.confirmDeleteMessage" to "Are you sure you want to refund this transaction?",
        "memberTransfer.deleteConfig" to "Delete configuration",
        "memberTransfer.deleting" to "clearing...",
        "memberTransfer.errorDeleting" to "Error clearing",
        "memberTransfer.errorLoading" to "Error Loading Config",
        "memberTransfer.errorParsingTemplate" to "Error parsing template",
        "memberTransfer.errorSaving" to "Error while saving",
        "memberTransfer.example" to "Example",
        "memberTransfer.exampleFormData" to "Example of form data format",
        "memberTransfer.exampleJson" to "Example of JSON format (recommended)",
        "memberTransfer.exampleXml" to "Example of XML format",
        "memberTransfer.formDataHint" to "For form data, use a simple text template with lines in the format feldname=placeholder:",
        "memberTransfer.httpMethod" to "HTTP Method",
        "memberTransfer.importTemplate" to "Import template from full example",
        "memberTransfer.importTemplateHint" to "Include a full sample template (with sample members). The system will automatically detect the member template and bulk wrapper template.",
        "memberTransfer.importTemplatePlaceholder" to "Insert a full example template here, e.g.:\nLBRACE\n  December: [\n    LBRACE\n      D .firstNameD.: D .MaxD.,\n      D. LastNameD.: D. MustermannD.,\n      DMail: DMaxATexample.comMail: DMaxATexample.com\n    RBRACE\n  ]\nRBRACE",
        "memberTransfer.invalidJson" to "Please ensure valid JSON is used.",
        "memberTransfer.invalidTemplateFormat" to "Invalid template format",
        "memberTransfer.loadingConfig" to "Loading configuration...",
        "memberTransfer.loginConfiguration" to "Login Configuration",
        "memberTransfer.loginData" to "Login data",
        "memberTransfer.loginEndpointHint" to "Optional: Relative path to login endpoint (e.g. /api/auth/login)",
        "memberTransfer.loginEndpointPath" to "Login Endpoint Path",
        "memberTransfer.loginEndpointPlaceholder" to "/api/auth/login",
        "memberTransfer.loginFormat" to "Login Format",
        "memberTransfer.membersArray" to "Member Array",
        "memberTransfer.password" to "Password",
        "memberTransfer.passwordEncrypted" to "Passwords are stored encrypted.",
        "memberTransfer.placeholderHint" to "Click on a placeholder to insert it at the current cursor position:",
        "memberTransfer.placeholders.address" to "Combined Address",
        "memberTransfer.placeholders.addressDesc" to "Street and town combined",
        "memberTransfer.placeholders.birthDate" to "Date of birth",
        "memberTransfer.placeholders.birthDateAlt" to "Date of birth (old)",
        "memberTransfer.placeholders.birthDateAltDesc" to "Date of birth in the format YYYY-MM-DD (alternative name)",
        "memberTransfer.placeholders.birthDateDesc" to "in the format YYYY-MM-DD",
        "memberTransfer.placeholders.city" to "Location",
        "memberTransfer.placeholders.cityDesc" to "Place of Residence",
        "memberTransfer.placeholders.email" to "Email Address",
        "memberTransfer.placeholders.emailDesc" to "Member's email address",
        "memberTransfer.placeholders.firstName" to "First name",
        "memberTransfer.placeholders.firstNameDesc" to "Member First Name",
        "memberTransfer.placeholders.fullName" to "Full name ",
        "memberTransfer.placeholders.fullNameDesc" to "First name and last name combined",
        "memberTransfer.placeholders.gender" to "Sex",
        "memberTransfer.placeholders.genderDesc" to "Gender of the member",
        "memberTransfer.placeholders.lastName" to "Surname",
        "memberTransfer.placeholders.lastNameDesc" to "Member Last Name",
        "memberTransfer.placeholders.phone" to "Phone Number",
        "memberTransfer.placeholders.phoneDesc" to "Staff Member's Phone",
        "memberTransfer.placeholders.qttr" to "QTTR value",
        "memberTransfer.placeholders.qttrDesc" to "Member QTTR Value",
        "memberTransfer.placeholders.street" to "Street",
        "memberTransfer.placeholders.streetDesc" to "Street and house number",
        "memberTransfer.placeholders.ttr" to "TTR value",
        "memberTransfer.placeholders.ttrDesc" to "Member TTR Value",
        "memberTransfer.save" to "Save",
        "memberTransfer.saving" to "Saving...",
        "memberTransfer.serverBaseUrl" to "Server Base URL",
        "memberTransfer.serverBaseUrlHint" to "Base URL of the server (e.g. https://example.com)",
        "memberTransfer.serverBaseUrlPlaceholder" to "https://example.com",
        "memberTransfer.serverConfiguration" to "Server -configuration",
        "memberTransfer.templateDescription" to "The template defines the format in which the member data is transferred to the external system. Use placeholders such as PLACEHOLDER_FIRSTNAME to automatically replace the data.",
        "memberTransfer.templateImported" to "Template imported successfully.",
        "memberTransfer.templateImportedBulk" to "Member template detected, bulk mode enabled.",
        "memberTransfer.templateImportedDetails" to "Member and bulk wrapper templates have been detected and completed.",
        "memberTransfer.templateImportedSingle" to "Single member template detected.",
        "memberTransfer.templateTip" to "Tip: Place the cursor in the desired place in the template and click on a placeholder to insert it. Placeholders are automatically replaced by the actual member data when they are transferred.",
        "memberTransfer.templateWhat" to "What is a template?",
        "memberTransfer.title" to "Member Transfer - Settings",
        "memberTransfer.transferConfiguration" to "Transmission Configuration",
        "memberTransfer.transferConfigurationTitle" to "Transmission Configuration",
        "memberTransfer.transferEndpointHint" to "Relative path to the transmission endpoint (e.g. /api/members/bulk)",
        "memberTransfer.transferEndpointPath" to "Transmission Endpoint Path",
        "memberTransfer.transferEndpointPlaceholder" to "/api/members/bulk",
        "memberTransfer.transferFormat" to "Transmission format",
        "memberTransfer.transferTemplate" to "Transfer Template",
        "memberTransfer.usernameEmail" to "Username / email",
        "memberTransferDialog.additionalErrors" to "additional faults",
        "memberTransferDialog.additionalFieldPlaceholder" to "Additional field (e.g. client_id)",
        "memberTransferDialog.additionalFieldPlaceholderForm" to "Field name: Value (e.g. client_id: abc123)",
        "memberTransferDialog.bulkImport" to "Bulk Import",
        "memberTransferDialog.cancel" to "Cancel",
        "memberTransferDialog.editConfig" to "Edit the configuration.",
        "memberTransferDialog.endpoint" to "Endpoint",
        "memberTransferDialog.excludedMembers" to "Excluded members (missing mandatory fields)",
        "memberTransferDialog.format" to "Format",
        "memberTransferDialog.goToSettings" to "Settings Where to?",
        "memberTransferDialog.loadingConfig" to "Loading saved configuration",
        "memberTransferDialog.loginData" to "Login data",
        "memberTransferDialog.loginDataHint" to "The login details are used from the settings. You can overwrite them here if necessary.",
        "memberTransferDialog.loginDataOverride" to "Login details (optional overwrite)",
        "memberTransferDialog.loginDataOverrideHint" to "Only fill in if you want to overwrite the saved login data. Empty fields use the stored values.",
        "memberTransferDialog.method" to "Method",
        "memberTransferDialog.mode" to "mode",
        "memberTransferDialog.noConfigFound" to "No configuration found",
        "memberTransferDialog.noConfigMessage" to "Please configure the member transfer in the settings first.",
        "memberTransferDialog.passwordPlaceholder" to "Password (leave blank for saved)",
        "memberTransferDialog.server" to "Server",
        "memberTransferDialog.single" to "Single",
        "memberTransferDialog.title" to "Transfer Members",
        "memberTransferDialog.transfer" to "Transferred",
        "memberTransferDialog.transferConfiguration" to "Transmission Configuration",
        "memberTransferDialog.transferError" to "Error during transmission",
        "memberTransferDialog.transferFailed" to "Transfer failed",
        "memberTransferDialog.transferring" to "Communicating...",
        "memberTransferDialog.transferSuccess" to "{transferred} successfully transferred by {total} members.",
        "memberTransferDialog.usernameEmail" to "Username / email",
        "messages.cancel" to "Cancel",
        "messages.confirm" to "Confirm",
        "messages.error" to "Error",
        "messages.fileTooLarge" to "File too large",
        "messages.imageMaxSize" to "The image must be a maximum of 5 MB.",
        "messages.info" to "information",
        "messages.invalidFile" to "Invalid file",
        "messages.note" to "Notice",
        "messages.pleaseSelectImageFile" to "Please select an image file.",
        "messages.recordsDisplayed" to "displayed",
        "messages.recordsFound" to "Records found",
        "messages.success" to "Success",
        "messages.successfullyLoaded" to "Loaded successfully",
        "messages.warning" to "Warning",
        "mobile.active" to "Active",
        "mobile.add" to "Add",
        "mobile.appLoading" to "Loading app",
        "mobile.calendarAgendaEmpty" to "No events in this month.",
        "mobile.calendarAgendaTitle" to "Events this month",
        "mobile.calendarAllSourcesFailed" to "Calendar data could not be loaded.",
        "mobile.calendarCancellationEnd" to "Until (optional)",
        "mobile.calendarCancellationHint" to "Hides recurring training times on those days.",
        "mobile.calendarCancellationInMonth" to "Cancellations this month",
        "mobile.calendarCancellationReason" to "Reason",
        "mobile.calendarCancellationSave" to "Save",
        "mobile.calendarCancellationStart" to "Date (YYYY-MM-DD)",
        "mobile.calendarCancellationTitle" to "Training cancelled",
        "mobile.calendarGridTitle" to "Month",
        "mobile.calendarLegend" to "Display",
        "mobile.calendarLegendCancellation" to "Cancellation",
        "mobile.calendarLegendHoliday" to "Public holiday",
        "mobile.calendarLegendMatch" to "League match",
        "mobile.calendarLegendOfficial" to "Participation",
        "mobile.calendarLegendSchool" to "School break",
        "mobile.calendarLegendTournament" to "Tournament",
        "mobile.calendarLegendTraining" to "Training",
        "mobile.calendarSourceCancellations" to "Training cancellations",
        "mobile.calendarSourceDiary" to "Diary",
        "mobile.calendarSourceFailed" to "not loaded",
        "mobile.calendarSourceHolidays" to "Holidays / school breaks",
        "mobile.calendarSourceMatches" to "League matches",
        "mobile.calendarSourceOfficial" to "Official participations",
        "mobile.calendarSourceTournaments" to "Tournaments",
        "mobile.calendarSourceTrainingTimes" to "Training times",
        "mobile.calendarSubtitle" to "Training, tournaments, matches and holidays for the month.",
        "mobile.calendarTitle" to "Calendar",
        "mobile.calendarToday" to "Today",
        "mobile.cancel" to "Cancel",
        "mobile.clubRequest" to "Request access",
        "mobile.clubRequested" to "Requested",
        "mobile.createDiaryEntry" to "Create entry",
        "mobile.deleteNote" to "Delete note",
        "mobile.deleteTag" to "Remove tag",
        "mobile.editTimes" to "Edit times",
        "mobile.emailAndPasswordRequired" to "Email and password are required",
        "mobile.entry" to "Entry",
        "mobile.inactive" to "Inactive",
        "mobile.language" to "Language",
        "mobile.lastTraining" to "Last training",
        "mobile.loginFailed" to "Login failed",
        "mobile.loginInProgress" to "Signing in...",
        "mobile.more" to "More",
        "mobile.new" to "New",
        "mobile.newNote" to "New note",
        "mobile.newTag" to "New tag",
        "mobile.noDiaryEntries" to "No diary entries yet",
        "mobile.noMembers" to "No members found",
        "mobile.noResults" to "No results",
        "mobile.noTimes" to "No times",
        "mobile.offlineCacheHint" to "No connection – showing last loaded data.",
        "mobile.participationTop" to "Top attendance",
        "mobile.refresh" to "Refresh",
        "mobile.requestedAccess" to "Requested",
        "mobile.role" to "Role",
        "mobile.saveEntry" to "Save",
        "mobile.search" to "Search",
        "mobile.select" to "Select",
        "mobile.sessionCheck" to "Check session",
        "mobile.sessionCheckFailed" to "Session check failed",
        "mobile.sessionInvalid" to "Session invalid",
        "mobile.sessionValid" to "Session valid",
        "mobile.status" to "Status",
        "mobile.user" to "User",
        "myTischtennis.about" to "About myTischtennis",
        "myTischtennis.aboutFeatures.fetch" to "Retrieve competition data directly",
        "myTischtennis.aboutFeatures.import" to "Automatically import tournament data",
        "myTischtennis.aboutFeatures.sync" to "Sync Player Results",
        "myTischtennis.aboutText" to "By linking your myTischtennis account, you can:",
        "myTischtennis.autoUpdates" to "Auto Update",
        "myTischtennis.club" to "Association (myTischtennis)",
        "myTischtennis.deleteAccount" to "Disconnect account",
        "myTischtennis.disabled" to "Unchecked",
        "myTischtennis.editAccount" to "Edit account",
        "myTischtennis.enabled" to "ON",
        "myTischtennis.fetchStatistics" to "Data Retrieval Statistics",
        "myTischtennis.lastFetch" to "Last Fetched:",
        "myTischtennis.lastLoginAttempt" to "Last login attempt",
        "myTischtennis.lastSuccessfulLogin" to "Last successful login",
        "myTischtennis.leagueTables" to "JoomSport Standings",
        "myTischtennis.linkAccount" to "Link account",
        "myTischtennis.linkedAccount" to "Linked Account",
        "myTischtennis.loadingStats" to "Loading stats",
        "myTischtennis.matchResults" to "Event Results",
        "myTischtennis.neverFetched" to "Never Retrieved",
        "myTischtennis.no" to "No",
        "myTischtennis.noAccount" to "No myTischtennis account linked.",
        "myTischtennis.passwordNote" to "Note: Saving the password is optional. If you do not save it, you will be asked for the password each time you synchronize.",
        "myTischtennis.passwordSaved" to "Password saved",
        "myTischtennis.passwordsEncrypted" to "Passwords are stored encrypted.",
        "myTischtennis.playerRatings" to "Player Ratings",
        "myTischtennis.refreshStats" to "Reload Stats",
        "myTischtennis.testLogin" to "Re-login",
        "myTischtennis.title" to "myTischtennis-Account",
        "myTischtennis.updateHistory" to "Update History",
        "myTischtennis.yes" to "Yes",
        "myTischtennisAccount.aboutDescription" to "By linking your myTischtennis account, you can:",
        "myTischtennisAccount.aboutFeature1" to "Automatically import tournament data",
        "myTischtennisAccount.aboutFeature2" to "Sync Player Results",
        "myTischtennisAccount.aboutFeature3" to "Retrieve competition data directly",
        "myTischtennisAccount.aboutHint" to "Saving the password is optional. If you do not save it, you will be asked for the password each time you synchronize.",
        "myTischtennisAccount.aboutMyTischtennis" to "About myTischtennis",
        "myTischtennisAccount.accountSaved" to "myTischtennis-Account successfully saved",
        "myTischtennisAccount.accountUnlinked" to "myTischtennis account successfully disconnected",
        "myTischtennisAccount.autoUpdates" to "Automatic updates:",
        "myTischtennisAccount.club" to "Association (myTischtennis):",
        "myTischtennisAccount.daysAgo" to "{count} days ago",
        "myTischtennisAccount.disabled" to "Unchecked",
        "myTischtennisAccount.editAccount" to "Edit account",
        "myTischtennisAccount.email" to "E-mail:",
        "myTischtennisAccount.enabled" to "ON",
        "myTischtennisAccount.errorLoadingAccount" to "Error loading myTischtennis account",
        "myTischtennisAccount.errorLoadingStatistics" to "Error loading fetch statistics",
        "myTischtennisAccount.errorUnlinking" to "Error disconnecting account",
        "myTischtennisAccount.fetchStatistics" to "Data Retrieval Statistics",
        "myTischtennisAccount.hoursAgo" to "{count} h ago",
        "myTischtennisAccount.justNow" to "just now",
        "myTischtennisAccount.lastFetch" to "Last Fetched:",
        "myTischtennisAccount.lastLoginAttempt" to "Last login attempt:",
        "myTischtennisAccount.lastSuccessfulLogin" to "Last successful login:",
        "myTischtennisAccount.leagueTables" to "JoomSport Standings",
        "myTischtennisAccount.linkAccount" to "Link account",
        "myTischtennisAccount.linkedAccount" to "Linked Account",
        "myTischtennisAccount.loading" to "Loading...",
        "myTischtennisAccount.loadingStatistics" to "Loading stats",
        "myTischtennisAccount.loginAgain" to "Re-login",
        "myTischtennisAccount.loginFailed" to "Login failed",
        "myTischtennisAccount.loginSuccessful" to "Login successful! Connection details updated.",
        "myTischtennisAccount.matchResults" to "Event Results",
        "myTischtennisAccount.minutesAgo" to "{count} min ago",
        "myTischtennisAccount.never" to "Never",
        "myTischtennisAccount.neverFetched" to "Never Retrieved",
        "myTischtennisAccount.no" to "No",
        "myTischtennisAccount.noAccountLinked" to "No myTischtennis account linked.",
        "myTischtennisAccount.passwordRequired" to "Password required",
        "myTischtennisAccount.passwordSaved" to "Password saved",
        "myTischtennisAccount.playerRatings" to "Player Ratings",
        "myTischtennisAccount.playersUpdated" to "Player Updated",
        "myTischtennisAccount.refreshStatistics" to "Reload Stats",
        "myTischtennisAccount.results" to "Results",
        "myTischtennisAccount.teams" to "Teams",
        "myTischtennisAccount.title" to "myTischtennis Account",
        "myTischtennisAccount.unlinkAccount" to "Disconnect account",
        "myTischtennisAccount.unlinkAccountConfirm" to "Are you sure you want to unlink the myTischtennis account?",
        "myTischtennisAccount.unlinkAccountTitle" to "Disconnect account",
        "myTischtennisAccount.updateHistory" to "Update History",
        "myTischtennisAccount.yes" to "Yes",
        "myTischtennisAccount.yesterday" to "yesterday",
        "myTischtennisDialog.appPassword" to "Your app password to confirm",
        "myTischtennisDialog.appPasswordHint" to "For security reasons, we need your app password to save the myTischtennis password.",
        "myTischtennisDialog.appPasswordPlaceholder" to "Your password for this app",
        "myTischtennisDialog.autoUpdateRatings" to "Enable automatic update ratings",
        "myTischtennisDialog.autoUpdateRatingsHint" to "The latest ratings from myTischtennis are automatically retrieved every day at 6:00 am. Requires saved password.",
        "myTischtennisDialog.autoUpdateWarning" to "For automatic updates, the myTischtennis password must be saved.",
        "myTischtennisDialog.cancel" to "Cancel",
        "myTischtennisDialog.editAccount" to "edit myTischtennis-Account",
        "myTischtennisDialog.email" to "myTischtennis-Email",
        "myTischtennisDialog.emailPlaceholder" to "Your myTischtennis email address",
        "myTischtennisDialog.errorLogin" to "Login error.",
        "myTischtennisDialog.errorSaving" to "Error saving Account",
        "myTischtennisDialog.linkAccount" to "link myTischtennis account",
        "myTischtennisDialog.loadingLoginForm" to "Loading Login Form...",
        "myTischtennisDialog.loggingIn" to "Log in...",
        "myTischtennisDialog.login" to "Log in",
        "myTischtennisDialog.password" to "myTischtennis-Password",
        "myTischtennisDialog.passwordPlaceholder" to "Your myTischtennis password",
        "myTischtennisDialog.passwordPlaceholderKeep" to "Leave blank to keep",
        "myTischtennisDialog.save" to "Save",
        "myTischtennisDialog.savePassword" to "save mytabletennis-password",
        "myTischtennisDialog.savePasswordHint" to "If enabled, your myTischtennis password will be stored encrypted so that automatic synchronizations are possible.",
        "myTischtennisDialog.saving" to "Saving...",
        "myTischtennisHistory.close" to "Close",
        "myTischtennisHistory.failed" to "That didnt work.",
        "myTischtennisHistory.loading" to "Loading history...",
        "myTischtennisHistory.noHistory" to "No automatic updates performed yet.",
        "myTischtennisHistory.ratingsUpdated" to "Ratings updated",
        "myTischtennisHistory.successful" to "Successful",
        "myTischtennisHistory.title" to "Update Ratings History",
        "navigation.approvals" to "Approvals",
        "navigation.backToHome" to "Back to home",
        "navigation.billing" to "Billing",
        "navigation.clickTtAccount" to "HTTV / click-TT account",
        "navigation.clickTtBrowser" to "HTTV / click-TT",
        "navigation.clubSettings" to "Club Settings",
        "navigation.clubTournaments" to "Club Tournaments",
        "navigation.competitions" to "Competitions",
        "navigation.dailyBusiness" to "Daily Business",
        "navigation.diary" to "Diary",
        "navigation.home" to "Home",
        "navigation.login" to "Login",
        "navigation.logout" to "Logout",
        "navigation.logs" to "System Logs",
        "navigation.members" to "Members",
        "navigation.memberTransfer" to "Member Transfer",
        "navigation.myTischtennisAccount" to "myTischtennis Account",
        "navigation.orders" to "Orders",
        "navigation.permissions" to "Permissions",
        "navigation.personalSettings" to "Personal Settings",
        "navigation.predefinedActivities" to "Predefined Activities",
        "navigation.register" to "Register",
        "navigation.schedule" to "Schedules",
        "navigation.settings" to "Settings",
        "navigation.statistics" to "Training Statistics",
        "navigation.teamManagement" to "Team Management",
        "navigation.tournamentParticipations" to "Official tournaments & participations",
        "navigation.tournaments" to "Tournaments",
        "nuscoreAnalyzer.analysisComplete" to "✅ Analysis completed: {count} resources found",
        "nuscoreAnalyzer.analyze" to "🔍 nuscore analysis",
        "nuscoreAnalyzer.analyzing" to "Analyzing...",
        "nuscoreAnalyzer.createLocalCopy" to "Create 🏗️ local copy",
        "nuscoreAnalyzer.creating" to "🏗️ Creating...",
        "nuscoreAnalyzer.description" to "Analyzes and downloads nuscore resources for local use",
        "nuscoreAnalyzer.downloading" to "⬇️ Downloading...",
        "nuscoreAnalyzer.downloadResources" to "Download resources",
        "nuscoreAnalyzer.foundResources" to "📋 Resources found:",
        "nuscoreAnalyzer.log" to "Log",
        "nuscoreAnalyzer.pageLoaded" to "✅ nuscore page loaded",
        "nuscoreAnalyzer.startAnalysis" to "🔍 Starting nuscore analysis...",
        "nuscoreAnalyzer.title" to "🔍 nuscore Analyzer",
        "officialTournaments.action" to "Action",
        "officialTournaments.age" to "Age",
        "officialTournaments.ageClassCompetition" to "Age Group/Competition",
        "officialTournaments.ageClasses" to "Age classes",
        "officialTournaments.all" to "All",
        "officialTournaments.birthDate" to "Date of birth",
        "officialTournaments.checkBoxToActivate" to "Enable checkbox",
        "officialTournaments.competition" to "Competitor",
        "officialTournaments.competitions" to "Competitions",
        "officialTournaments.competitionTypes" to "Competition Types:",
        "officialTournaments.cutoffDate" to "Effective date:",
        "officialTournaments.date" to "Date",
        "officialTournaments.dateTime" to "Date:",
        "officialTournaments.deadlineDate" to "Registration deadline (date):",
        "officialTournaments.deadlineOnline" to "Registration deadline (online):",
        "officialTournaments.deadlines" to "Registration deadlines:",
        "officialTournaments.deadlinesByAgeClass" to "Registration deadlines for each AK:",
        "officialTournaments.delete" to "Delete",
        "officialTournaments.editTitle" to "Edit Title",
        "officialTournaments.eligible" to "Eligible to Participate",
        "officialTournaments.entryFee" to "starting cash",
        "officialTournaments.entryFees" to "Attendance fees:",
        "officialTournaments.events" to "Happenings",
        "officialTournaments.finalRound" to "Finals Competition",
        "officialTournaments.hasPlayed" to "{0} played their turn.",
        "officialTournaments.last12Months" to "Last 12 months",
        "officialTournaments.last2Years" to "Past 2 Years",
        "officialTournaments.last3Months" to "Last 3 months",
        "officialTournaments.last6Months" to "Past 6 months",
        "officialTournaments.markAsParticipated" to "Mark as attended",
        "officialTournaments.markAsRegistered" to "Mark as logged in",
        "officialTournaments.member" to "Member",
        "officialTournaments.name" to "name",
        "officialTournaments.noEvents" to "No events available yet. Upload a PDF to get started.",
        "officialTournaments.notInterested" to "Not interested",
        "officialTournaments.openTo" to "Open to",
        "officialTournaments.participants" to "Participants",
        "officialTournaments.participantsPdf" to "Participant PDF",
        "officialTournaments.participated" to "Participated",
        "officialTournaments.participations" to "Tournament Participations",
        "officialTournaments.pdfForSelectedMembers" to "PDF for flagged members",
        "officialTournaments.placement" to "Placement",
        "officialTournaments.preliminaryRound" to "1st Stage:",
        "officialTournaments.previousSeason" to "Previous Season",
        "officialTournaments.registered" to "Logged-In",
        "officialTournaments.resetStatus" to "Reset Status",
        "officialTournaments.results" to "Results",
        "officialTournaments.savedEvents" to "Saved Events",
        "officialTournaments.selectMembers" to "Select Members",
        "officialTournaments.showCompetitions" to "View Competitions",
        "officialTournaments.showEvents" to "View Saved Events",
        "officialTournaments.showParticipants" to "View Participant",
        "officialTournaments.showParticipations" to "View Tournament Shares",
        "officialTournaments.showResults" to "View Results",
        "officialTournaments.startTime" to "start time",
        "officialTournaments.startTimes" to "Start times:",
        "officialTournaments.status" to "status",
        "officialTournaments.timeRange" to "Period:",
        "officialTournaments.title" to "Title:",
        "officialTournaments.tournament" to "Tournament",
        "officialTournaments.updatePlacementError" to "Error updating placement",
        "officialTournaments.updateStatusError" to "Failed to update state",
        "officialTournaments.updateTitleError" to "This was unable to be saved.",
        "officialTournaments.uploadError" to "Error uploading PDF.",
        "officialTournaments.uploadPdf" to "Upload PDF",
        "officialTournaments.venues" to "Venues",
        "officialTournaments.wantsToParticipate" to "Want to Join",
        "orders.addOrder" to "Create order",
        "orders.budget" to "budget",
        "orders.club" to "Club",
        "orders.cost" to "Cost",
        "orders.dateAutoHint" to "The date is set automatically and every change is logged with a date.",
        "orders.errorLoading" to "Orders could not be loaded.",
        "orders.errorSaving" to "Order could not be saved.",
        "orders.filterAllClubs" to "All clubs",
        "orders.filterAllCompletionStates" to "All degrees",
        "orders.filterAllStatuses" to "All statuses",
        "orders.filterHandedOver" to "Item handed out",
        "orders.filterPaid" to "Paid",
        "orders.globalSubtitle" to "All orders across clubs can be viewed and managed here.",
        "orders.globalTitle" to "Orders Across All Clubs",
        "orders.history" to "History",
        "orders.item" to "Item",
        "orders.itemPlaceholder" to "e.g. shirt, hoodie or bat cover",
        "orders.loading" to "Loading orders...",
        "orders.member" to "Member",
        "orders.memberTitle" to "Orders: {name}",
        "orders.noOrdersGlobal" to "There are currently no orders.",
        "orders.noOrdersMember" to "There are no orders for this member yet.",
        "orders.open" to "Outstanding",
        "orders.orderDate" to "Created on",
        "orders.paid" to "Paid",
        "orders.paidConfirmed" to "Paid",
        "orders.searchPlaceholder" to "Search by club, member or item",
        "orders.showCompleted" to "Show completed ones",
        "orders.status" to "status",
        "orders.statusArrived" to "item arrived",
        "orders.statusDate" to "Last change",
        "orders.statusHandedOver" to "item handed over",
        "orders.statusOrdered" to "ordered",
        "orders.statusRequested" to "requested",
        "orders.title" to "Orders",
        "pdfGenerator.activityTimeBlock" to "Activity / Time Block",
        "pdfGenerator.allGames" to "All Cities",
        "pdfGenerator.alsoPlayable" to "Also playable",
        "pdfGenerator.birthDate" to "Date of birth",
        "pdfGenerator.clubLabel" to "Club:",
        "pdfGenerator.competition" to "Event",
        "pdfGenerator.competitionName" to "Competitor",
        "pdfGenerator.date" to "Date:",
        "pdfGenerator.diff" to "Diff",
        "pdfGenerator.duration" to "Minutes to Lockout",
        "pdfGenerator.fee" to "Fee",
        "pdfGenerator.generatedAt" to "Generated:",
        "pdfGenerator.group" to "Group",
        "pdfGenerator.groupLabel" to "Group",
        "pdfGenerator.groupMatrices" to "Group matrices",
        "pdfGenerator.hallShoes" to "Indoor shoes (must not rub off on the floor)",
        "pdfGenerator.hints" to "Notes:",
        "pdfGenerator.informTrainer" to "Since the club wants to take over the registration, inform the coaches at least one week before the tournament about the participation",
        "pdfGenerator.leagueLabel" to "League:",
        "pdfGenerator.lineupQttr" to "(Q)TTR",
        "pdfGenerator.member" to "Members:",
        "pdfGenerator.nameFirstName" to "Surname, first name",
        "pdfGenerator.noActivities" to "No activities recorded for this training day.",
        "pdfGenerator.noWhiteJersey" to "No white jersey",
        "pdfGenerator.officialTournament" to "Official Tournament",
        "pdfGenerator.oneHourBefore" to "Be in the hall one hour before the start of the competition",
        "pdfGenerator.overallRanking" to "Overall ranking (knockout rounds)",
        "pdfGenerator.periodLabel" to "Registration for:",
        "pdfGenerator.phoneList" to "Phone List - Active Members",
        "pdfGenerator.phoneNumber" to "Telephone no. ",
        "pdfGenerator.place" to "The square",
        "pdfGenerator.placement" to "Placement",
        "pdfGenerator.plannedLeagueLabel" to "Planned league:",
        "pdfGenerator.player" to "Skaters",
        "pdfGenerator.player1" to "Player 1",
        "pdfGenerator.player2" to "4 1/2 minutes",
        "pdfGenerator.points" to "Points",
        "pdfGenerator.recommendations" to "Recommendations",
        "pdfGenerator.result" to "Result",
        "pdfGenerator.round" to "Round",
        "pdfGenerator.seasonLabel" to "Season:",
        "pdfGenerator.sets" to "phrases",
        "pdfGenerator.sportShorts" to "Sports shorts (or sports skirts), preferably not white either",
        "pdfGenerator.startTime" to "start time",
        "pdfGenerator.status" to "status",
        "pdfGenerator.teamAgeGroupLabel" to "Team age group:",
        "pdfGenerator.teamGenderLabel" to "Team gender:",
        "pdfGenerator.teamLineupTitle" to "Team line-up",
        "pdfGenerator.teamNameLabel" to "Team:",
        "pdfGenerator.time" to "Time:",
        "pdfGenerator.timeBlock" to "Time block",
        "pdfGenerator.tournament" to "Tournament",
        "pdfGenerator.trainersPresent" to "The coaches try to be present at all tournaments.",
        "pdfGenerator.trainingPlan" to "Training plan",
        "pdfGenerator.venue" to "Location",
        "pdfGenerator.venues" to "Venues",
        "pdfGenerator.waterBottle" to "Have a bottle of water with you",
        "pendingApprovals.actions" to "Actions",
        "pendingApprovals.approve" to "Approve  ",
        "pendingApprovals.email" to "Email",
        "pendingApprovals.errorApproving" to "Error approving user",
        "pendingApprovals.errorLoadingRequests" to "failed to load pendings for %<%E%s%E%>",
        "pendingApprovals.errorRejecting" to "Error Rejecting User",
        "pendingApprovals.firstName" to "First name",
        "pendingApprovals.lastName" to "Surname",
        "pendingApprovals.noPendingRequests" to "No pending user requests.",
        "pendingApprovals.noPermission" to "No permission",
        "pendingApprovals.noPermissionDetails" to "Only admins can edit member requests.",
        "pendingApprovals.noPermissionMessage" to "You do not have permission to manage shares.",
        "pendingApprovals.reject" to "Dismiss",
        "pendingApprovals.title" to "Pending User Requests",
        "permissions.actions" to "Actions",
        "permissions.active" to "Active",
        "permissions.availableRoles" to "Available Roles",
        "permissions.baseRole" to "Base Role",
        "permissions.cancel" to "Cancel",
        "permissions.clickToActivate" to "Click to activate.",
        "permissions.clickToDeactivate" to "Click to disable",
        "permissions.clubMembers" to "Club members",
        "permissions.creator" to "Creator",
        "permissions.customize" to "Customize",
        "permissions.customizeInfo" to "Here you can make individual adjustments.",
        "permissions.email" to "Email",
        "permissions.errorLoadingData" to "Error loading data",
        "permissions.errorSavingPermissions" to "Error saving permissions",
        "permissions.errorUpdatingRole" to "Failed to update the role",
        "permissions.inactive" to "Unchecked",
        "permissions.loadingMembers" to "Inviting members...",
        "permissions.permissionsFor" to "Permissions for",
        "permissions.reset" to "Revert",
        "permissions.resetAll" to "Reset All",
        "permissions.role" to "Role",
        "permissions.save" to "Save",
        "permissions.status" to "status",
        "permissions.subtitle" to "Manage access rights for club members",
        "permissions.title" to "Credential management",
        "predefinedActivities.addImage" to "Add image",
        "predefinedActivities.cancel" to "Cancel",
        "predefinedActivities.code" to "Abbreviation",
        "predefinedActivities.createDrawing" to "Create Exercise Drawing",
        "predefinedActivities.deduplicate" to "Merge Duplicates",
        "predefinedActivities.delete" to "Delete",
        "predefinedActivities.description" to "Description",
        "predefinedActivities.duration" to "Duration minutes",
        "predefinedActivities.durationText" to "Duration (Text)",
        "predefinedActivities.durationTextPlaceholder" to "e.g. 2x7",
        "predefinedActivities.editActivity" to "Edit Activity",
        "predefinedActivities.editDrawing" to "Edit Exercise Drawing",
        "predefinedActivities.excludeFromStats" to "Exclude from statistics",
        "predefinedActivities.filterAll" to "All",
        "predefinedActivities.filterCustom" to "Custom",
        "predefinedActivities.filterStandard" to "Standard activities",
        "predefinedActivities.imageHelp" to "You can either enter a link to an image or upload an image:",
        "predefinedActivities.imageLink" to "Image link (optional)",
        "predefinedActivities.imageLinkPlaceholder" to "e.g. https://example.com/bild.jpg or /api/predefined-activities/:id/image/:imageId",
        "predefinedActivities.merge" to "Merge",
        "predefinedActivities.min" to "min",
        "predefinedActivities.name" to "name",
        "predefinedActivities.new" to "New",
        "predefinedActivities.newActivity" to "New Activity",
        "predefinedActivities.orUploadImage" to "Or upload image:",
        "predefinedActivities.reload" to "Re-Load",
        "predefinedActivities.searchPlaceholder" to "Search abbreviations (e.g. 'as vh us' or 'vh as us')...",
        "predefinedActivities.selectSource" to "Choose the source",
        "predefinedActivities.selectTarget" to "Select destination",
        "predefinedActivities.title" to "Predefined activities",
        "predefinedActivities.upload" to "Upload",
        "predefinedActivities.uploadAfterSave" to "Upload after saving",
        "predefinedActivities.uploadedImages" to "Uploaded video(s):",
        "predefinedActivities.uploadNote" to "Note: The image will not be uploaded until the activity is saved.",
        "privacy.clubData" to "Club/Activity Data",
        "privacy.consent" to "Consent-based operations",
        "privacy.cookies" to "Cookies/Local Storage",
        "privacy.dataCategories" to "Categories of personal data ",
        "privacy.logData" to "Logfiles",
        "privacy.memberData" to "Member details",
        "privacy.myTischtennisData" to "MyTischtennis data",
        "privacy.purposes" to "Purposes and legal bases of the processing",
        "privacy.recipients" to "Recipient",
        "privacy.registrationData" to "Registration/Profile Data",
        "privacy.responsible" to "Data Controller",
        "privacy.title" to "Privacy policy",
        "privacy.tournamentData" to "Tournament Data",
        "privacy.trainingData" to "Training data",
        "privacy.usage" to "Use of the training diary",
        "privacy.usageData" to "Usage data",
        "privacy.website" to "Preparation of the website",
        "quickAddMember.birthDate" to "Date of birth (optional)",
        "quickAddMember.cancel" to "Cancel",
        "quickAddMember.createAndAdd" to "Create & add new",
        "quickAddMember.firstName" to "First name",
        "quickAddMember.gender" to "Sex",
        "quickAddMember.lastName" to "Surname (optional)",
        "quickAddMember.pleaseSelect" to "Please select",
        "quickAddMember.title" to "Add new member",
        "schedule.activeSelection" to "Active selection",
        "schedule.addressLabel" to "Address",
        "schedule.adultSchedule" to "Adult schedule",
        "schedule.ageClass" to "Age group",
        "schedule.allLeagueMatches" to "All matches",
        "schedule.balls" to "Balls",
        "schedule.cancel" to "Cancel",
        "schedule.cityLabel" to "Postcode/city",
        "schedule.code" to "Code",
        "schedule.completedShort" to "Completed",
        "schedule.copyCode" to "Copy code",
        "schedule.copyGuestPin" to "Copy away PIN",
        "schedule.copyHomePin" to "Copy home PIN",
        "schedule.date" to "Date",
        "schedule.downloadPDF" to "Download PDF",
        "schedule.errorCopying" to "Error while copying",
        "schedule.errorImportingCSV" to "Failed to import the CSV file",
        "schedule.errorLoadingAdultSchedule" to "Failed to load the adult schedule",
        "schedule.errorLoadingGallery" to "The gallery could not be loaded.",
        "schedule.errorLoadingMatches" to "Failed to load matches",
        "schedule.errorLoadingMembers" to "Failed to load the member list.",
        "schedule.errorLoadingOverallSchedule" to "Failed to load the overall schedule",
        "schedule.errorLoadingTable" to "Failed to load league table data from myTischtennis",
        "schedule.errorLoadingTeams" to "Failed to load teams",
        "schedule.errorSavingPlayerSelection" to "Failed to save the player selection",
        "schedule.fetchDataFailed" to "Team data could not be fetched.",
        "schedule.fetchingTeamData" to "Fetching…",
        "schedule.fetchStartFailed" to "The fetch could not be started.",
        "schedule.fetchTeamData" to "Fetch schedule & results",
        "schedule.fetchTimedOut" to "Timed out while fetching data.",
        "schedule.gallery" to "Member gallery",
        "schedule.galleryLoading" to "Loading gallery…",
        "schedule.galleryTitle" to "Member gallery - click an image to mark as ready",
        "schedule.gamesFor" to "Matches for",
        "schedule.guestPin" to "Away PIN",
        "schedule.guestTeam" to "Away team",
        "schedule.homePin" to "Home PIN",
        "schedule.homeTeam" to "Home team",
        "schedule.imageSize" to "Image size",
        "schedule.importSchedule" to "Import schedule",
        "schedule.leagueTable" to "League table",
        "schedule.loadingMembers" to "Loading members...",
        "schedule.locationDialogTitle" to "Game room",
        "schedule.locationInfo" to "Location",
        "schedule.locationName" to "Game room",
        "schedule.matches" to "matches",
        "schedule.matchLabel" to "Game",
        "schedule.matchOverviewDescription" to "Controls which matches from the currently selected league are shown in the schedule.",
        "schedule.matchOverviewTitle" to "Match overview",
        "schedule.nextMatch" to "Next match",
        "schedule.noActiveMembers" to "No active members found",
        "schedule.noGames" to "No matches available",
        "schedule.noLeagueForTeam" to "No league is assigned to this team. Please assign a league first.",
        "schedule.noMatchesForPDF" to "No matches found to generate a PDF.",
        "schedule.noMatchingTeams" to "No teams match the current search.",
        "schedule.noMembersWithImages" to "No members with images found.",
        "schedule.noSelectionMessage" to "Choose the overall schedule, the adult schedule or a team from the left.",
        "schedule.noSelectionTitle" to "No active selection yet",
        "schedule.noTableData" to "No table data available",
        "schedule.noTeamsFound" to "No teams found for this season",
        "schedule.openMatchReport" to "Open match report",
        "schedule.otherTeamMatches" to "Other team",
        "schedule.overallSchedule" to "Overall schedule",
        "schedule.ownTeamMatches" to "Own team",
        "schedule.pendingShort" to "Open",
        "schedule.planned" to "Planned",
        "schedule.played" to "Played",
        "schedule.player" to "Player",
        "schedule.playerSelection" to "Player selection",
        "schedule.playerSelectionSaved" to "Player selection saved",
        "schedule.pleaseSelectGame" to "Please select a match first",
        "schedule.points" to "Pts",
        "schedule.position" to "Position",
        "schedule.ready" to "Ready",
        "schedule.refreshTable" to "Refresh table",
        "schedule.result" to "Result",
        "schedule.save" to "Save",
        "schedule.scheduleImportSuccess" to "Schedule imported successfully.",
        "schedule.schedulePDF" to "Schedules.pdf",
        "schedule.scheduleTab" to "Schedule",
        "schedule.searchTeams" to "Search team or league",
        "schedule.selection" to "Selection",
        "schedule.selectOtherTeam" to "Select other team",
        "schedule.selectSpecificLeague" to "Please select a specific league to load the table.",
        "schedule.sets" to "Sets",
        "schedule.showLocation" to "View Game Venue",
        "schedule.subtitle" to "Select teams, review fixtures and keep league tables in view.",
        "schedule.tableDataLoaded" to "League table data loaded successfully from myTischtennis.",
        "schedule.tableLoading" to "Loading table…",
        "schedule.tableTab" to "Table",
        "schedule.team" to "Team",
        "schedule.teamDataFetched" to "Team data updated successfully.",
        "schedule.teamDataFetchedDetails" to "Team: {team}\nProcessed records: {count}",
        "schedule.teams" to "Teams",
        "schedule.time" to "Time",
        "schedule.title" to "Schedules",
        "schedule.vs" to "vs",
        "schedule.workspaceScheduleDescription" to "{matches} matches, {completed} completed and {pending} open.",
        "schedule.workspaceTableDescription" to "{count} table rows currently loaded.",
        "seasonSelector.addSeason" to "Add new Season",
        "seasonSelector.alreadyExists" to "This season already exists!",
        "seasonSelector.cancel" to "Cancel",
        "seasonSelector.create" to "Create",
        "seasonSelector.errorCreating" to "Error creating season",
        "seasonSelector.errorLoading" to "Error loading seasons",
        "seasonSelector.hint" to "Notice",
        "seasonSelector.label" to "Season:",
        "seasonSelector.loading" to "Loading...",
        "seasonSelector.newSeason" to "Create New Season",
        "seasonSelector.placeholder" to "e.g. 2023/2024",
        "seasonSelector.selectSeason" to "Select season(s)",
        "settings.language" to "Language",
        "settings.languageChanged" to "Language successfully changed",
        "settings.languageDescription" to "Choose your preferred language for the application",
        "settings.personalSettings" to "Personal Settings",
        "settings.selectLanguage" to "Select Language",
        "settings.title" to "Settings",
        "tagHistory.noHistory" to "No tag history available",
        "tagHistory.selectTags" to "Select Tags",
        "tagHistory.title" to "Tag: TypePad",
        "teamManagement.activeTeam" to "Active team",
        "teamManagement.addPlanningTeam" to "Add Planning Team",
        "teamManagement.allMembersAssigned" to "All members are currently assigned.",
        "teamManagement.assignLeagueBeforeDocuments" to "Please assign a league to the team first so documents can be processed.",
        "teamManagement.assignLeagueBeforeParsing" to "Please assign a league to the team first to parse PDF files.",
        "teamManagement.assignMemberToTeam" to "Add to team",
        "teamManagement.association" to "Association",
        "teamManagement.asyncJobStartFailed" to "The async job could not be started.",
        "teamManagement.autoFetchEnabled" to "Automatic data retrieval is enabled",
        "teamManagement.automaticJobs" to "Automatic jobs",
        "teamManagement.autoSaved" to "AutoSaved",
        "teamManagement.autoSaveError" to "Autosaving Failed",
        "teamManagement.availableLineupMembers" to "Available players",
        "teamManagement.basicSettings" to "Basic settings",
        "teamManagement.basicSettingsIntro" to "Review and adjust team name and league in a calmer form.",
        "teamManagement.change" to "Change",
        "teamManagement.clearFields" to "Clear fields",
        "teamManagement.codeList" to "Code list",
        "teamManagement.configurationStatus" to "Configuration status",
        "teamManagement.configureLeagueDetails" to "Association: {association}\nSeason: {season}\nLeague: {league}\nGroup ID: {groupId}\n\nDo you want to configure this league in the database? This enables automatic table data retrieval.",
        "teamManagement.configureLeagueTitle" to "Configure league?",
        "teamManagement.createAndEdit" to "Create & edit",
        "teamManagement.created" to "Created",
        "teamManagement.createNewTeam" to "Create new team",
        "teamManagement.dataFetchFailed" to "Data could not be fetched.",
        "teamManagement.delete" to "Delete",
        "teamManagement.deleteTeamConfirm" to "Do you really want to delete the club team \"{name}\"?",
        "teamManagement.deleteTeamTitle" to "Delete club team",
        "teamManagement.documentAvailable" to "Available",
        "teamManagement.documentMissing" to "Missing",
        "teamManagement.documentNotFound" to "The selected document could not be found.",
        "teamManagement.documentParsedSummary" to "{label} uploaded and parsed successfully.\n\nMatches found: {matchesFound}\nNew matches created: {created}\nMatches updated: {updated}",
        "teamManagement.documents" to "Documents",
        "teamManagement.documentsIntro" to "Upload, review and re-parse code lists and PIN lists when needed.",
        "teamManagement.documentUploaded" to "{label} \"{fileName}\" was uploaded successfully.",
        "teamManagement.edit" to "Edit",
        "teamManagement.editTeam" to "Edit team",
        "teamManagement.eligibility" to "Eligibility",
        "teamManagement.eligibilityAdultRelease" to "Approved for adults",
        "teamManagement.eligibilityAdultReleaseAndReserve" to "Approved + adult reserve",
        "teamManagement.eligibilityAdultReserve" to "Adult reserve",
        "teamManagement.eligibilityRegular" to "Regular",
        "teamManagement.enterUrlForAutoConfig" to "Enter a myTischtennis URL for automatic configuration",
        "teamManagement.error" to "Error",
        "teamManagement.errorConfiguringLeague" to "The league could not be configured.",
        "teamManagement.errorConfiguringTeam" to "The team could not be configured.",
        "teamManagement.errorDeletingTeam" to "Failed to delete the club team.",
        "teamManagement.errorLoadingPdf" to "Failed to load the PDF.",
        "teamManagement.errorLoadingStats" to "Statistics could not be loaded.",
        "teamManagement.errorParsingPdf" to "Failed to parse the PDF file",
        "teamManagement.errorParsingUrl" to "The URL could not be parsed. Please check the format.",
        "teamManagement.errorsCount" to "Errors: {count}",
        "teamManagement.errorUploadingDocument" to "Failed to upload and parse the file.",
        "teamManagement.exportLineupPdf" to "Export line-up as PDF",
        "teamManagement.fetched" to "fetched",
        "teamManagement.fetchTimedOut" to "Timed out while fetching data (async job took too long).",
        "teamManagement.fetchTimeoutShort" to "Timed out while fetching data.",
        "teamManagement.fileTooLarge" to "{label} must not exceed 10 MB.",
        "teamManagement.fileTooLargeTitle" to "File too large",
        "teamManagement.filterAll" to "All",
        "teamManagement.filterConfigured" to "Configured",
        "teamManagement.filterNeedsAttention" to "Needs review",
        "teamManagement.filterNoLeague" to "Without league",
        "teamManagement.firstHalf" to "First half",
        "teamManagement.firstHalfFull" to "First half (July - December)",
        "teamManagement.fullyConfigured" to "Fully configured",
        "teamManagement.groupId" to "Group ID",
        "teamManagement.groupName" to "Group name",
        "teamManagement.invalidFileExtension" to "{label} must have one of the following extensions: {extensions}.",
        "teamManagement.invalidFileTypeTitle" to "Invalid file type",
        "teamManagement.invalidMimeType" to "{label} has an unexpected MIME type: {type}.",
        "teamManagement.lastRun" to "Last run",
        "teamManagement.lastUpdated" to "Last updated",
        "teamManagement.latestUpload" to "Last uploaded: {date}",
        "teamManagement.league" to "League",
        "teamManagement.leagueConfiguredDetails" to "League: {league}\nSeason: {season}\nAssociation: {association}\nGroup ID: {groupId}\n\nTable data can now be retrieved automatically.",
        "teamManagement.leagueConfiguredSuccess" to "League configured successfully. Table data can now be retrieved automatically.",
        "teamManagement.leagueFieldRequired" to "Please select a league class and save.",
        "teamManagement.lineupEmpty" to "No players have been assigned to this team yet.",
        "teamManagement.lineupPdfEmpty" to "No players in the line-up – cannot create PDF.",
        "teamManagement.lineupPdfFilePrefix" to "Line-up",
        "teamManagement.lineupProposal" to "Line-up by QTTR",
        "teamManagement.lineupSaved" to "Team line-up saved.",
        "teamManagement.lineupSaveError" to "Team line-up could not be saved.",
        "teamManagement.lineupUnsavedChanges" to "There are unsaved changes in the team line-up.",
        "teamManagement.lineupValidationTooLargeGap" to "{higher} is more than 30 QTTR points ahead of {lower}. Please correct this order.",
        "teamManagement.loadingStats" to "Loading statistics...",
        "teamManagement.manualFetch" to "Fetch",
        "teamManagement.markAsInterested" to "Mark as Interested",
        "teamManagement.matchesSummary" to "Matches found: {matchesFound}\nNew matches created: {created}\nMatches updated: {updated}",
        "teamManagement.matchResults" to "Match results",
        "teamManagement.missingConfigSummary" to "Missing:",
        "teamManagement.missingItems" to "Missing: {items}",
        "teamManagement.missingLeagueForTeam" to "No league was provided for the selected team.",
        "teamManagement.moreErrors" to "... and {count} more",
        "teamManagement.myTischtennis" to "myTischtennis",
        "teamManagement.myTischtennisIntro" to "Paste a URL, review the configuration and fetch data manually when needed.",
        "teamManagement.mytischtennisLoginRequired" to "Login to myTischtennis required",
        "teamManagement.myTischtennisUrlPlaceholder" to "myTischtennis URL...",
        "teamManagement.myTischtennisUrlRequired" to "Paste and parse the MyTischtennis URL to link the team ID and league data.",
        "teamManagement.never" to "Never",
        "teamManagement.newTeam" to "New team",
        "teamManagement.noAssignment" to "No assignment",
        "teamManagement.noAutomaticUpdate" to "No automatic update yet",
        "teamManagement.noDocumentUploadYet" to "No document uploaded yet.",
        "teamManagement.noIssues" to "No open configuration issues.",
        "teamManagement.noLeague" to "No league",
        "teamManagement.noMatchesFoundDetails" to "Note: No matches detected.\nLines in document: {lines}",
        "teamManagement.noMatchesFoundTitle" to "No matches found",
        "teamManagement.noMatchingTeams" to "No teams match the current search or filter.",
        "teamManagement.noMembersInPool" to "No matching members found.",
        "teamManagement.noPlannedLeague" to "No scheduled league",
        "teamManagement.noPlayerStats" to "No appearances recorded.",
        "teamManagement.notConfigured" to "Not configured",
        "teamManagement.notCreated" to "Not created",
        "teamManagement.noTeamsYet" to "No teams yet. Create your first team.",
        "teamManagement.openDocument" to "Open",
        "teamManagement.openInWorkspace" to "Open to edit",
        "teamManagement.parseDocument" to "Parse again",
        "teamManagement.parseUrlAction" to "Check URL",
        "teamManagement.partiallyConfigured" to "Partially configured",
        "teamManagement.pdfFileNotFound" to "The PDF file could not be found.",
        "teamManagement.pinList" to "PIN list",
        "teamManagement.plannedLeague" to "Planned league",
        "teamManagement.plannedLeagueHint" to "Optional. Independent of the registered league (MyTischtennis).",
        "teamManagement.plannedLeaguePlaceholder" to "e.g. district league, after next registration …",
        "teamManagement.planningSubtitle" to "Distribute members to scheduled teams, set order, and see open assignments.",
        "teamManagement.planningTitle" to "Team planning",
        "teamManagement.player" to "Player",
        "teamManagement.playersPoolSubtitle" to "All active members with game interest",
        "teamManagement.playerStats" to "Appearances",
        "teamManagement.playerStatsIntro" to "Quick overview of this team's appearances in the current season.",
        "teamManagement.playersWantToPlay" to "We want to play.",
        "teamManagement.qttr" to "(Q)TTR rating",
        "teamManagement.ratingUpdates" to "Rating updates",
        "teamManagement.refreshStats" to "Refresh",
        "teamManagement.reuploadFile" to "Please upload the file again and try once more.",
        "teamManagement.searchMembers" to "Search member",
        "teamManagement.searchTeams" to "Search team",
        "teamManagement.season" to "Season",
        "teamManagement.seasonFull" to "Full season (from 1 July)",
        "teamManagement.seasonUnknown" to "unknown",
        "teamManagement.secondHalf" to "Second half",
        "teamManagement.secondHalfFull" to "Second half (from 1 January)",
        "teamManagement.selectedLineup" to "Selected players",
        "teamManagement.selectMember" to "Select member",
        "teamManagement.selectTeam" to "Select Team",
        "teamManagement.selectTeamFirst" to "Please select a team first",
        "teamManagement.selectTeamForConfiguration" to "To activate the myTischtennis configuration, you must first select a team from the list.",
        "teamManagement.selectTeamTitle" to "Select team",
        "teamManagement.showCodeList" to "Show code list",
        "teamManagement.showPinList" to "Show PIN list",
        "teamManagement.sortFirstLast" to "Sorting: First name Last name",
        "teamManagement.sortLastFirst" to "Sorting: Last name First name",
        "teamManagement.status" to "status",
        "teamManagement.subtitle" to "Select teams, review configuration and maintain league data in one place.",
        "teamManagement.successful" to "Successful",
        "teamManagement.tableUpdateLabel" to "Table update:",
        "teamManagement.tableUrlDetected" to "Table URL detected",
        "teamManagement.team" to "Team",
        "teamManagement.teamAgeGroup" to "Age group",
        "teamManagement.teamConfiguredDetails" to "League: {league}\nSeason: {season}\nAutomatic data retrieval is now active.",
        "teamManagement.teamConfiguredSuccess" to "Team configured successfully. Automatic data retrieval is now active.",
        "teamManagement.teamDataFetched" to "Team data fetched successfully.",
        "teamManagement.teamDataFetchedDetails" to "Team: {team}\nFetched records: {count}",
        "teamManagement.teamGender" to "Gender",
        "teamManagement.teamGenderFemale" to "Female",
        "teamManagement.teamGenderOpen" to "Open",
        "teamManagement.teamHasNoLeague" to "This team is not assigned to a league.",
        "teamManagement.teamId" to "Team ID",
        "teamManagement.teamName" to "Team name",
        "teamManagement.teamNamePlaceholder" to "e.g. Men 1, Women 2",
        "teamManagement.teams" to "Teams",
        "teamManagement.title" to "Team Management",
        "teamManagement.unassignedMembers" to "not yet assigned",
        "teamManagement.unassignedMembersSubtitle" to "Members Without Team Assignment",
        "teamManagement.unknown" to "Unknown",
        "teamManagement.unknownTeam" to "Unknown team",
        "teamManagement.updated" to "updated",
        "teamManagement.uploadNewVersion" to "Upload new version",
        "tournament.apply" to "Apply Changes",
        "tournaments.action" to "Action",
        "tournaments.add" to "Add",
        "tournaments.addClass" to "Add Class",
        "tournaments.addClubMember" to "Add Club Member",
        "tournaments.addExternalParticipant" to "Add External Participant",
        "tournaments.addPairing" to "Add pairing",
        "tournaments.addPoolRule" to "Add pool rule",
        "tournaments.address" to "Address",
        "tournaments.adjustTournamentSearch" to "Adjust the search term or create a new tournament.",
        "tournaments.advancersPerGroup" to "Promoters per group",
        "tournaments.allClasses" to "All Classes",
        "tournaments.allDataComplete" to "All participant data is complete.",
        "tournaments.allDataCompleteTop3" to "All data for the top 3 placed players is complete.",
        "tournaments.apply" to "Apply Changes",
        "tournaments.assignmentReviewTitle" to "{count} participants need a choice:",
        "tournaments.atLeastOnePoolRule" to "Please add at least one pool rule for {label} (e.g. places 1,2).",
        "tournaments.autoAssignableParticipantsHint" to "{count} of them can be assigned automatically.",
        "tournaments.autoAssignEligible" to "Assign automatically",
        "tournaments.autoAssignEligibleDone" to "{count} participants were assigned automatically.",
        "tournaments.autoAssignEligibleNone" to "There are currently no participants with a single automatic class assignment.",
        "tournaments.autoAssignEligiblePartial" to "{successCount} participants were assigned automatically, {errorCount} failed.",
        "tournaments.birthdate" to "Date of birth",
        "tournaments.cancel" to "Cancel",
        "tournaments.class" to "Class",
        "tournaments.classes" to "Classes",
        "tournaments.className" to "Class Name",
        "tournaments.cleanupOrphanedMatches" to "Clean up orphaned games",
        "tournaments.club" to "Association",
        "tournaments.clubMember" to "(Club member)",
        "tournaments.conflictSuggestionLabel" to "Suggestions:",
        "tournaments.correctMatch" to "Correct",
        "tournaments.create" to "Create",
        "tournaments.createFinalFromIntermediate" to "Create final round from intermediate round",
        "tournaments.createFinalFromPreliminary" to "Create final round from preliminary round",
        "tournaments.createGroupMatches" to "Create group matches",
        "tournaments.createGroups" to "Who Can Create Groups",
        "tournaments.createIntermediateFromPreliminary" to "Create intermediate round from preliminary round",
        "tournaments.createMatches" to "Set matches",
        "tournaments.createSuggestedPairings" to "Create pairings",
        "tournaments.currentClass" to "Active Class",
        "tournaments.dataNotRecorded" to "Not yet recorded",
        "tournaments.date" to "Date",
        "tournaments.delete" to "Delete",
        "tournaments.deleteClassConfirm" to "Do you really want to delete class \"{name}\"?",
        "tournaments.deleteClassParticipantsDetached" to "All participants will be detached from this class.",
        "tournaments.deleteClassTitle" to "Delete class",
        "tournaments.deleteExistingPairingsConfirm" to "Existing pairings will be deleted. Continue?",
        "tournaments.deleteKORound" to "Knockout",
        "tournaments.diff" to "Diff",
        "tournaments.distributeTables" to "Distribute free tables",
        "tournaments.distributeTablesResult" to "Table distribution",
        "tournaments.doubles" to "Double",
        "tournaments.doublesPairingHint" to "{count} participants in this doubles class still need a partner.",
        "tournaments.doublesTournament" to "Doubles tournament",
        "tournaments.doublesTournamentHint" to "Switches all existing classes to doubles and creates new classes as doubles by default.",
        "tournaments.edit" to "Edit",
        "tournaments.eligibleClassesHint" to "Suitable for: {classes}",
        "tournaments.email" to "Email address",
        "tournaments.encounter" to "Meeting",
        "tournaments.enterClassName" to "Please enter a class name.",
        "tournaments.enterExternalParticipantName" to "Please enter at least first name and last name.",
        "tournaments.enterMiniLocation" to "Please enter a location.",
        "tournaments.errorCreatingGroups" to "Error creating groups.",
        "tournaments.errorCreatingTournament" to "Error creating tournament.",
        "tournaments.errorDistributingTables" to "Error distributing tables.",
        "tournaments.errorGeneratingPdf" to "Error generating the PDF.",
        "tournaments.errorMergingClasses" to "Failed to merge classes.",
        "tournaments.errorMoreSeededThanUnseeded" to "There are more betted than unseeded players. Cannot create random pairings.",
        "tournaments.errorResettingKORound" to "Error resetting knockout round.",
        "tournaments.errorUpdatingTournament" to "Error updating tournament.",
        "tournaments.exportPDF" to "Export PDF",
        "tournaments.external" to "External",
        "tournaments.finalPlacements" to "Final placements",
        "tournaments.finalRound" to "Final round",
        "tournaments.finishMatch" to "Finish",
        "tournaments.firstName" to "First name",
        "tournaments.forForwarding" to "for forwarding",
        "tournaments.gaveUp" to "Placed",
        "tournaments.gaveUpHint" to "Player has surrendered – all games count for the opponent (11:0) or 0:0 for both.",
        "tournaments.genderAll" to "All",
        "tournaments.genderMixed" to "Mixed",
        "tournaments.generatingPDF" to "Generating PDF...",
        "tournaments.group" to "Group",
        "tournaments.groupMatches" to "Inter Group Matches",
        "tournaments.groupNumber" to "Group",
        "tournaments.groupPlacements" to "Group Placements",
        "tournaments.groupsLabel" to "Groups",
        "tournaments.groupsOverview" to "Groups overview",
        "tournaments.groupsPerClass" to "Pool Standings",
        "tournaments.groupsPerClassHint" to "For each class, enter the number of groups (0 = no groups for this class):",
        "tournaments.index" to "Index",
        "tournaments.intermediateRound" to "Intermediate round (round 2)",
        "tournaments.internalStatsAbsoluteRank" to "Total score ranking",
        "tournaments.internalStatsAgeFilter" to "Age group & gender (singles)",
        "tournaments.internalStatsAgeFilterAll" to "All age classes",
        "tournaments.internalStatsAgeFilterNone" to "No age class selected",
        "tournaments.internalStatsAgeNoClass" to "No class assigned",
        "tournaments.internalStatsAgeSelectAll" to "All",
        "tournaments.internalStatsAgeSelectNone" to "None",
        "tournaments.internalStatsAverageRank" to "Average per tournament",
        "tournaments.internalStatsAvgPoints" to "Avg.",
        "tournaments.internalStatsEmpty" to "No data for the selected period.",
        "tournaments.internalStatsExportPdf" to "Export as PDF",
        "tournaments.internalStatsFilterAgeBands" to "Age classes",
        "tournaments.internalStatsFilterGenderColumn" to "Gender",
        "tournaments.internalStatsGenderScopeAll" to "All",
        "tournaments.internalStatsGenderScopeGirls" to "Girls only",
        "tournaments.internalStatsLast12Months" to "Last 12 months",
        "tournaments.internalStatsLast3Months" to "Last 3 months",
        "tournaments.internalStatsLast6Months" to "Last 6 months",
        "tournaments.internalStatsOpenButton" to "Tournament statistics (singles)",
        "tournaments.internalStatsPeriod" to "Period",
        "tournaments.internalStatsPoints" to "Total",
        "tournaments.internalStatsPointsExplain" to "Scoring: In each group, placement is expressed as a percentage (with N ranked players: 1st = 100%, last = 0%, linear in between; tied ranks share the same value). N counts everyone ranked in that group (including guests). With only one player: 100%. Players who reach the knockout get the highest group score in that class plus 1, then one extra point per knockout match won. Club members in singles classes only. Age bands (J9–J19 / adults) and gender (“All” = female and open channels, “Girls only” = female channel) use each member’s birth date and gender from club records, not the tournament class name.",
        "tournaments.internalStatsTitle" to "Internal tournaments statistics (singles)",
        "tournaments.internalStatsTournamentsInPeriod" to "{count} tournament(s) in this period (excluding mini championships).",
        "tournaments.internalStatsTtAdult" to "Adults",
        "tournaments.internalTournaments" to "Internal tournaments",
        "tournaments.knockoutLabel" to "KO",
        "tournaments.koRound" to "knock-out round",
        "tournaments.lastName" to "Surname",
        "tournaments.livePosition" to "Live seat",
        "tournaments.loadFromTraining" to "Load from training day",
        "tournaments.markMatchLive" to "Mark as live",
        "tournaments.maxGroupSize" to "Maximum Party Size",
        "tournaments.mergeClasses" to "Merge classes (common group phase)",
        "tournaments.mergeDistribute" to "Distribute players from A to all groups (from B)",
        "tournaments.mergeSingleGroup" to "All players from A in a group (at B)",
        "tournaments.minBirthYear" to "Born in year or later",
        "tournaments.miniChampionshipLocation" to "Location",
        "tournaments.miniChampionships" to "Mini Championships",
        "tournaments.miniChampionshipYear" to "Year",
        "tournaments.miniChampionshipYearHint" to "12 = this year 12 or 13 years, 10 = 10 or 11, 8 = 9 and younger",
        "tournaments.minimumParticipantsForPairings" to "At least 2 participants are required for pairings.",
        "tournaments.missingDataPDF" to "Missing data as PDF",
        "tournaments.missingDataPDFSubtitle" to "Please collect the missing data (marked with ____) from participants and note them here.",
        "tournaments.missingDataPDFSubtitleTop3" to "Please collect missing data of the top 3 (marked with ____) and note them here.",
        "tournaments.missingDataPDFTitle" to "Missing participant data – Mini championship",
        "tournaments.missingDataPDFTitleTop3" to "Missing data – Top 3 Mini championship",
        "tournaments.name" to "name",
        "tournaments.newMiniChampionship" to "New Mini Championship",
        "tournaments.setShort" to "Set",
        "tournaments.newTournament" to "Add New Tournament",
        "tournaments.noAssignableMatches" to "No matches available where both players are free.",
        "tournaments.noClassesYet" to "No classes available yet. Add a new class.",
        "tournaments.noEligibleClass" to "No suitable class found.",
        "tournaments.noFreeTables" to "No free tables available.",
        "tournaments.noMatchingTournamentsTitle" to "No matching tournaments",
        "tournaments.noOrphanedMatchesFound" to "No orphaned matches found.",
        "tournaments.noPlacementsYet" to "No placements available yet.",
        "tournaments.noPlayerDataAvailable" to "No player data available",
        "tournaments.noPoolRulesYet12" to "No rules yet. Example: places 1 and 2 -> top round-2 groups.",
        "tournaments.noPoolRulesYetFinal" to "No rules yet. Example: places 1 and 2 -> final round.",
        "tournaments.noTop3Yet" to "No top 3 placements have been determined yet.",
        "tournaments.noTournamentDate" to "No tournament date available.",
        "tournaments.noTournamentsCreatedYet" to "No tournaments have been created yet.",
        "tournaments.noTrainingOnDate" to "No training session found for {date}.",
        "tournaments.noTrainingParticipants" to "No participants were found in the training session for this date.",
        "tournaments.noValidTrainingParticipants" to "No valid participants were found in the training session for this date.",
        "tournaments.numberOfGroups" to "Nr of groups",
        "tournaments.numberOfTables" to "Number of tables",
        "tournaments.openTournaments" to "Open Tournaments",
        "tournaments.optional" to "optional",
        "tournaments.orphanedMatchesRemoved" to "{count} orphaned matches removed.",
        "tournaments.outOfCompetition" to "Player from A out of competition",
        "tournaments.page" to "Page",
        "tournaments.pairingAlreadyExists" to "This pairing already exists.",
        "tournaments.pairings" to "Double Pairings",
        "tournaments.pairingsCreatedWithErrors" to "{successCount} pairings created, {errorCount} errors.",
        "tournaments.participantConflicts" to "Conflicts",
        "tournaments.participantNotFound" to "Participant not found.",
        "tournaments.participants" to "Participants",
        "tournaments.participantsNeedClassAssignment" to "{count} participants are not assigned to a class yet. These should be assigned first.",
        "tournaments.phone" to "Phone",
        "tournaments.placementsPendingFinals" to "Final placings will appear once multiple groups or a final round exist.",
        "tournaments.placementsPendingGroups" to "Group placings will appear once group matches exist.",
        "tournaments.placementsPendingNoGroups" to "Placings will appear here once group matches or a final round exist.",
        "tournaments.placementsPendingSelectedClass" to "There are no placings for the currently selected class yet.",
        "tournaments.placementsPendingTitle" to "Placings not available yet",
        "tournaments.placesFromEachGroup" to "Places from each group (e.g. 1,2)",
        "tournaments.player" to "Skaters",
        "tournaments.playerOne" to "Player 1",
        "tournaments.playerTwo" to "Player 2",
        "tournaments.playInGroups" to "Playing in groups",
        "tournaments.playThirdPlace" to "Play third place match",
        "tournaments.pleaseEnterDate" to "Please enter a date",
        "tournaments.pleaseSelectParticipant" to "Please select a student.",
        "tournaments.points" to "Points",
        "tournaments.pointsRatio" to "Game Points",
        "tournaments.poolRuleLabel" to "Rule {number}",
        "tournaments.poolRulePlacesHelp" to "Example: 1 or 1,2",
        "tournaments.poolRulePlacesLabel" to "Which places advance?",
        "tournaments.poolRulePreview" to "From each group, places {places} advance to {target}.",
        "tournaments.poolRuleQuickExamples" to "Quick examples:",
        "tournaments.poolRuleSummary" to "Places {places} go to {target}",
        "tournaments.poolRuleTargetGroupsDetailed" to "{count} target groups",
        "tournaments.poolRuleTargetKnockout" to "the knockout bracket",
        "tournaments.poolRuleTargetLabel" to "Where do these places go?",
        "tournaments.position" to "The square",
        "tournaments.problemConfigDescription" to "Check date, name and winning sets.",
        "tournaments.problemConfigTitle" to "Configuration incomplete",
        "tournaments.problemConflictsDescription" to "Review invalid classes, missing data or unclear assignments.",
        "tournaments.problemConflictsTitle" to "{count} participants with conflicts",
        "tournaments.problemDoublesAutoDescription" to "The open doubles class can be paired automatically right away.",
        "tournaments.problemDoublesDescription" to "One or more doubles classes still need partner assignments.",
        "tournaments.problemDoublesTitle" to "{count} open doubles partners",
        "tournaments.problemGroupMatchesDescription" to "The groups are ready, but the matches have not been created yet.",
        "tournaments.problemGroupMatchesTitle" to "Group matches not generated yet",
        "tournaments.problemGroupsMissingDescription" to "The group tournament needs groups to be created first.",
        "tournaments.problemGroupsMissingTitle" to "Groups not created yet",
        "tournaments.problemKnockoutReadyDescription" to "The group stage is complete and the final round can be generated now.",
        "tournaments.problemKnockoutReadyTitle" to "Knockout can be started",
        "tournaments.problemUnassignedAutoDescription" to "{count} of them can be assigned automatically right away.",
        "tournaments.problemUnassignedDescription" to "These participants still need a manual class assignment.",
        "tournaments.problemUnassignedTitle" to "{count} participants without class",
        "tournaments.promotionRule12" to "Advance: preliminary round → intermediate round (1→2)",
        "tournaments.promotionRuleDescription12" to "Define which places from each preliminary group advance to the intermediate round.",
        "tournaments.promotionRuleDescriptionFinalGroups" to "Define which places from the previous round advance to the final-round groups.",
        "tournaments.promotionRuleDescriptionFinalKnockout" to "Define which places from the previous round advance to the knockout bracket.",
        "tournaments.promotionRuleFinal" to "Advance: round {from} → round {to}",
        "tournaments.randomizeGroups" to "Randomize",
        "tournaments.randomPairings" to "Random Double Pairs",
        "tournaments.randomPairingsCreated" to "Random pairings have been created.",
        "tournaments.resetGroupMatches" to "Inter Group Matches",
        "tournaments.resetGroups" to "Reset Groups",
        "tournaments.result" to "Result",
        "tournaments.resultsRanking" to "Ranking",
        "tournaments.round" to "Round",
        "tournaments.roundGroupCount" to "Number of groups",
        "tournaments.roundMode" to "Mode",
        "tournaments.ruleStatusBlocked" to "Blocked",
        "tournaments.ruleStatusOk" to "Looks good",
        "tournaments.ruleStatusOkDescription" to "This rule matches the current target round and can be used as-is.",
        "tournaments.ruleStatusReview" to "Review",
        "tournaments.save" to "Save",
        "tournaments.saveRounds" to "Save rounds",
        "tournaments.seeded" to "Seed",
        "tournaments.selectClass" to "Select Class",
        "tournaments.selectClassPrompt" to "Please select a class.",
        "tournaments.selectedTournament" to "Active tournament",
        "tournaments.selectParticipant" to "Choose user",
        "tournaments.selectPlayer" to "Select players",
        "tournaments.selectTournamentFirst" to "Please select a tournament first.",
        "tournaments.selectTwoDifferentPlayers" to "Please select two different players.",
        "tournaments.setDiff" to "Sentence Difference",
        "tournaments.sets" to "phrases",
        "tournaments.showClass" to "View Class",
        "tournaments.showingTournamentCount" to "{visible} of {total}",
        "tournaments.showPlayerDetails" to "View Player Details",
        "tournaments.singles" to "Single",
        "tournaments.sourceClass" to "Source",
        "tournaments.stageActionMissingRulesHint" to "Create at least one advancement rule first before moving players into the next round.",
        "tournaments.stageActionRun" to "Run now",
        "tournaments.stageActionsDescription" to "These steps move qualified players into the next round.",
        "tournaments.stageActionsTitle" to "Next actions",
        "tournaments.stageConfigBadServerResponse" to "Invalid server response.",
        "tournaments.stageConfigCurrentSetup" to "Current structure",
        "tournaments.stageConfigIntro" to "The intermediate round is optional. If you activate it, a final round follows afterwards. A knockout final round is created as a single bracket.",
        "tournaments.stageConfigLoadError" to "Error loading round configuration.",
        "tournaments.stageConfigLoading" to "Loading round configuration…",
        "tournaments.stageConfigMissingIds" to "Cannot save: club or tournament ID is missing.",
        "tournaments.stageConfigTitle" to "Intermediate & Final Round",
        "tournaments.stageCreated" to "Round {round} was created.",
        "tournaments.stageFinalDescription" to "Decide whether the final round should be played as groups or directly as a knockout bracket.",
        "tournaments.stageFlowBreakdownActionAddRule" to "Add rule",
        "tournaments.stageFlowBreakdownActionOpen" to "Open rule",
        "tournaments.stageFlowBreakdownActionReview" to "Review issues",
        "tournaments.stageFlowBreakdownErrors" to "{count} blocking error(s)",
        "tournaments.stageFlowBreakdownMissingRule" to "No complete rule has been added yet",
        "tournaments.stageFlowBreakdownOk" to "Configuration looks good",
        "tournaments.stageFlowBreakdownWarnings" to "{count} warning(s) open",
        "tournaments.stageFlowDirectFinal" to "Preliminary round -> final round ({final})",
        "tournaments.stageFlowHealthBlocked" to "Round logic is contradictory",
        "tournaments.stageFlowHealthBlockedDescription" to "At least one rule currently does not match the target round or contains blocking configuration errors.",
        "tournaments.stageFlowHealthIncomplete" to "Round logic is incomplete",
        "tournaments.stageFlowHealthMissingRules" to "At least one transition does not yet have a complete advancement rule.",
        "tournaments.stageFlowHealthOk" to "Round logic looks good",
        "tournaments.stageFlowHealthOkDescription" to "The transitions between rounds are fully configured and currently coherent.",
        "tournaments.stageFlowHealthReviewDescription" to "The round logic is basically usable, but should still be reviewed because of open hints.",
        "tournaments.stageFlowPreviewMissing" to "No rule has been configured yet.",
        "tournaments.stageFlowPreviewRule" to "Places {places} go to {target}",
        "tournaments.stageFlowPreviewRuleWithCount" to "{base} (expected qualifiers: {count})",
        "tournaments.stageFlowQualifiedPreviewEntry" to "G{group} · Place {position} · {name}",
        "tournaments.stageFlowQualifiedPreviewTitle" to "Currently qualified",
        "tournaments.stageFlowReadinessIncompleteGroups" to "{count} group(s) are not fully decided yet",
        "tournaments.stageFlowReadinessNoGroups" to "No matching groups exist yet",
        "tournaments.stageFlowReadinessReady" to "Transition is ready to start",
        "tournaments.stageFlowRecommendationError" to "Review the first blocking error in the round logic first.",
        "tournaments.stageFlowRecommendationFixes" to "The typical configuration problems can be cleaned up automatically right away.",
        "tournaments.stageFlowRecommendationMissingRule" to "A complete rule is still missing for {label}. That is the best place to continue.",
        "tournaments.stageFlowRecommendationSave" to "The round logic is coherent. You can save the configuration now.",
        "tournaments.stageFlowRecommendationTitle" to "Recommended next step",
        "tournaments.stageFlowRecommendationWarnings" to "There are still warnings that should be reviewed before saving.",
        "tournaments.stageFlowWithIntermediate" to "Preliminary round -> intermediate round ({stage2}) -> final round ({final})",
        "tournaments.stageParticipantsTransferred" to "Qualified players were moved into {round}.",
        "tournaments.stageStep1" to "Step 1",
        "tournaments.stageStep1Description" to "First decide whether there should be an additional round after the preliminary round.",
        "tournaments.stageStep1Title" to "Decide on an intermediate round",
        "tournaments.stageStep2" to "Step 2",
        "tournaments.stageStep2Description" to "Define what the intermediate round should look like and how many groups it needs.",
        "tournaments.stageStep3" to "Step 3",
        "tournaments.stageValidationApplyAllFixes" to "Apply {count} quick fix(es)",
        "tournaments.stageValidationApplyFix" to "Apply",
        "tournaments.stageValidationApplyTargetGroupFix" to "Set to {count} target groups",
        "tournaments.stageValidationApplyTargetTypeFix" to "Switch to {target}",
        "tournaments.stageValidationDescription" to "Fix these points before saving or moving players into the next round.",
        "tournaments.stageValidationGroupCountRequired" to "Please set at least one valid group count.",
        "tournaments.stageValidationKnockoutByesLikely" to "With an expected {count} qualifiers, the knockout bracket will very likely include byes.",
        "tournaments.stageValidationKnockoutNeedsTwoPlayers" to "A knockout bracket needs at least 2 qualified players.",
        "tournaments.stageValidationKnockoutTargetOnly" to "For a knockout final round, only the knockout bracket is allowed as the target here.",
        "tournaments.stageValidationNoRules" to "There is no advancement rule yet for {stage}.",
        "tournaments.stageValidationNotEnoughQualifiersForGroups" to "With only {count} qualifiers for {groups} target groups, empty groups would be created.",
        "tournaments.stageValidationRulePlacesDuplicate" to "A single rule must not contain the same place more than once.",
        "tournaments.stageValidationRulePlacesGap" to "The place definition has gaps. Usually a continuous order such as 1,2 or 1,2,3 is intended.",
        "tournaments.stageValidationRulePlacesInvalid" to "The place definition is invalid. Only positive whole numbers such as 1 or 1,2 are allowed.",
        "tournaments.stageValidationRulePlacesRequired" to "Enter at least one place that should advance.",
        "tournaments.stageValidationRulesOverlap" to "Place {place} is assigned twice, in rule {first} and rule {second}.",
        "tournaments.stageValidationSaveBlocked" to "Please fix the highlighted configuration errors first.",
        "tournaments.stageValidationSuggestion" to "Suggestion: {value}",
        "tournaments.stageValidationTargetGroupCountMismatch" to "The number of target groups must match the target round. Expected: {expected}.",
        "tournaments.stageValidationTargetGroupsRequired" to "Please enter a valid number of target groups.",
        "tournaments.stageValidationTargetTypeMismatch" to "The target of this rule must match the target round. Expected: {target}.",
        "tournaments.stageValidationThinGroupsLikely" to "With {count} qualifiers across {groups} target groups, the groups will likely be very small.",
        "tournaments.stageValidationTitle" to "Review configuration",
        "tournaments.startKORound" to "Start knockout round",
        "tournaments.statusActionAssign" to "Assign",
        "tournaments.statusActionCreate" to "Create",
        "tournaments.statusActionGenerate" to "Generate",
        "tournaments.statusActionPair" to "Pair",
        "tournaments.statusActionReview" to "Review",
        "tournaments.statusActionStart" to "Start",
        "tournaments.statusConfigIncomplete" to "Configuration incomplete",
        "tournaments.statusConfigReady" to "Configuration ready",
        "tournaments.statusFinished" to "Finished",
        "tournaments.statusGroupsMissing" to "Groups not created yet",
        "tournaments.statusGroupsReady" to "Groups ready",
        "tournaments.statusGroupsRunning" to "Group stage in progress",
        "tournaments.statusKnockoutReady" to "Knockout ready to start",
        "tournaments.statusKnockoutRunning" to "Knockout in progress",
        "tournaments.statusLive" to "live",
        "tournaments.statusOpen" to "Open",
        "tournaments.statusParticipantsConflicts" to "{count} participants with conflicts",
        "tournaments.statusParticipantsReady" to "{count} participants conflict-free",
        "tournaments.statusParticipantsUnassigned" to "{count} without class",
        "tournaments.statusTournamentCompleted" to "Tournament completed",
        "tournaments.statusUnpairedDoubles" to "{count} doubles without partner",
        "tournaments.strategy" to "Strategy",
        "tournaments.tabConfig" to "Configuration",
        "tournaments.tabGroups" to "Pool Standings",
        "tournaments.table" to "Table",
        "tournaments.tablesDistributed" to "Tables have been distributed.",
        "tournaments.tabParticipants" to "Participants",
        "tournaments.tabPlacements" to "Placings",
        "tournaments.tabResults" to "Results",
        "tournaments.target" to "Target",
        "tournaments.targetClass" to "Target",
        "tournaments.targetGroupCount" to "Target number of groups",
        "tournaments.targetGroupsLabel" to "{count} groups",
        "tournaments.tournamentClassGenderFemale" to "Female",
        "tournaments.tournamentClassGenderOpen" to "Open (all)",
        "tournaments.tournamentName" to "Tournament name",
        "tournaments.tournamentParticipations" to "Official Tournaments & Entries",
        "tournaments.transferQualifiedToFinalFromIntermediate" to "Move qualified players into the final round",
        "tournaments.transferQualifiedToFinalFromIntermediateDesc" to "Uses the intermediate-round to final-round rules and moves the qualified players across.",
        "tournaments.transferQualifiedToFinalFromPreliminary" to "Move qualified players straight into the final round",
        "tournaments.transferQualifiedToFinalFromPreliminaryDesc" to "Uses the preliminary-round to final-round rules and creates the qualified players directly there.",
        "tournaments.transferQualifiedToIntermediate" to "Move qualified players into the intermediate round",
        "tournaments.transferQualifiedToIntermediateDesc" to "Uses the preliminary-round to intermediate-round rules and moves the qualified players across.",
        "tournaments.unknown" to "Unknown",
        "tournaments.unknownDate" to "Unknown Date",
        "tournaments.unmarkMatchLive" to "Remove live marker",
        "tournaments.unpairedDoubles" to "Doubles without partner",
        "tournaments.useIntermediateStage" to "Use intermediate round",
        "tournaments.warningBirthDateMissing" to "Birth date is missing for this class",
        "tournaments.warningClassMissing" to "Class not found",
        "tournaments.warningGenderMismatch" to "Gender does not match class",
        "tournaments.warningGenderMissing" to "Gender is missing for this class",
        "tournaments.warningMissingPairing" to "Doubles partner missing",
        "tournaments.warningTooOldForClass" to "Too old for this class",
        "tournaments.warningTooYoungForClass" to "Too young for this class",
        "tournaments.winningSets" to "Winning rates",
        "tournaments.withoutClass" to "Without Class",
        "tournaments.workspaceProblemsTitle" to "{count} open issues",
        "trainingDetails.birthdate" to "Date of birth",
        "trainingDetails.birthYear" to "Year of birth",
        "trainingDetails.last12Months" to "Last 12 months",
        "trainingDetails.last3Months" to "Last 3 months",
        "trainingDetails.maxBirthYear" to "Born ≤ year",
        "trainingDetails.noTrainings" to "No training attendance available",
        "trainingDetails.title" to "Training Details",
        "trainingDetails.total" to "Total",
        "trainingDetails.trainingParticipations" to "Training participations (sorted in descending order)",
        "trainingGroupsTab.addMember" to "Add Member...",
        "trainingGroupsTab.cancel" to "Cancel",
        "trainingGroupsTab.create" to "Create",
        "trainingGroupsTab.delete" to "Delete",
        "trainingGroupsTab.edit" to "Edit",
        "trainingGroupsTab.editGroup" to "Edit Group",
        "trainingGroupsTab.groupName" to "Group Name",
        "trainingGroupsTab.groups" to "Pool Standings",
        "trainingGroupsTab.members" to "Members",
        "trainingGroupsTab.newGroup" to "+ New Group",
        "trainingGroupsTab.noMembersAvailable" to "No affiliate partners available",
        "trainingGroupsTab.remove" to "Remove",
        "trainingStats.actions" to "Actions",
        "trainingStats.activeMembers" to "Active members",
        "trainingStats.allTrainingDays" to "All training days",
        "trainingStats.attendingMembers" to "Attending members",
        "trainingStats.averageParticipationCurrentMonth" to "Average participation (current month)",
        "trainingStats.averageParticipationHalfYear" to "Average participation (half-year)",
        "trainingStats.averageParticipationLastMonth" to "Average participation (last month)",
        "trainingStats.averageParticipationQuarter" to "Average participation (quarter)",
        "trainingStats.averageParticipationYear" to "Average participation (year)",
        "trainingStats.birthdate" to "Birthdate",
        "trainingStats.date" to "Date",
        "trainingStats.lastTraining" to "Last training",
        "trainingStats.memberParticipations" to "Member participations",
        "trainingStats.name" to "name",
        "trainingStats.noParticipants" to "No participants",
        "trainingStats.panelAgeGroups" to "Attendance by age class",
        "trainingStats.panelBestDay" to "Busiest training day",
        "trainingStats.panelGroupPerformance" to "Progress by group",
        "trainingStats.panelMemberStructure" to "Member structure",
        "trainingStats.panelMonthlyTrend" to "Monthly trend",
        "trainingStats.panelSummary" to "Key figures (filtered)",
        "trainingStats.panelWeekdayStats" to "Training days by weekday",
        "trainingStats.participants" to "Participants",
        "trainingStats.participations12Months" to "Participations (12 months)",
        "trainingStats.participations3Months" to "Participations (3 months)",
        "trainingStats.participationsTotal" to "Participations (total)",
        "trainingStats.qttr" to "QTTR",
        "trainingStats.showDetails" to "Show details",
        "trainingStats.title" to "Training statistics",
        "trainingStats.trainingDayFilter" to "Training day",
        "trainingStats.trainingDays" to "Training days (last 12 months)",
        "trainingStats.ttr" to "TTR",
        "trainingStats.weekday" to "Weekday",
        "trainingTimesTab.addTime" to "Add time",
        "trainingTimesTab.cancel" to "Cancel",
        "trainingTimesTab.create" to "Create",
        "trainingTimesTab.delete" to "Delete",
        "trainingTimesTab.edit" to "Edit",
        "trainingTimesTab.editTime" to "Edit Training Time",
        "trainingTimesTab.excludeFromQuickDiaryCreate" to "Exclude from quick creation (diary)",
        "trainingTimesTab.excludeFromQuickDiarySaveError" to "The setting could not be saved.",
        "trainingTimesTab.friday" to "Friday",
        "trainingTimesTab.from" to "From:",
        "trainingTimesTab.loading" to "Loading workout times...",
        "trainingTimesTab.monday" to "Monday",
        "trainingTimesTab.noTimes" to "No training times defined",
        "trainingTimesTab.saturday" to "Saturday",
        "trainingTimesTab.save" to "Save",
        "trainingTimesTab.saveError" to "Error saving workout time",
        "trainingTimesTab.sunday" to "Sunday",
        "trainingTimesTab.thursday" to "Thursday",
        "trainingTimesTab.to" to "To:",
        "trainingTimesTab.tuesday" to "Tuesday",
        "trainingTimesTab.wednesday" to "Wednesday",
        "trainingTimesTab.weekday" to "Weekdays:",
        "unknown" to "Unknown",
    ) }

    private val en_US: Map<String, String> by lazy { mapOf(
        "accident.accident" to "Accident",
        "accident.accidentDescription" to "Description of the accident...",
        "accident.close" to "Close",
        "accident.member" to "Member",
        "accident.pleaseSelect" to "Please select",
        "accident.reportAccident" to "Report accidents",
        "accident.reportedAccidents" to "Reported Accidents",
        "accident.submit" to "Submit",
        "activityStats.activityStatistics" to "Exercise statistics",
        "activityStats.last3Participations" to "Last 3 Entries",
        "activityStats.noParticipations" to "No entries available",
        "activityStats.noStatistics" to "No statistics available",
        "activityStats.title" to "Exercise Stats",
        "app.name" to "Training Diary",
        "app.title" to "Training Diary",
        "auth.accountActivated" to "Account activated! You can now log in.",
        "auth.activate" to "Activate",
        "auth.activateAccount" to "Activate account",
        "auth.activationFailed" to "Activation failed. Please check the link or try again.",
        "auth.confirmPassword" to "Confirm password",
        "auth.email" to "Email",
        "auth.forgotPassword" to "Forgot password?",
        "auth.forgotPasswordDescription" to "Enter your email address. You will receive a link to reset your password.",
        "auth.hasAccount" to "Already have an account?",
        "auth.login" to "Log In",
        "auth.loginFailed" to "Login failed. Please check your credentials and try again.",
        "auth.loginSuccess" to "Successfully logged in",
        "auth.logout" to "Log Out",
        "auth.logoutSuccess" to "Successfully logged out",
        "auth.newPassword" to "New password",
        "auth.noAccount" to "Don't have an account?",
        "auth.password" to "Password",
        "auth.passwordResetSuccess" to "Your password has been changed successfully. You can now log in with your new password.",
        "auth.passwordsDoNotMatch" to "Passwords do not match.",
        "auth.passwordTooShort" to "Password must be at least 6 characters long.",
        "auth.register" to "Sign Up",
        "auth.registerFailed" to "Registration failed. Please try again.",
        "auth.registerSuccess" to "Registration successful! Please check your email to activate your account.",
        "auth.rememberMe" to "Remember me",
        "auth.resetEmailSent" to "If an account with this email exists, a reset link has been sent. Please check your inbox (and spam folder).",
        "auth.resetFailed" to "Password could not be changed. The link may have expired.",
        "auth.resetPassword" to "Set new password",
        "auth.resetRequestFailed" to "Request failed. Please try again.",
        "auth.saveNewPassword" to "Save password",
        "auth.saving" to "Saving...",
        "auth.sending" to "Sending...",
        "auth.sendResetLink" to "Send link",
        "auth.sessionExpired" to "Your session has expired. You will be logged out.",
        "auth.toLogin" to "Go to login",
        "baseDialog.close" to "Close",
        "baseDialog.minimize" to "minimize",
        "baseDialog.resize" to "Resize",
        "billing.autoSuggestMapping" to "Car suggestions",
        "billing.deleteBilling" to "Delete",
        "billing.deleteConfirm" to "Really delete this generated statement?",
        "billing.deleteError" to "Billing could not be deleted.",
        "billing.deleteSuccess" to "Billing has been deleted.",
        "billing.deleteTemplate" to "Delete template",
        "billing.deleteTemplateConfirm" to "Really delete this template?",
        "billing.deleteTemplateError" to "Template could not be deleted.",
        "billing.deleteTemplateSuccess" to "Template has been deleted.",
        "billing.documentDate" to "Date",
        "billing.downloadError" to "PDF could not be downloaded.",
        "billing.downloadPdf" to "Download PDF",
        "billing.generateAndDownloadPdf" to "Generate + download PDF",
        "billing.generateError" to "PDF could not be created.",
        "billing.generateOwnBilling" to "Generate your own billing",
        "billing.generatePdf" to "Generate PDF",
        "billing.generateSuccess" to "PDF has been created.",
        "billing.generatingPdf" to "Create PDF...",
        "billing.hourlyRate" to "Hourly salary",
        "billing.hoursAutoHint" to "Number of hours is automatically calculated from the training days: {hours} h ({count} units).",
        "billing.hoursTotal" to "Number of hours",
        "billing.iban" to "IBAN",
        "billing.ibanBoxesReset" to "IBAN boxes have been reset.",
        "billing.ibanLearnCancel" to "Cancel IBAN learning",
        "billing.ibanLearnDone" to "IBAN boxes have been assigned from the selected area.",
        "billing.ibanLearnStart" to "Learn IBAN",
        "billing.ibanLearnStep1" to "IBAN learning: please click on the first IBAN box to be used.",
        "billing.ibanLearnStep2" to "IBAN learning: please click on the last IBAN box to be used.",
        "billing.ibanWithoutCountry" to "without country code",
        "billing.locationText" to "Location",
        "billing.mappingEditorHint" to "Select the field, then click in the PDF. The position will be taken over immediately.",
        "billing.mappingEditorTitle" to "Assign fields in the PDF with a click",
        "billing.mappingField" to "Field",
        "billing.mappingHint" to "Adjust and save coordinates once for each field. These positions are used in “Create PDF”.",
        "billing.mappingPreviewError" to "PDF preview for mapping could not be loaded.",
        "billing.mappingSaved" to "Mapping has been saved.",
        "billing.mappingSaveError" to "Mapping could not be saved.",
        "billing.mappingSuggested" to "Car suggestions have been entered. Please check and fine-tune.",
        "billing.mappingSuggestError" to "Auto suggestions could not be determined.",
        "billing.mappingTitle" to "Position mapping",
        "billing.monthFrom" to "month of",
        "billing.monthTo" to "month to",
        "billing.noRuns" to "No invoices available yet.",
        "billing.noSessionsInRange" to "No training sessions found in the selected period.",
        "billing.noTemplates" to "No templates available yet.",
        "billing.omitField" to "do not specify",
        "billing.openMappingEditor" to "Mapping with a click",
        "billing.resetIbanBoxes" to "IBAN boxes reset",
        "billing.runSection" to "Billing run",
        "billing.runsTitle" to "Previous billings",
        "billing.sameAccountCheckbox" to "Same account as last statement",
        "billing.saveMapping" to "Save mapping",
        "billing.selfRecipientName" to "Own name",
        "billing.sessionHours" to "Hours",
        "billing.sessionLabel" to "Identifier",
        "billing.sessionTime" to "Time",
        "billing.step1" to "Step 1: Store template",
        "billing.step2" to "Step 2: Create a billing run",
        "billing.step3" to "Step 3: Generate and download PDF",
        "billing.subtitle" to "Create your own monthly practice lesson bill.",
        "billing.template" to "Template",
        "billing.templateDescription" to "Description",
        "billing.templateName" to "Template name",
        "billing.templatePdf" to "PDF template",
        "billing.templateSection" to "Upload template",
        "billing.title" to "Invoice",
        "billing.uploadTemplate" to "Save Template",
        "calendar.agendaEmpty" to "No events this month.",
        "calendar.agendaTitle" to "Events this month",
        "calendar.cancelCancellation.confirm" to "Cancel cancellation",
        "calendar.cancelCancellation.message" to "Really cancel the training cancellation “{title}” on {date}?",
        "calendar.cancelCancellation.title" to "Cancel training cancellation",
        "calendar.cancellation.date" to "Date",
        "calendar.cancellation.description" to "Hides regular training times.",
        "calendar.cancellation.fallbackTitle" to "Training cancelled",
        "calendar.cancellation.reasonPlaceholder" to "Reason (optional)",
        "calendar.cancellation.saving" to "Saving...",
        "calendar.cancellation.submit" to "Add",
        "calendar.cancellation.subtitle" to "Training cancellation",
        "calendar.cancellation.title" to "Training cancelled",
        "calendar.cancellation.trainingGroups" to "Training groups",
        "calendar.cancellation.untilOptional" to "Until optional",
        "calendar.customEvent.categoryPlaceholder" to "Category (optional)",
        "calendar.customEvent.description" to "District meetings, sessions, internal meetings, ...",
        "calendar.customEvent.saving" to "Saving...",
        "calendar.customEvent.submit" to "Create",
        "calendar.customEvent.subtitleFallback" to "Own event",
        "calendar.customEvent.title" to "Own events",
        "calendar.customEvent.titlePlaceholder" to "Title",
        "calendar.description" to "Training days, club tournaments and league matches in a monthly view.",
        "calendar.eventTitles.match" to "League match",
        "calendar.eventTitles.officialTournament" to "Tournament participation",
        "calendar.eventTitles.tournament" to "Tournament",
        "calendar.eventTitles.training" to "training",
        "calendar.eyebrow" to "Club calendar",
        "calendar.holidayTypes.holiday" to "Holiday",
        "calendar.holidayTypes.schoolHoliday" to "School holidays",
        "calendar.legend.customEvent" to "Event",
        "calendar.legend.holiday" to "Holiday",
        "calendar.legend.match" to "League match",
        "calendar.legend.officialTournament" to "Participation",
        "calendar.legend.schoolHoliday" to "School holidays",
        "calendar.legend.tournament" to "Tournament",
        "calendar.legend.training" to "training",
        "calendar.legend.trainingCancellation" to "Cancelled",
        "calendar.loadError" to "Calendar data could not be loaded.",
        "calendar.loading" to "Loading calendar data...",
        "calendar.match.guest" to "Away",
        "calendar.match.home" to "Home",
        "calendar.noClub" to "Please select a club first.",
        "calendar.options.subtitle" to "Cancellations & own events",
        "calendar.options.title" to "Options",
        "calendar.participants" to "{count} participants",
        "calendar.quickCancellation.confirm" to "Add cancellation",
        "calendar.quickCancellation.message" to "Mark “{title}” as training cancellation?",
        "calendar.quickCancellation.noGroups" to "No training groups with training times are available.",
        "calendar.quickCancellation.title" to "Training cancellation",
        "calendar.quickCancellation.trainingGroups" to "Affected training groups",
        "calendar.quickCancellation.useWholeRange" to "Apply to the full period ({start} to {end})",
        "calendar.recurringTrainingTime" to "Regular training time",
        "calendar.sources.customEvents" to "Own events",
        "calendar.sources.holidays" to "Holidays/school holidays",
        "calendar.sources.matches" to "League matches",
        "calendar.sources.officialTournaments" to "Tournament participations",
        "calendar.sources.tournaments" to "Tournaments",
        "calendar.sources.trainingCancellations" to "Training cancellations",
        "calendar.sources.trainingDays" to "Training days",
        "calendar.sources.trainingTimes" to "Training times",
        "calendar.sourceWarning" to "{source} could not be loaded",
        "calendar.starts" to "{count} starts",
        "calendar.title" to "Calendar",
        "calendar.today" to "Today",
        "calendar.tournament.club" to "Club tournament",
        "calendar.tournament.open" to "Open tournament",
        "calendar.weekdays.friday" to "Fri",
        "calendar.weekdays.monday" to "Mon",
        "calendar.weekdays.saturday" to "Sat",
        "calendar.weekdays.sunday" to "Sun",
        "calendar.weekdays.thursday" to "Thu",
        "calendar.weekdays.tuesday" to "Tue",
        "calendar.weekdays.wednesday" to "Wed",
        "club.accessDenied" to "Access to the club was denied.",
        "club.accessRequested" to "Access has been requested.",
        "club.accessRequestFailed" to "Access request could not be submitted.",
        "club.accessRequestPending" to "Access to this club has been requested. Please be patient.",
        "club.create" to "Create Club",
        "club.createTitle" to "Create club",
        "club.diary" to "Training diary",
        "club.errorLoadingRequests" to "Failed to load open requests",
        "club.load" to "Load",
        "club.members" to "Members",
        "club.mobileSelectHint" to "Please select a club first to use the app on your smartphone.",
        "club.name" to "Club Name",
        "club.new" to "New Club",
        "club.noAccess" to "You have not yet been granted access to this club.",
        "club.openAccessRequests" to "Open access requests",
        "club.openRequests" to "Open access requests",
        "club.requestAccess" to "Request access",
        "club.select" to "Select Club",
        "club.selectPlaceholder" to "Choose club...",
        "club.title" to "Club",
        "club.trainingDiary" to "Training diary",
        "clubSettings.associationMemberNumber" to "Association membership number",
        "clubSettings.associationMemberNumberPlaceholder" to "e.g. SN-12-3456.",
        "clubSettings.autoFetchRankings" to "Automatically retrieve rankings",
        "clubSettings.greetingHint" to "This text appears in the \"Welcome\" tab of the game report sheet.",
        "clubSettings.greetingPlaceholder" to "Welcome text for home games...",
        "clubSettings.greetingText" to "Greeting text",
        "clubSettings.guestPlayers" to "Player and Doubles Guest Team",
        "clubSettings.guestTeam" to "Guest Team Name",
        "clubSettings.homePlayers" to "Players and home team doubles",
        "clubSettings.homeTeam" to "Home Team Name",
        "clubSettings.loadFailed" to "Settings could not be loaded",
        "clubSettings.memberDataQuality" to "Data quality members",
        "clubSettings.memberDataQualityHint" to "These fields count as necessary on the member page. All fields can still be entered.",
        "clubSettings.myTischtennisFedNickname" to "Association abbreviation",
        "clubSettings.myTischtennisFedNicknamePlaceholder" to "e.g. HeTTV",
        "clubSettings.myTischtennisRankings" to "myTischtennis TTR/QTTR rankings",
        "clubSettings.myTischtennisRankingsHint" to "Automatic retrieval of the club ranking for TTR and QTTR updates of the members.",
        "clubSettings.noClubSelected" to "Please select a doctor first.",
        "clubSettings.placeholders" to "Spacer",
        "clubSettings.rankingsUsesAssociationNumber" to "The club number for the ranking list retrieval corresponds to the association membership number above.",
        "clubSettings.requireCity" to "Location Required",
        "clubSettings.requireEmail" to "Email Required",
        "clubSettings.requirePhone" to "Phone Number Required",
        "clubSettings.requirePostalCode" to "Zip code required",
        "clubSettings.requireStreet" to "Road Required",
        "clubSettings.save" to "Save",
        "clubSettings.saved" to "Stored",
        "clubSettings.saveFailed" to "Cannot Save",
        "clubSettings.settings" to "Settings",
        "clubSettings.title" to "Club Settings",
        "clubSettings.trainingGroups" to "Training groups.",
        "clubSettings.trainingTimes" to "Practice schedule",
        "common.actions" to "Actions",
        "common.active" to "Active",
        "common.add" to "Add",
        "common.all" to "All",
        "common.apply" to "Apply",
        "common.back" to "Back",
        "common.cancel" to "Cancel",
        "common.choose" to "Choose",
        "common.clear" to "Clear",
        "common.close" to "Close",
        "common.confirm" to "Confirm",
        "common.create" to "Create",
        "common.date" to "Date",
        "common.days" to "days",
        "common.delete" to "Delete",
        "common.description" to "Description",
        "common.details" to "Details",
        "common.disabled" to "Disabled",
        "common.download" to "Download",
        "common.edit" to "Edit",
        "common.enabled" to "Enabled",
        "common.filter" to "filter",
        "common.hours" to "hours",
        "common.in" to "in",
        "common.inactive" to "Inactive",
        "common.loading" to "Loading...",
        "common.min" to "min",
        "common.minutes" to "minutes",
        "common.months" to "months",
        "common.move" to "Move",
        "common.name" to "name",
        "common.new" to "New",
        "common.next" to "Next",
        "common.no" to "No",
        "common.ok" to "OK",
        "common.optional" to "Optional",
        "common.period" to "Period",
        "common.previous" to "Previous",
        "common.refresh" to "Reload",
        "common.remove" to "Remove",
        "common.required" to "Required",
        "common.reset" to "Reset",
        "common.save" to "Save",
        "common.saved" to "Saved",
        "common.saving" to "Saving...",
        "common.search" to "Search",
        "common.select" to "Select",
        "common.status" to "status",
        "common.submit" to "Submit",
        "common.time" to "Time",
        "common.today" to "Today",
        "common.type" to "Type",
        "common.update" to "Update",
        "common.view" to "View",
        "common.weeks" to "weeks",
        "common.years" to "years",
        "common.yes" to "Yes",
        "courtDrawing.cancel" to "Cancel",
        "courtDrawing.durationMinutes" to "Duration (minutes)",
        "courtDrawing.durationText" to "Duration (text)",
        "courtDrawing.durationTextPlaceholder" to "e.g. 2x5",
        "courtDrawing.group" to "Group",
        "courtDrawing.ok" to "OK",
        "courtDrawing.selectGroup" to "Select group...",
        "courtDrawing.title" to "Configure table tennis exercise",
        "courtDrawingRender.animationRunning" to "Animation in progress...",
        "courtDrawingRender.startAnimation" to "Start animation",
        "courtDrawingTool.addStroke" to "Add stroke",
        "courtDrawingTool.backhand" to "Backhand",
        "courtDrawingTool.codeLabel" to "Code",
        "courtDrawingTool.completeFirstStroke" to "Complete the first stroke",
        "courtDrawingTool.completeFirstStrokeHint" to "Choose start position, stroke side, spin and target. The graphic will then appear.",
        "courtDrawingTool.configureExercise" to "Configure exercise",
        "courtDrawingTool.counterSpin" to "Counter-spin",
        "courtDrawingTool.forehand" to "Forehand",
        "courtDrawingTool.noAdditionalStrokes" to "No follow-up strokes added yet.",
        "courtDrawingTool.preview" to "Preview",
        "courtDrawingTool.previewHint" to "The graphic appears as soon as the first stroke is fully configured.",
        "courtDrawingTool.service" to "Serve:",
        "courtDrawingTool.serviceTitle" to "Serve",
        "courtDrawingTool.sidespin" to "Sidespin",
        "courtDrawingTool.sideUnderspin" to "Side-backspin",
        "courtDrawingTool.spin" to "Spin:",
        "courtDrawingTool.startLeft" to "left",
        "courtDrawingTool.startMiddle" to "center",
        "courtDrawingTool.startRight" to "right",
        "courtDrawingTool.stepAdditionalStrokes" to "4. Follow-up strokes",
        "courtDrawingTool.stepAdditionalStrokesHint" to "Optionally build additional balls as a sequence.",
        "courtDrawingTool.stepFirstStroke" to "2. First stroke",
        "courtDrawingTool.stepFirstStrokeHint" to "Set stroke side and spin for the first ball.",
        "courtDrawingTool.stepStartPosition" to "1. Start position",
        "courtDrawingTool.stepStartPositionHint" to "Which service position does the exercise start from?",
        "courtDrawingTool.stepTarget" to "3. Target",
        "courtDrawingTool.stepTargetHint" to "Choose the target zone for the first stroke.",
        "courtDrawingTool.strokeSide" to "Side",
        "courtDrawingTool.strokeTypeBlock" to "Block",
        "courtDrawingTool.strokeTypeChopDefense" to "Chop defense",
        "courtDrawingTool.strokeTypeCounter" to "Counter",
        "courtDrawingTool.strokeTypeFlip" to "flip",
        "courtDrawingTool.strokeTypeLabel" to "Stroke type",
        "courtDrawingTool.strokeTypeLobDefense" to "Lob defense",
        "courtDrawingTool.strokeTypePush" to "Push",
        "courtDrawingTool.strokeTypeSmash" to "Smash",
        "courtDrawingTool.strokeTypeTopspin" to "Top spin",
        "courtDrawingTool.targetBackhandHalfLong" to "Backhand half-long",
        "courtDrawingTool.targetBackhandLong" to "Backhand deep",
        "courtDrawingTool.targetBackhandShort" to "Backhand short",
        "courtDrawingTool.targetForehandHalfLong" to "Forehand half-long",
        "courtDrawingTool.targetForehandLong" to "Forehand deep",
        "courtDrawingTool.targetForehandShort" to "Forehand short",
        "courtDrawingTool.targetMiddleHalfLong" to "Middle half-long",
        "courtDrawingTool.targetMiddleLong" to "Middle deep",
        "courtDrawingTool.targetMiddleShort" to "Middle short",
        "courtDrawingTool.targetPosition" to "Target position:",
        "courtDrawingTool.targetPositionLabel" to "Target position",
        "courtDrawingTool.title" to "Table tennis exercise drawing",
        "courtDrawingTool.titleLabel" to "Title",
        "courtDrawingTool.topspin" to "Topspin",
        "courtDrawingTool.toTarget" to "to",
        "courtDrawingTool.underspin" to "Backspin",
        "createClub.clubExists" to "The association already exists.",
        "createClub.clubName" to "name of club",
        "createClub.create" to "Create a club",
        "createClub.nameRequired" to "Please give the association a meaningful name.",
        "createClub.title" to "Create a club",
        "createClub.unknownError" to "Unknown error occurred, try again",
        "csvImport.cancel" to "Cancel",
        "csvImport.import" to "Importing",
        "csvImport.title" to "Import Schedule",
        "csvImport.uploadCsvFile" to "Upload CSV file",
        "dialogExamples.composableConfirmDetails" to "This is an example of the useConfirm Composable.",
        "dialogExamples.composableConfirmMessage" to "Do you wish to proceed?",
        "dialogExamples.composableConfirmTitle" to "useConfirm example",
        "dialogExamples.composableDialogText" to "This dialog uses the useDialog Composable.",
        "dialogExamples.composableDialogText2" to "This makes it easier to manage!",
        "dialogExamples.composableDialogTitle" to "Dialogue with useDialog Composable",
        "dialogExamples.composableUsage" to "Composable Usage",
        "dialogExamples.confirmDeleteMessage" to "Are you sure you wish to delete this gift card?",
        "dialogExamples.confirmDeleteTitle" to "Confirm Delete",
        "dialogExamples.confirmDialogs" to "Confirmation dialogs",
        "dialogExamples.confirmWarningDetails" to "This action cannot be undone.",
        "dialogExamples.confirmWarningMessage" to "Are you sure you want to continue?",
        "dialogExamples.error" to "Error",
        "dialogExamples.errorDetails" to "Please try again later.",
        "dialogExamples.errorMessage" to "An error has occurred.",
        "dialogExamples.fullscreenModal" to "Fullscreen Modal",
        "dialogExamples.fullscreenModalText" to "This is a fullscreen dialog.",
        "dialogExamples.fullscreenModalText2" to "It occupies almost the entire screen (90vw x 90vh).",
        "dialogExamples.fullscreenModalTitle" to "Fullscreen Modal Dialog",
        "dialogExamples.info" to "Information",
        "dialogExamples.infoDialogs" to "Information dialogues",
        "dialogExamples.infoMessage" to "This is an information message.",
        "dialogExamples.information" to "information",
        "dialogExamples.largeModal" to "Large Modal",
        "dialogExamples.largeModalText" to "This is a great modal dialogue.",
        "dialogExamples.largeModalText2" to "It offers more space for content.",
        "dialogExamples.largeModalTitle" to "Large Modal Dialogue",
        "dialogExamples.minimizedDialogs" to "Minimized dialogs:",
        "dialogExamples.modalDialogs" to "Modal Dialogues",
        "dialogExamples.multipleDialogs" to "Multiple Dialogs",
        "dialogExamples.nonModalDialog" to "Non-modal dialogue",
        "dialogExamples.nonModalDialogs" to "Non-modal dialogues",
        "dialogExamples.nonModalText" to "This is a non-modal dialogue.",
        "dialogExamples.nonModalText2" to "You can move it and open several at once!",
        "dialogExamples.nonModalTitle" to "Non-modal dialogue",
        "dialogExamples.scrollArea" to "Scroll area for lots of content...",
        "dialogExamples.secondNonModalText" to "Another non-modal dialogue!",
        "dialogExamples.secondNonModalTitle" to "Second non-modal dialogue",
        "dialogExamples.simpleModal" to "Simple Modal",
        "dialogExamples.simpleModalText" to "This is a simple modal dialog with medium size.",
        "dialogExamples.simpleModalText2" to "Click outside or on the X to close.",
        "dialogExamples.simpleModalTitle" to "Simple modal dialogue",
        "dialogExamples.success" to "Achievement",
        "dialogExamples.successDetails" to "All changes have been saved.",
        "dialogExamples.successMessage" to "The operation has been completed successfully!",
        "dialogExamples.title" to "Dialog examples",
        "dialogExamples.useConfirmExample" to "useConfirm example",
        "dialogExamples.useDialogExample" to "useDialog example",
        "dialogExamples.warning" to "Cautions",
        "dialogExamples.warningDetails" to "Some fields may not be filled in completely.",
        "dialogExamples.warningMessage" to "The following links may help you:",
        "dialogManager.close" to "Close",
        "dialogManager.minimize" to "minimize",
        "dialogManager.noMinimizedDialogs" to "No minimized dialogs",
        "dialogs.confirm.cancel" to "Cancel",
        "dialogs.confirm.ok" to "OK",
        "dialogs.confirm.title" to "Confirmation",
        "dialogs.info.ok" to "OK",
        "dialogs.info.title" to "information",
        "diary.activeTrainingDay" to "Active training day",
        "diary.activities" to "Activities",
        "diary.activity" to "Activity",
        "diary.activityDrawing" to "Activity drawing",
        "diary.activityImage" to "Activity image",
        "diary.activityNotFound" to "Activity not found. Please choose one from the list.",
        "diary.activityOrTimeblock" to "Activity / time block",
        "diary.activityPlaceholder" to "Activity",
        "diary.activityRequired" to "Please enter an activity.",
        "diary.addActivity" to "Add activity",
        "diary.addGroup" to "Add group",
        "diary.addGroupActivity" to "Add group activity",
        "diary.addGroupButton" to "+ Group",
        "diary.addTimeblock" to "Time block",
        "diary.all" to "All",
        "diary.applySuggestion" to "Apply suggestion",
        "diary.assignParticipants" to "Assign participants",
        "diary.assignParticipantsForGroupActivity" to "Assign participants for group activity",
        "diary.assignShort" to "Assign",
        "diary.bookAccident" to "Record accident",
        "diary.confirmDelete" to "Confirm deletion",
        "diary.confirmDeleteDate" to "Do you really want to delete this date?",
        "diary.confirmDeleteDateDetails" to "All associated data will also be deleted.",
        "diary.confirmDeleteGroup" to "Do you really want to delete the group \"{name}\"?",
        "diary.createDate" to "Create date",
        "diary.createDrawing" to "Create exercise drawing",
        "diary.createGroups" to "Create groups",
        "diary.createNew" to "Create new",
        "diary.createNewDate" to "Create new date",
        "diary.date" to "Date",
        "diary.dateCannotBeDeleted" to "Date cannot be deleted",
        "diary.dateCannotBeDeletedDetails" to "There is still content present (training plan, participants, activities, accidents or notes).",
        "diary.dateNoLongerCurrent" to "The selected date was no longer current. Please try again.",
        "diary.delete" to "Delete",
        "diary.deleteDate" to "Delete date",
        "diary.deleteGroup" to "Delete group",
        "diary.duration" to "Duration",
        "diary.durationExampleLong" to "e.g. 2x7 or 3*5",
        "diary.durationExampleShort" to "e.g. 2x7",
        "diary.durationMinutes" to "Duration (min)",
        "diary.editActivity" to "Edit activity",
        "diary.editGroupActivity" to "Edit group activity",
        "diary.editTrainingTimes" to "Edit training times",
        "diary.errorCreatingActivity" to "Error creating activity",
        "diary.errorCreatingGroups" to "Error creating groups",
        "diary.errorDeletingGroup" to "Error deleting group",
        "diary.errorLoadingPredefinedActivities" to "Failed to load predefined activities",
        "diary.errorMarkingForm" to "Error marking the membership form",
        "diary.errorOccurred" to "An error occurred. Please try again.",
        "diary.existingGroups" to "Existing groups",
        "diary.filterAbsent" to "Absent",
        "diary.filterAll" to "All",
        "diary.filterExcused" to "Excused",
        "diary.filterPresent" to "Present",
        "diary.filterTest" to "Trial",
        "diary.formHandedOver" to "Membership form handed over",
        "diary.formMarkedAsHandedOver" to "Membership form marked as handed over",
        "diary.freeActivities" to "Free activities",
        "diary.gallery" to "Member gallery",
        "diary.galleryCreating" to "Creating gallery…",
        "diary.group" to "Group...",
        "diary.groupDeletedSuccessfully" to "Group deleted successfully.",
        "diary.groupManagement" to "Group management",
        "diary.groupsCreated" to "{count} groups were created successfully.",
        "diary.groupsLabel" to "Groups",
        "diary.groupsSection" to "Groups",
        "diary.leader" to "Leader",
        "diary.min" to "Min",
        "diary.minutes" to "Minutes",
        "diary.mustCreateAtLeastTwoGroups" to "At least 2 groups must be created the first time.",
        "diary.nextAppointment" to "Next appointment",
        "diary.noActiveTrainingDay" to "No training day selected.",
        "diary.noEntries" to "No entries",
        "diary.noFreeActivitiesYet" to "No free activities have been recorded yet.",
        "diary.noParticipants" to "No participants available for this training day.",
        "diary.numberOfGroups" to "Number of groups",
        "diary.oneGroupAdded" to "1 group was added successfully.",
        "diary.openPlanItems" to "{count} open",
        "diary.openPlanItemsLabel" to "Plan status",
        "diary.overallActivity" to "Overall activity",
        "diary.participants" to "Participants",
        "diary.participantStatusCancelled" to "Cancelled",
        "diary.participantStatusExcused" to "Excused",
        "diary.participantStatusNone" to "No status",
        "diary.planActivitiesCount" to "Planned activities",
        "diary.planAddHint" to "Add new plan items using the actions above.",
        "diary.planEmptyState" to "Nothing has been entered in the training plan yet.",
        "diary.quickAdd" to "+ Quick add",
        "diary.quickCreate" to "Quick add",
        "diary.quickCreateFailed" to "Could not create the training day entry.",
        "diary.quickCreateNoSlot" to "No free training slot found (per group schedule, one year ahead).",
        "diary.searchParticipants" to "Search participants",
        "diary.selectGroup" to "Select group...",
        "diary.selectGroupAndActivity" to "Please select a group and enter an activity.",
        "diary.selectParticipantAndNote" to "Please select a participant and enter a note.",
        "diary.selectTags" to "Select tags",
        "diary.selectTrainingGroup" to "Select training group",
        "diary.selectTrainingGroupPlaceholder" to "Please choose...",
        "diary.showImage" to "Show image/drawing",
        "diary.skipSuggestion" to "Continue without suggestion",
        "diary.standardActivities" to "Standard activities",
        "diary.standardActivityAddError" to "Standard activity could not be added.",
        "diary.standardDurationShort" to "Min",
        "diary.startTime" to "Start time",
        "diary.statusEmpty" to "This training day is still empty.",
        "diary.statusInProgress" to "This training day is partially prepared.",
        "diary.statusOpenShort" to "Open",
        "diary.statusReady" to "Times and training plan are set.",
        "diary.statusReadyShort" to "Ready",
        "diary.suggestion" to "Suggestion",
        "diary.timeblock" to "Time block",
        "diary.timeblocksCount" to "Time blocks",
        "diary.title" to "Training diary",
        "diary.today" to "Today",
        "diary.trainingDayAsPDF" to "Download training day as PDF",
        "diary.trainingDayAsPDFShort" to "Training day as PDF",
        "diary.trainingDayChecklist" to "Completion checklist",
        "diary.trainingDaySection" to "Training day",
        "diary.trainingDaySummaryPdfShort" to "Participant summary as PDF",
        "diary.trainingEnd" to "Training end",
        "diary.trainingPlan" to "Training plan",
        "diary.trainingPlanAsPDF" to "Training plan as PDF",
        "diary.trainingPlanPdfShort" to "Schedule as PDF",
        "diary.trainingStart" to "Training start",
        "diary.trainingTimesUpdated" to "Training times updated successfully.",
        "diary.trainingWindow" to "Training window",
        "diary.trainingWindowUnset" to "Not set yet",
        "diary.unassignedPlanItems" to "{count} open",
        "diary.updateTimes" to "Update times",
        "errors.ERROR_ACTIVITY_IMAGE_DELETE_FAILED" to "Error in deleting the image.",
        "errors.ERROR_BAD_REQUEST" to "Invalid request.",
        "errors.ERROR_CLUB_ALREADY_EXISTS" to "The association already exists.",
        "errors.ERROR_CLUB_NAME_REQUIRED" to "Please give the association a meaningful name.",
        "errors.ERROR_CLUB_NAME_TOO_SHORT" to "Please give the association a meaningful name.",
        "errors.ERROR_CLUB_NOT_FOUND" to "Club not found.",
        "errors.ERROR_DIARY_ACTIVITY_PARTICIPANTS_UPDATE_FAILED" to "Error updating activity participants",
        "errors.ERROR_DIARY_ASSIGN_ALL_PARTICIPANTS_FAILED" to "Error assigning all participants",
        "errors.ERROR_DIARY_ASSIGN_GROUP_FAILED" to "Error mapping group",
        "errors.ERROR_DIARY_DATE_NOT_FOUND" to "Date not found",
        "errors.ERROR_DIARY_DATE_UPDATED" to "Date was not (no longer) available. The date picker has been updated. Please try again.",
        "errors.ERROR_DIARY_GROUP_ASSIGNMENT_UPDATE_FAILED" to "Error updating group assignment",
        "errors.ERROR_DIARY_IMAGE_LOAD_FAILED" to "FAILED TO LOAD IMAGE",
        "errors.ERROR_DIARY_MEMBER_CREATE_FAILED" to "Error creating member",
        "errors.ERROR_DIARY_NO_EXERCISE_DATA" to "No exercise data received",
        "errors.ERROR_DIARY_NO_PARTICIPANTS" to "No participants available for this training day.",
        "errors.ERROR_DIARY_PARTICIPANT_ASSIGN_FAILED" to "Participants could not be assigned.",
        "errors.ERROR_DIARY_PARTICIPANT_GROUP_ASSIGNMENT_UPDATE_FAILED" to "Error updating participant group assignment",
        "errors.ERROR_DIARY_PDF_GENERATION_FAILED" to "Error generating PDF.",
        "errors.ERROR_DIARY_STATS_LOAD_FAILED" to "Failed to load statistics.",
        "errors.ERROR_FORBIDDEN" to "Permission denied.",
        "errors.ERROR_GROUP_ALREADY_EXISTS" to "A group by this name already exists.",
        "errors.ERROR_GROUP_CANNOT_RENAME_PRESET" to "Default groups cannot be renamed.",
        "errors.ERROR_GROUP_INVALID_PRESET_TYPE" to "Invalid preset type.",
        "errors.ERROR_GROUP_NAME_REQUIRED" to "Please enter a group name.",
        "errors.ERROR_GROUP_NOT_FOUND" to "Group not found.",
        "errors.ERROR_INTERNAL_SERVER_ERROR" to "An internal server error has occurred.",
        "errors.ERROR_INVALID_PASSWORD" to "Incorrect password.",
        "errors.ERROR_LOG_NOT_FOUND" to "Log entry not found",
        "errors.ERROR_LOGIN_FAILED" to "Login failed.",
        "errors.ERROR_MEMBER_ALREADY_EXISTS" to "The member already exists",
        "errors.ERROR_MEMBER_FIRSTNAME_REQUIRED" to "First name is required.",
        "errors.ERROR_MEMBER_LASTNAME_REQUIRED" to "Last name is required.",
        "errors.ERROR_MEMBER_NOT_FOUND" to "Members not found",
        "errors.ERROR_MEMBER_TRANSFER_BULK_FAILED" to "Bulk transfer error: {message}",
        "errors.ERROR_MYTISCHTENNIS_ACCOUNT_NOT_LINKED" to "No myTischtennis account linked.",
        "errors.ERROR_MYTISCHTENNIS_CAPTCHA_REQUIRED" to "CAPTCHA required. MyTischtennis now uses a CAPTCHA when logging in. Please log in directly to mytischtennis.de to solve the CAPTCHA, or contact support.",
        "errors.ERROR_MYTISCHTENNIS_INVALID_PASSWORD" to "Invalid myTischtennis password.",
        "errors.ERROR_MYTISCHTENNIS_LOGIN_FAILED" to "Login failed. Please check your credentials.",
        "errors.ERROR_MYTISCHTENNIS_NO_PASSWORD_SAVED" to "No password saved and session expired. Please enter your password.",
        "errors.ERROR_MYTISCHTENNIS_PASSWORD_NOT_SAVED" to "No password saved. Please enter your password.",
        "errors.ERROR_MYTISCHTENNIS_SESSION_EXPIRED" to "Session expired. Please log in again.",
        "errors.ERROR_MYTISCHTENNIS_USER_NOT_FOUND" to "myTischtennis user not found.",
        "errors.ERROR_NOT_FOUND" to "Not found. ",
        "errors.ERROR_OFFICIAL_TOURNAMENT_PDF_UPLOAD" to "Error uploading PDF.",
        "errors.ERROR_SESSION_EXPIRED" to "Session expired.",
        "errors.ERROR_TEAM_LINK_TO_LEAGUE_REQUIRED" to "Please assign a league to the team first so that documents can be processed.",
        "errors.ERROR_TEAM_NOT_LINKED_TO_LEAGUE" to "This team is not assigned to any league.",
        "errors.ERROR_TEAM_PDF_LOAD_FAILED" to "Failed to load PDF",
        "errors.ERROR_TEAM_STATS_LOAD_FAILED" to "Statistics could not be loaded",
        "errors.ERROR_TOURNAMENT_CLASS_NAME_REQUIRED" to "Please enter a class name!",
        "errors.ERROR_TOURNAMENT_NO_DATE" to "No tournament date available!",
        "errors.ERROR_TOURNAMENT_NO_PARTICIPANTS" to "No participants found in training day for this date!",
        "errors.ERROR_TOURNAMENT_NO_TRAINING_DAY" to "No training day found for {date}!",
        "errors.ERROR_TOURNAMENT_NO_VALID_PARTICIPANTS" to "No valid participants found in training day for this date!",
        "errors.ERROR_TOURNAMENT_NOT_FOUND" to "Tournament not found",
        "errors.ERROR_TOURNAMENT_PDF_GENERATION_FAILED" to "Error Generating PDF",
        "errors.ERROR_TOURNAMENT_SELECT_FIRST" to "Please select a tournament first.",
        "errors.ERROR_TRAINING_STATS_LOAD_FAILED" to "Error loading training statistics",
        "errors.ERROR_UNAUTHORIZED" to "Not authorized.",
        "errors.ERROR_UNKNOWN_ERROR" to "An unknown error occurred.",
        "errors.ERROR_USER_NOT_FOUND" to "User Not Found.",
        "errors.ERROR_VALIDATION_FAILED" to "Failed validation",
        "errors.SUCCESS_DIARY_GROUP_ASSIGNMENT_UPDATED" to "Group Mapping Updated",
        "errors.SUCCESS_DIARY_MEMBER_CREATED" to "Member \"{name}\" was successfully created and added!",
        "errors.SUCCESS_OFFICIAL_TOURNAMENT_PDF_UPLOAD" to "Upload successful.",
        "home.authenticatedFeatures.keepDiary" to "Keep a training diary",
        "home.authenticatedFeatures.keepDiaryDesc" to "Document training activities, participants, activities and notes for each training day.",
        "home.authenticatedFeatures.manageMembers" to "Manage members",
        "home.authenticatedFeatures.manageMembersDesc" to "Manage your club members, create training groups and keep track of all participants.",
        "home.authenticatedFeatures.manageTournaments" to "Manage tournaments",
        "home.authenticatedFeatures.manageTournamentsDesc" to "Create internal and open tournaments, import official tournaments and manage entries.",
        "home.authenticatedFeatures.myTischtennisIntegration" to "MyTable Tennis integration",
        "home.authenticatedFeatures.myTischtennisIntegrationDesc" to "Automatically synchronize game results and statistics with MyTischtennis.de.",
        "home.authenticatedFeatures.pdfExport" to "PDF export",
        "home.authenticatedFeatures.pdfExportDesc" to "Export training days as PDF with participants, activities and statistics.",
        "home.authenticatedFeatures.statistics" to "Statistics & evaluations",
        "home.authenticatedFeatures.statisticsDesc" to "Get detailed training and participation overviews as well as activity statistics.",
        "home.authenticatedFeatures.teamManagement" to "Team management",
        "home.authenticatedFeatures.teamManagementDesc" to "Manage teams, leagues, fixtures and results for your club.",
        "home.authenticatedFeatures.trainingGroups" to "Training groups & times",
        "home.authenticatedFeatures.trainingGroupsDesc" to "Organize training groups, define training times and manage group assignments.",
        "home.faq" to "Frequently asked questions",
        "home.faqFree.answer" to "Yes, you can start for free. Extensions can follow later.",
        "home.faqFree.question" to "Is it free to use?",
        "home.faqInstallation.answer" to "No, it is a web application. You use it directly in the browser – on desktop, tablet and smartphone.",
        "home.faqInstallation.question" to "Do I need installation?",
        "home.faqMyTischtennis.answer" to "Yes, after setup, the application automatically synchronizes with MyTischtennis.de and imports game results and statistics.",
        "home.faqMyTischtennis.question" to "Does the MyTischtennis integration work automatically?",
        "home.faqPermissions.answer" to "There are four roles: Admin, Coach, Team Leader and Member. Each role has specific permissions that can be customized.",
        "home.faqPermissions.question" to "How does the authorization system work?",
        "home.faqPrivacy.answer" to "We rely on data economy, transparent approvals, role-based access and complete activity logs. The application is GDPR compliant.",
        "home.faqPrivacy.question" to "What about data protection?",
        "home.faqTournaments.answer" to "You can manage internal tournaments, open tournaments and official tournaments (e.g. from associations). Official tournaments can be imported.",
        "home.faqTournaments.question" to "Which tournament types are supported?",
        "home.faqTrainingGroups.answer" to "Yes, you can create training groups, define training times and assign members to the groups. The training diary automatically suggests suitable groups and times.",
        "home.faqTrainingGroups.question" to "Can I manage training groups and times?",
        "home.features.activityLog" to "Activity log",
        "home.features.activityLogDesc" to "Complete logging of all actions for transparency and traceability.",
        "home.features.keepDiary" to "Keep a training diary",
        "home.features.keepDiaryDesc" to "Document the content, scope and attendance of each unit – comprehensibly and structured.",
        "home.features.manageMembers" to "Manage members",
        "home.features.manageMembersDesc" to "Create member profiles, form groups and keep contact and approval statuses up to date.",
        "home.features.myTischtennisIntegration" to "MyTable Tennis integration",
        "home.features.myTischtennisIntegrationDesc" to "Automatic synchronization with MyTischtennis.de for game results and statistics.",
        "home.features.officialTournaments" to "Official tournaments",
        "home.features.officialTournamentsDesc" to "Import and manage official tournaments, manage entries and results.",
        "home.features.organizeSchedules" to "Organize game plans",
        "home.features.organizeSchedulesDesc" to "Plan games, tournaments and events including groups, rounds and results.",
        "home.features.pdfExport" to "PDF export",
        "home.features.pdfExportDesc" to "Export training days as PDF with participants, activities and statistics.",
        "home.features.permissionSystem" to "Authorization system",
        "home.features.permissionSystemDesc" to "Role-based access (admin, coach, team captain, member) with individual permissions.",
        "home.features.predefinedActivities" to "Predefined activities",
        "home.features.predefinedActivitiesDesc" to "Use templates for recurring exercises and speed up your documentation.",
        "home.features.security" to "Security & GDPR",
        "home.features.securityDesc" to "Data protection-friendly architecture, member approvals and transparent access.",
        "home.features.statistics" to "Statistics & evaluation",
        "home.features.statisticsDesc" to "Receive training and participation overviews, recognize development and plan specifically.",
        "home.features.teamManagement" to "Team management",
        "home.features.teamManagementDesc" to "Manage teams, leagues, fixtures and results for your club.",
        "home.features.trainingGroups" to "Training groups & times",
        "home.features.trainingGroupsDesc" to "Organize training groups, define training times and manage group assignments.",
        "home.forWhom" to "Who is the training diary for?",
        "home.forWhomText" to "The TrainingDiary is the comprehensive platform for clubs, departments and coaching teams. It combines member management with training groups and times, detailed training diary, comprehensive tournament organization (internal, open and official tournaments), team management with league integration, MyTischtennis synchronization, meaningful statistics and evaluations as well as a flexible authorization system in a modern web application. Through clear roles (admin, trainer, team leader, member) and individual authorizations, those responsible retain control, while members can participate in a self-determined manner. Ideal for team, racquet and individual sports – from junior to advanced level. GDPR compliant with transparent approvals and full activity log.",
        "home.haveAccount" to "I already have an account",
        "home.heroFeatures.memberManagement" to "Member and group management",
        "home.heroFeatures.myTischtennis" to "MyTable Tennis integration",
        "home.heroFeatures.statistics" to "Statistics & evaluations",
        "home.heroFeatures.teamManagement" to "Team Management & Leagues",
        "home.heroFeatures.tournaments" to "Tournaments (internal, open, official)",
        "home.heroFeatures.trainingDiary" to "Training diary & documentation",
        "home.heroFeatures.trainingGroups" to "Training groups & training times",
        "home.heroSubtitle" to "The TrainingDiary is the comprehensive solution for clubs: member management, training groups, training times, training diary, tournament organization, team management, MyTable Tennis integration, statistics and more - GDPR compliant and easy to use.",
        "home.heroTitle" to "Club management, training planning and tournaments – all in one place",
        "home.howItWorks" to "This is how it works",
        "home.registerNow" to "Register now for free",
        "home.rolesAndPrivacy" to "Roles, permissions & GDPR",
        "home.startFree" to "Start for free",
        "home.step1.description" to "Create an account for free and activate it via email.",
        "home.step1.title" to "Register",
        "home.step2.description" to "Create your club, invite members and set up groups.",
        "home.step2.title" to "Create a club",
        "home.step3.description" to "Plan appointments, document training and track progress.",
        "home.step3.title" to "Plan & document",
        "home.welcome" to "Welcome to the training diary",
        "home.welcomeBack" to "Welcome back! You are logged in successfully.",
        "home.whatCanYouDo" to "What can you do with the training diary?",
        "imageDialog.close" to "Close",
        "imageDialog.noImageAvailable" to "No picture available",
        "imageDialog.title" to "Screen",
        "imageViewer.camera" to "Camera",
        "imageViewer.delete" to "Delete",
        "imageViewer.deleteImage" to "Delete image",
        "imageViewer.nextImage" to "Next image",
        "imageViewer.noImageAvailable" to "No picture available",
        "imageViewer.previousImage" to "previous image",
        "imageViewer.rotateLeft" to "Rotate 90° Left",
        "imageViewer.rotateRight" to "Rotate 90° Right",
        "imageViewer.selectFiles" to "Select Files",
        "imageViewer.setAsPrimary" to "set as main image",
        "imageViewer.setAsPrimaryButton" to "Set featured image",
        "imprint.contact" to "Contact",
        "imprint.serviceProvider" to "Name of the service provider",
        "imprint.title" to "Legal notice",
        "languages.de" to "Deutsch (German)",
        "languages.de-CH" to "Schwiizerdütsch (Swiss German)",
        "languages.en-AU" to "English (Australian English)",
        "languages.en-GB" to "English (British English)",
        "languages.en-US" to "English",
        "languages.es" to "Español (Spanish)",
        "languages.fil" to "Filipino",
        "languages.fr" to "Français (French)",
        "languages.it" to "Italiano (Italian)",
        "languages.ja" to "日本語 (Japanese)",
        "languages.pl" to "Polski (Polish)",
        "languages.th" to "ไทย (Thai)",
        "languages.tl" to "Tagalog",
        "languages.zh" to "中文 (Chinese)",
        "legal.backToHome" to "Back to homepage",
        "legal.imprint" to "Legal notice",
        "legal.privacyPolicy" to "Privacy policy",
        "logs.actions" to "Actions",
        "logs.all" to "All",
        "logs.apiRequests" to "API Requests",
        "logs.applyFilters" to "Apply filter",
        "logs.backend" to "Backend Settings",
        "logs.clearFilters" to "Revert",
        "logs.cronJobs" to "Cron Jobs",
        "logs.details" to "Details",
        "logs.displayed" to "displayed",
        "logs.displayedLabel" to "Viewed",
        "logs.error" to "Error",
        "logs.errorLabel" to "Error",
        "logs.errorLoading" to "Error loading logs",
        "logs.executionTime" to "Execution time",
        "logs.from" to "From",
        "logs.httpMethod" to "HTTP Method",
        "logs.justNow" to "just now",
        "logs.loadingLogs" to "Loading logs...",
        "logs.logDetails" to "Log Detail",
        "logs.logDetailsLabels.error" to "Error",
        "logs.logDetailsLabels.executionTime" to "Execution time",
        "logs.logDetailsLabels.ip" to "IP",
        "logs.logDetailsLabels.method" to "Method",
        "logs.logDetailsLabels.path" to "path",
        "logs.logDetailsLabels.requestBody" to "Request Body",
        "logs.logDetailsLabels.responseBody" to "Response Body",
        "logs.logDetailsLabels.schedulerJob" to "Scheduler Job",
        "logs.logDetailsLabels.status" to "status",
        "logs.logDetailsLabels.time" to "Time",
        "logs.logDetailsLabels.type" to "Type",
        "logs.logType" to "Log Type",
        "logs.logTypeLabels.api_request" to "API Request",
        "logs.logTypeLabels.cron_job" to "Cron Job",
        "logs.logTypeLabels.manual" to "Manual",
        "logs.logTypeLabels.scheduler" to "scheduler",
        "logs.manual" to "Manual Executions",
        "logs.method" to "Method",
        "logs.minutesAgo" to "{n} minutes ago",
        "logs.mytischtennis" to "myTischtennis",
        "logs.next" to "Next ",
        "logs.of" to "by",
        "logs.ownBackend" to "Own backend",
        "logs.page" to "Page",
        "logs.path" to "path",
        "logs.pathPlaceholder" to "e.g. /api/diary",
        "logs.previous" to "Previous",
        "logs.recordsFound" to "Records found",
        "logs.scheduler" to "scheduler",
        "logs.secondsAgo" to "{n} seconds ago",
        "logs.status" to "status",
        "logs.subtitle" to "Overview of all API requests, responses and executions",
        "logs.successfullyLoaded" to "Loaded successfully",
        "logs.time" to "Time",
        "logs.title" to "System Logs",
        "logs.to" to "To",
        "logs.total" to "Total",
        "logs.type" to "Type",
        "matchReport.analyzeNuscore" to "nuscore analysis",
        "matchReport.createLocalCopy" to "Create local copy",
        "matchReport.hideAnalyzer" to "Hide Analyzer",
        "matchReportApi.availablePlayers" to "Available Players",
        "matchReportApi.bothTeamsAppeared" to "Both teams competed",
        "matchReportApi.clickToRemove" to "Click to remove",
        "matchReportApi.completed" to "Closed",
        "matchReportApi.completion" to "Completion",
        "matchReportApi.endTime" to "end time",
        "matchReportApi.errorLoading" to "Error loading data",
        "matchReportApi.general" to "General",
        "matchReportApi.greeting" to "Welcoming",
        "matchReportApi.guestLineup" to "Guest setup",
        "matchReportApi.guestPin" to "PIN Guest Club",
        "matchReportApi.guestTeamNotAppeared" to "Guest team {team} not competed",
        "matchReportApi.homeLineup" to "Installation at home",
        "matchReportApi.homePin" to "PIN Home Club",
        "matchReportApi.homeTeamNotAppeared" to "Home team {team} not competed",
        "matchReportApi.loading" to "Loading match report data...",
        "matchReportApi.noLineupData" to "No installation data available",
        "matchReportApi.notAppeared" to "Not participated for all",
        "matchReportApi.pending" to "Pending",
        "matchReportApi.pinInput" to "PIN input",
        "matchReportApi.playSystem" to "Gaming system",
        "matchReportApi.rank" to "Circle",
        "matchReportApi.result" to "Entering results",
        "matchReportApi.retry" to "Try again",
        "matchReportApi.selectedPlayers" to "Selected Player",
        "matchReportApi.setCurrentTime" to "Set current time",
        "matchReportApi.signLineup" to "Sign installation",
        "matchReportApi.startTime" to "start time",
        "matchReportApi.status" to "status",
        "matchReportApi.vs" to "vs",
        "matchReportHeaderActions.copied" to "Copied!",
        "matchReportHeaderActions.copyError" to "Error copying pin",
        "matchReportHeaderActions.copyPin" to "Copy PIN",
        "matchReportHeaderActions.copyPinTitle" to "Copy to clipboard",
        "matchReportHeaderActions.insertPin" to "INSERT YOUR PIN",
        "matchReportHeaderActions.insertPinTitle" to "Auto insert",
        "matchReportHeaderActions.noPinAvailable" to "No PIN AVAILABLE",
        "memberActivities.activity" to "Exercise",
        "memberActivities.all" to "All",
        "memberActivities.close" to "Close",
        "memberActivities.dates" to "Data",
        "memberActivities.frequency" to "Frequency",
        "memberActivities.last3Months" to "Last 3 months",
        "memberActivities.last4Weeks" to "last 2 months",
        "memberActivities.last6Months" to "last half year",
        "memberActivities.lastYear" to "Last year",
        "memberActivities.loading" to "Loading exercises...",
        "memberActivities.more" to "other",
        "memberActivities.noActivities" to "No exercises found in the selected period.",
        "memberActivities.period" to "Time period",
        "memberActivities.showLess" to "show less",
        "memberActivities.title" to "Exercises by",
        "memberGallery.imageSize" to "Image Size",
        "memberGallery.loading" to "Loading gallery...",
        "memberGallery.noImage" to "No Image",
        "memberGallery.noMembersWithImages" to "No members found with images.",
        "memberGallery.title" to "Members Gallery",
        "memberGallery.titleWithDate" to "Member Gallery - Click on an image to add as a participant",
        "memberNotes.add" to "Add",
        "memberNotes.memberImage" to "Image Member",
        "memberNotes.newNote" to "New note",
        "memberNotes.notes" to "Notes",
        "memberNotes.phone" to "Telephone no. ",
        "memberNotes.selectTags" to "Select Tags",
        "memberNotes.tags" to "Tags",
        "memberNotes.title" to "Notes for",
        "members.actions" to "Actions",
        "members.active" to "Active",
        "members.activeMembers" to "Active members",
        "members.addEmail" to "Add email address",
        "members.addGroup" to "Add group...",
        "members.addPhone" to "Add phone number",
        "members.address" to "Address",
        "members.adultReleaseApproved" to "Approved for adults",
        "members.adultReserveApproved" to "Adult reserve",
        "members.adults" to "Adults (18+)",
        "members.age" to "Age",
        "members.ageFromPlaceholder" to "from",
        "members.ageGroup" to "Age group",
        "members.ageRange" to "Age from - to",
        "members.ageToPlaceholder" to "to",
        "members.batchFormsMarkedEmpty" to "There are no unverified forms in the current selection.",
        "members.batchFormsMarkedSuccess" to "Marked {count} form(s) as verified.",
        "members.batchMarkedRegularEmpty" to "There are no trial members in the current selection.",
        "members.batchMarkedRegularSuccess" to "Marked {count} trial member(s) as regular.",
        "members.batchPartialFailure" to "{success} succeeded, {failed} failed.",
        "members.birthdate" to "Birthdate",
        "members.bulkActions" to "Bulk actions",
        "members.camera" to "Camera",
        "members.change" to "Change",
        "members.city" to "City",
        "members.clearFields" to "Clear fields",
        "members.clearFilters" to "Reset filters",
        "members.clickTtRequestAction" to "Request click-TT eligibility",
        "members.clickTtRequestConfirm" to "Start the automated Click-TT request for {name}?",
        "members.clickTtRequestError" to "The Click-TT request could not be submitted.",
        "members.clickTtRequestFailedLog" to "Click-TT request failed",
        "members.clickTtRequestHint" to "The request is processed automatically by the backend Click-TT workflow.",
        "members.clickTtRequestPending" to "Click-TT request in progress",
        "members.clickTtRequestPendingShort" to "Pending ...",
        "members.clickTtRequestShort" to "Click TT",
        "members.clickTtRequestSuccess" to "Please sign in to click-tt and submit the request there.",
        "members.clickTtRequestTitle" to "Start Click-TT request",
        "members.clickTtSubmitted" to "Click-TT submitted",
        "members.closeEditor" to "Close editor",
        "members.composeEmail" to "Compose email",
        "members.contact" to "Contact",
        "members.copyContactSummary" to "Copy contact summary",
        "members.copyContactSummarySuccess" to "Contact summary copied to clipboard.",
        "members.copyEmails" to "Copy emails",
        "members.copyEmailsEmpty" to "There are no email addresses in the current selection.",
        "members.copyEmailsSuccess" to "Email list copied to clipboard.",
        "members.copyPhones" to "Copy phones",
        "members.copyPhonesEmpty" to "There are no phone numbers in the current selection.",
        "members.copyPhonesSuccess" to "Phone list copied to clipboard.",
        "members.create" to "Create",
        "members.createNewMember" to "Create new member",
        "members.dataIssueAddress" to "Address missing",
        "members.dataIssueBirthdate" to "Birthdate missing",
        "members.dataIssueCity" to "City missing",
        "members.dataIssueEmail" to "Email missing",
        "members.dataIssueGender" to "Gender unclear",
        "members.dataIssuePhone" to "Phone missing",
        "members.dataIssuePostalCode" to "Postal code missing",
        "members.dataIssueStreet" to "Street missing",
        "members.dataIssueTrainingGroup" to "Training group missing",
        "members.dataQuality" to "Data quality",
        "members.dataQualityComplete" to "Data complete",
        "members.deactivateMember" to "Deactivate member",
        "members.deactivateMemberConfirm" to "Do you really want to deactivate \"{name}\"?",
        "members.deactivateMemberTitle" to "Deactivate member",
        "members.deleteImageConfirm" to "Do you really want to delete this image?",
        "members.deleteImageTitle" to "Delete image",
        "members.editHint" to "Click a row to open the editor.",
        "members.editMember" to "Edit member",
        "members.editorAssignTrainingGroupHint" to "Please assign at least one training group.",
        "members.editorCreateHint" to "Create a new member and capture contact details directly.",
        "members.editorEditHint" to "Edit the details for {name}.",
        "members.editorRecommendedEntry" to "Recommended entry",
        "members.emailAddress" to "Email address",
        "members.emailAddressShort" to "Email address",
        "members.emails" to "Email addresses",
        "members.errorAddingToGroup" to "Error adding to group",
        "members.errorDeactivatingMember" to "Error deactivating member",
        "members.errorDeletingImage" to "Image could not be deleted",
        "members.errorLoadingImage" to "Error loading image",
        "members.errorLoadingMembers" to "Failed to load the member list.",
        "members.errorLoadingTrainingParticipations" to "Error loading training participations",
        "members.errorMarkingForm" to "Error marking the form.",
        "members.errorRemovingFromGroup" to "Error removing from group",
        "members.errorRemovingTestMembership" to "Error removing the trial membership.",
        "members.errorRotatingImage" to "Error rotating image",
        "members.errorSavingMember" to "Error saving member",
        "members.errorSettingPrimaryImage" to "Primary image could not be set",
        "members.errorTransfer" to "Transfer error",
        "members.errorUpdatingRatings" to "Error updating TTR/QTTR values",
        "members.errorUploadingImage" to "Image could not be uploaded",
        "members.exercises" to "Exercises",
        "members.exportCsv" to "Export CSV",
        "members.exportCsvFile" to "member-selection.csv",
        "members.exportEmails" to "Email",
        "members.exportMembersSelected" to "members currently selected",
        "members.exportPhones" to "Phone",
        "members.exportPreview" to "Export preview",
        "members.exportPreviewEmpty" to "No members in the current selection",
        "members.exportPreviewNames" to "Preview",
        "members.exportReachableByEmail" to "with email address",
        "members.exportReachableByPhone" to "with phone number",
        "members.firstName" to "First name",
        "members.formHandedOver" to "Membership form handed over",
        "members.formMarkedAsHandedOver" to "Membership form marked as handed over.",
        "members.gender" to "Gender",
        "members.genderDiverse" to "Diverse",
        "members.genderFemale" to "Female",
        "members.genderMale" to "Male",
        "members.genderUnknown" to "Unknown",
        "members.generatePhoneList" to "Generate phone list",
        "members.groupPhotoCrop" to "Process group photo",
        "members.groupPhotoCropSaved" to "Member photo saved from group photo.",
        "members.image" to "Image",
        "members.imageDeleted" to "Image deleted.",
        "members.imageInternet" to "Image (web?)",
        "members.imagePreview" to "Member image preview",
        "members.imageUpdated" to "Image updated",
        "members.inactive" to "inactive",
        "members.inactiveMembers" to "Inactive members",
        "members.j11" to "U11",
        "members.j13" to "U13",
        "members.j15" to "U15",
        "members.j17" to "U17 (17 and younger)",
        "members.j19" to "U19",
        "members.j9" to "U9",
        "members.lastName" to "Last name",
        "members.lastTrainingFilter" to "Last training",
        "members.lastTrainingFilterHasDate" to "With a recorded date",
        "members.lastTrainingFilterHint" to "Age-class column: current and next season. Extra detail (last training, participations) on row hover.",
        "members.lastTrainingFilterNoDate" to "No last training",
        "members.lastTrainingFilterNotInTraining" to "Flagged “no longer training”",
        "members.loadingMembers" to "Loading members...",
        "members.m11" to "G11",
        "members.m13" to "G13",
        "members.m15" to "G15",
        "members.m19" to "G19",
        "members.m9" to "G9",
        "members.markFormReceived" to "Mark form verified",
        "members.markFormsForSelection" to "Verify forms for selection",
        "members.markRegular" to "Mark regular",
        "members.markRegularForSelection" to "Mark selection regular",
        "members.memberDeactivated" to "Member deactivated",
        "members.memberDetails" to "Member details",
        "members.memberFormHandedOver" to "Membership form handed over",
        "members.memberImage" to "Member image",
        "members.memberImages" to "Member images",
        "members.memberInfo" to "Member info",
        "members.memberScope" to "Member scope",
        "members.missingTtrHistoryId" to "No myTischtennis ID stored",
        "members.name" to "Last name, first name",
        "members.newMember" to "New member",
        "members.noAddressShort" to "No address",
        "members.noEmailShort" to "No email",
        "members.noGroupsAssigned" to "No groups assigned",
        "members.noGroupsAvailable" to "No groups available",
        "members.noOpenTasks" to "No open tasks",
        "members.noPhoneShort" to "No phone",
        "members.notes" to "Notes",
        "members.noTestMembership" to "No longer a trial member",
        "members.notInTrainingTooltip" to "No participation for {weeks} training weeks",
        "members.onlyActiveMembers" to "Only active members are included",
        "members.openTasks" to "Open tasks",
        "members.parent" to "Parent",
        "members.parentFallback" to "Parent",
        "members.parentName" to "Name (e.g. mother, father)",
        "members.phoneList" to "phone-list.pdf",
        "members.phoneListForSelection" to "Phone list for selection",
        "members.phoneListSelectionFile" to "phone-list-selection.pdf",
        "members.phoneNumber" to "Phone number",
        "members.phoneNumberShort" to "Phone no.",
        "members.phones" to "Phone numbers",
        "members.picsInInternetAllowed" to "Pictures allowed online",
        "members.postalCode" to "ZIP code",
        "members.previewLastTraining" to "Last training",
        "members.previewNoLastTraining" to "No participation yet",
        "members.primary" to "Primary",
        "members.primaryImageUpdated" to "Primary image updated.",
        "members.remove" to "Remove",
        "members.resultsVisible" to "members visible",
        "members.rowTooltipSeparator" to "·",
        "members.scopeActive" to "Active",
        "members.scopeActiveDataIncomplete" to "Active + data incomplete",
        "members.scopeActiveTest" to "Active + trial",
        "members.scopeAll" to "All",
        "members.scopeDataIncomplete" to "Data incomplete",
        "members.scopeInactive" to "Inactive",
        "members.scopeNeedsForm" to "Form unverified",
        "members.scopeNotTraining" to "No longer training",
        "members.scopeTest" to "Trial",
        "members.search" to "Search",
        "members.searchAndFilter" to "Search and filter",
        "members.searchPlaceholder" to "Search by name, city, phone or email",
        "members.selectFile" to "Select file",
        "members.showInactiveMembers" to "Show inactive members",
        "members.showTrainingParticipationsColumn" to "Show “Training participations” column",
        "members.showTtrHistory" to "Show TTR history",
        "members.sixOrMoreParticipations" to "6 or more training participations",
        "members.sortAge" to "Age",
        "members.sortBirthday" to "Birthday",
        "members.sortBy" to "Sort by",
        "members.sortFirstName" to "First name",
        "members.sortLastName" to "Last name",
        "members.sortLastTraining" to "Last training",
        "members.sortOpenTasks" to "Open tasks",
        "members.sortQttr" to "QTTR value",
        "members.status" to "status",
        "members.street" to "Street",
        "members.subtitle" to "Search, filter and edit members directly.",
        "members.taskActionMarkRegular" to "Mark regular",
        "members.taskActionRequest" to "Request",
        "members.taskActionReview" to "Open",
        "members.taskActionVerify" to "Verify",
        "members.taskAssignTrainingGroup" to "Assign training group",
        "members.taskCheckClickTt" to "Review Click-TT eligibility",
        "members.taskCheckDataQuality" to "Review data quality",
        "members.taskCheckTrainingStatus" to "Review training status",
        "members.taskReviewTrialStatus" to "Review trial status",
        "members.taskVerifyForm" to "Verify form",
        "members.testMember" to "Trial",
        "members.testMembers" to "Trial members",
        "members.testMembership" to "Trial membership",
        "members.testMembershipRemoved" to "Trial membership removed.",
        "members.threeOrMoreParticipations" to "3 or more training participations",
        "members.title" to "Members",
        "members.toggleSortDirection" to "Toggle sort direction",
        "members.trainingGroups" to "Training groups",
        "members.trainingParticipations" to "Training participations",
        "members.transferErrorTitle" to "Transfer error",
        "members.transferMembers" to "Transfer members",
        "members.transferSuccessTitle" to "Transfer successful",
        "members.ttAdult" to "Adults (not youth by cutoff)",
        "members.ttAgeClassCol" to "Age class (TT)",
        "members.ttFilterGroupJ" to "Boys & girls (mixed)",
        "members.ttFilterGroupM" to "Girls only",
        "members.ttrQttr" to "TTR/QTTR",
        "members.ttSeasonCurrentTag" to "current",
        "members.ttSeasonFilter" to "Season (cutoff)",
        "members.ttSeasonNextTag" to "upcoming",
        "members.ttStichtagHint" to "Cutoff 1 Jan (DTTB). Boys: J classes only. Girls: J and M.",
        "members.updateRatings" to "Update TTR/QTTR from myTischtennis",
        "members.updating" to "Updating...",
        "members.visibleMembers" to "Visible members",
        "members.wantsToPlay" to "Wants to play",
        "memberSelection.close" to "Close",
        "memberSelection.deselectAll" to "Deselect all",
        "memberSelection.generatePdf" to "Generate PDF",
        "memberSelection.members" to "Members",
        "memberSelection.noRecommendations" to "No matching recommendations found.",
        "memberSelection.recommendations" to "Recommendations",
        "memberSelection.selectAll" to "Select All",
        "memberSelection.title" to "Select Members",
        "memberTransfer.additionalField" to "Extra field",
        "memberTransfer.additionalFieldExample1" to "Additional field (e.g. client_id)",
        "memberTransfer.additionalFieldExample2" to "Additional field (e.g. client_secret)",
        "memberTransfer.analyzeAndImport" to "Analyze and Import Template",
        "memberTransfer.availablePlaceholders" to "Available placeholders",
        "memberTransfer.bulkMode" to "Bulk import mode (transfer all members at once)",
        "memberTransfer.bulkModeActive" to "Mode active",
        "memberTransfer.bulkModeActiveDescription" to "The template defines the format for a single member. The members are automatically wrapped in an array. You can optionally define the external structure in the \"bulk wrapper template\" (see below).",
        "memberTransfer.bulkModeHint" to "If enabled, all members in a request are transferred as an array.",
        "memberTransfer.bulkWrapperDescription" to "Optionally, you can define the outer structure into which the member array will be inserted. Use PLACEHOLDER_MEMBERS as placeholders for the array of members.",
        "memberTransfer.bulkWrapperNote" to "Note: If no wrapper template is specified, a members array is automatically used.",
        "memberTransfer.bulkWrapperTemplate" to "Bulk wrapper template (optional)",
        "memberTransfer.bulkWrapperWhat" to "What is a bulk wrapper template?",
        "memberTransfer.configDeleted" to "Configuration deleted successfully!",
        "memberTransfer.configInfo" to "Configure the settings for transferring members to external systems here. These settings are saved on a club-specific basis.",
        "memberTransfer.configSaved" to "Configuration saved successfully",
        "memberTransfer.confirmDelete" to "Delete configuration",
        "memberTransfer.confirmDeleteMessage" to "Are you sure you want to refund this transaction?",
        "memberTransfer.deleteConfig" to "Delete configuration",
        "memberTransfer.deleting" to "clearing...",
        "memberTransfer.errorDeleting" to "Error clearing",
        "memberTransfer.errorLoading" to "Error Loading Config",
        "memberTransfer.errorParsingTemplate" to "Error parsing template",
        "memberTransfer.errorSaving" to "Error while saving",
        "memberTransfer.example" to "Example",
        "memberTransfer.exampleFormData" to "Example of form data format",
        "memberTransfer.exampleJson" to "Example of JSON format (recommended)",
        "memberTransfer.exampleXml" to "Example of XML format",
        "memberTransfer.formDataHint" to "For form data, use a simple text template with lines in the format feldname=placeholder:",
        "memberTransfer.httpMethod" to "HTTP Method",
        "memberTransfer.importTemplate" to "Import template from full example",
        "memberTransfer.importTemplateHint" to "Include a full sample template (with sample members). The system will automatically detect the member template and bulk wrapper template.",
        "memberTransfer.importTemplatePlaceholder" to "Insert a full example template here, e.g.:\nLBRACE\n  December: [\n    LBRACE\n      D .firstNameD.: D .MaxD.,\n      D. LastNameD.: D. MustermannD.,\n      DMail: DMaxATexample.comMail: DMaxATexample.com\n    RBRACE\n  ]\nRBRACE",
        "memberTransfer.invalidJson" to "Please ensure valid JSON is used.",
        "memberTransfer.invalidTemplateFormat" to "Invalid template format",
        "memberTransfer.loadingConfig" to "Loading configuration...",
        "memberTransfer.loginConfiguration" to "Login Configuration",
        "memberTransfer.loginData" to "Login data",
        "memberTransfer.loginEndpointHint" to "Optional: Relative path to login endpoint (e.g. /api/auth/login)",
        "memberTransfer.loginEndpointPath" to "Login Endpoint Path",
        "memberTransfer.loginEndpointPlaceholder" to "/api/auth/login",
        "memberTransfer.loginFormat" to "Login Format",
        "memberTransfer.membersArray" to "Member Array",
        "memberTransfer.password" to "Password",
        "memberTransfer.passwordEncrypted" to "Passwords are stored encrypted.",
        "memberTransfer.placeholderHint" to "Click on a placeholder to insert it at the current cursor position:",
        "memberTransfer.placeholders.address" to "Combined Address",
        "memberTransfer.placeholders.addressDesc" to "Street and town combined",
        "memberTransfer.placeholders.birthDate" to "Date of birth",
        "memberTransfer.placeholders.birthDateAlt" to "Date of birth (old)",
        "memberTransfer.placeholders.birthDateAltDesc" to "Date of birth in the format YYYY-MM-DD (alternative name)",
        "memberTransfer.placeholders.birthDateDesc" to "in the format YYYY-MM-DD",
        "memberTransfer.placeholders.city" to "Location",
        "memberTransfer.placeholders.cityDesc" to "Place of Residence",
        "memberTransfer.placeholders.email" to "Email Address",
        "memberTransfer.placeholders.emailDesc" to "Member's email address",
        "memberTransfer.placeholders.firstName" to "First name",
        "memberTransfer.placeholders.firstNameDesc" to "Member First Name",
        "memberTransfer.placeholders.fullName" to "Full name ",
        "memberTransfer.placeholders.fullNameDesc" to "First name and last name combined",
        "memberTransfer.placeholders.gender" to "Sex",
        "memberTransfer.placeholders.genderDesc" to "Gender of the member",
        "memberTransfer.placeholders.lastName" to "Surname",
        "memberTransfer.placeholders.lastNameDesc" to "Member Last Name",
        "memberTransfer.placeholders.phone" to "Phone Number",
        "memberTransfer.placeholders.phoneDesc" to "Staff Member's Phone",
        "memberTransfer.placeholders.qttr" to "QTTR value",
        "memberTransfer.placeholders.qttrDesc" to "Member QTTR Value",
        "memberTransfer.placeholders.street" to "Street",
        "memberTransfer.placeholders.streetDesc" to "Street and house number",
        "memberTransfer.placeholders.ttr" to "TTR value",
        "memberTransfer.placeholders.ttrDesc" to "Member TTR Value",
        "memberTransfer.save" to "Save",
        "memberTransfer.saving" to "Saving...",
        "memberTransfer.serverBaseUrl" to "Server Base URL",
        "memberTransfer.serverBaseUrlHint" to "Base URL of the server (e.g. https://example.com)",
        "memberTransfer.serverBaseUrlPlaceholder" to "https://example.com",
        "memberTransfer.serverConfiguration" to "Server -configuration",
        "memberTransfer.templateDescription" to "The template defines the format in which the member data is transferred to the external system. Use placeholders such as PLACEHOLDER_FIRSTNAME to automatically replace the data.",
        "memberTransfer.templateImported" to "Template imported successfully.",
        "memberTransfer.templateImportedBulk" to "Member template detected, bulk mode enabled.",
        "memberTransfer.templateImportedDetails" to "Member and bulk wrapper templates have been detected and completed.",
        "memberTransfer.templateImportedSingle" to "Single member template detected.",
        "memberTransfer.templateTip" to "Tip: Place the cursor in the desired place in the template and click on a placeholder to insert it. Placeholders are automatically replaced by the actual member data when they are transferred.",
        "memberTransfer.templateWhat" to "What is a template?",
        "memberTransfer.title" to "Member Transfer - Settings",
        "memberTransfer.transferConfiguration" to "Transmission Configuration",
        "memberTransfer.transferConfigurationTitle" to "Transmission Configuration",
        "memberTransfer.transferEndpointHint" to "Relative path to the transmission endpoint (e.g. /api/members/bulk)",
        "memberTransfer.transferEndpointPath" to "Transmission Endpoint Path",
        "memberTransfer.transferEndpointPlaceholder" to "/api/members/bulk",
        "memberTransfer.transferFormat" to "Transmission format",
        "memberTransfer.transferTemplate" to "Transfer Template",
        "memberTransfer.usernameEmail" to "Username / email",
        "memberTransferDialog.additionalErrors" to "additional faults",
        "memberTransferDialog.additionalFieldPlaceholder" to "Additional field (e.g. client_id)",
        "memberTransferDialog.additionalFieldPlaceholderForm" to "Field name: Value (e.g. client_id: abc123)",
        "memberTransferDialog.bulkImport" to "Bulk Import",
        "memberTransferDialog.cancel" to "Cancel",
        "memberTransferDialog.editConfig" to "Edit the configuration.",
        "memberTransferDialog.endpoint" to "Endpoint",
        "memberTransferDialog.excludedMembers" to "Excluded members (missing mandatory fields)",
        "memberTransferDialog.format" to "Format",
        "memberTransferDialog.goToSettings" to "Settings Where to?",
        "memberTransferDialog.loadingConfig" to "Loading saved configuration",
        "memberTransferDialog.loginData" to "Login data",
        "memberTransferDialog.loginDataHint" to "The login details are used from the settings. You can overwrite them here if necessary.",
        "memberTransferDialog.loginDataOverride" to "Login details (optional overwrite)",
        "memberTransferDialog.loginDataOverrideHint" to "Only fill in if you want to overwrite the saved login data. Empty fields use the stored values.",
        "memberTransferDialog.method" to "Method",
        "memberTransferDialog.mode" to "mode",
        "memberTransferDialog.noConfigFound" to "No configuration found",
        "memberTransferDialog.noConfigMessage" to "Please configure the member transfer in the settings first.",
        "memberTransferDialog.passwordPlaceholder" to "Password (leave blank for saved)",
        "memberTransferDialog.server" to "Server",
        "memberTransferDialog.single" to "Single",
        "memberTransferDialog.title" to "Transfer Members",
        "memberTransferDialog.transfer" to "Transferred",
        "memberTransferDialog.transferConfiguration" to "Transmission Configuration",
        "memberTransferDialog.transferError" to "Error during transmission",
        "memberTransferDialog.transferFailed" to "Transfer failed",
        "memberTransferDialog.transferring" to "Communicating...",
        "memberTransferDialog.transferSuccess" to "{transferred} successfully transferred by {total} members.",
        "memberTransferDialog.usernameEmail" to "Username / email",
        "messages.cancel" to "Cancel",
        "messages.confirm" to "Confirm",
        "messages.error" to "Error",
        "messages.fileTooLarge" to "File too large",
        "messages.imageMaxSize" to "The image must be a maximum of 5 MB.",
        "messages.info" to "information",
        "messages.invalidFile" to "Invalid file",
        "messages.note" to "Notice",
        "messages.pleaseSelectImageFile" to "Please select an image file.",
        "messages.recordsDisplayed" to "displayed",
        "messages.recordsFound" to "Records found",
        "messages.success" to "Success",
        "messages.successfullyLoaded" to "Loaded successfully",
        "messages.warning" to "Warning",
        "mobile.active" to "Active",
        "mobile.add" to "Add",
        "mobile.appLoading" to "Loading app",
        "mobile.calendarAgendaEmpty" to "No events in this month.",
        "mobile.calendarAgendaTitle" to "Events this month",
        "mobile.calendarAllSourcesFailed" to "Calendar data could not be loaded.",
        "mobile.calendarCancellationEnd" to "Until (optional)",
        "mobile.calendarCancellationHint" to "Hides recurring training times on those days.",
        "mobile.calendarCancellationInMonth" to "Cancellations this month",
        "mobile.calendarCancellationReason" to "Reason",
        "mobile.calendarCancellationSave" to "Save",
        "mobile.calendarCancellationStart" to "Date (YYYY-MM-DD)",
        "mobile.calendarCancellationTitle" to "Training cancelled",
        "mobile.calendarGridTitle" to "Month",
        "mobile.calendarLegend" to "Display",
        "mobile.calendarLegendCancellation" to "Cancellation",
        "mobile.calendarLegendHoliday" to "Public holiday",
        "mobile.calendarLegendMatch" to "League match",
        "mobile.calendarLegendOfficial" to "Participation",
        "mobile.calendarLegendSchool" to "School break",
        "mobile.calendarLegendTournament" to "Tournament",
        "mobile.calendarLegendTraining" to "Training",
        "mobile.calendarSourceCancellations" to "Training cancellations",
        "mobile.calendarSourceDiary" to "Diary",
        "mobile.calendarSourceFailed" to "not loaded",
        "mobile.calendarSourceHolidays" to "Holidays / school breaks",
        "mobile.calendarSourceMatches" to "League matches",
        "mobile.calendarSourceOfficial" to "Official participations",
        "mobile.calendarSourceTournaments" to "Tournaments",
        "mobile.calendarSourceTrainingTimes" to "Training times",
        "mobile.calendarSubtitle" to "Training, tournaments, matches and holidays for the month.",
        "mobile.calendarTitle" to "Calendar",
        "mobile.calendarToday" to "Today",
        "mobile.cancel" to "Cancel",
        "mobile.clubRequest" to "Request access",
        "mobile.clubRequested" to "Requested",
        "mobile.createDiaryEntry" to "Create entry",
        "mobile.deleteNote" to "Delete note",
        "mobile.deleteTag" to "Remove tag",
        "mobile.editTimes" to "Edit times",
        "mobile.emailAndPasswordRequired" to "Email and password are required",
        "mobile.entry" to "Entry",
        "mobile.inactive" to "Inactive",
        "mobile.language" to "Language",
        "mobile.lastTraining" to "Last training",
        "mobile.loginFailed" to "Login failed",
        "mobile.loginInProgress" to "Signing in...",
        "mobile.more" to "More",
        "mobile.new" to "New",
        "mobile.newNote" to "New note",
        "mobile.newTag" to "New tag",
        "mobile.noDiaryEntries" to "No diary entries yet",
        "mobile.noMembers" to "No members found",
        "mobile.noResults" to "No results",
        "mobile.noTimes" to "No times",
        "mobile.offlineCacheHint" to "No connection – showing last loaded data.",
        "mobile.participationTop" to "Top attendance",
        "mobile.refresh" to "Refresh",
        "mobile.requestedAccess" to "Requested",
        "mobile.role" to "Role",
        "mobile.saveEntry" to "Save",
        "mobile.search" to "Search",
        "mobile.select" to "Select",
        "mobile.sessionCheck" to "Check session",
        "mobile.sessionCheckFailed" to "Session check failed",
        "mobile.sessionInvalid" to "Session invalid",
        "mobile.sessionValid" to "Session valid",
        "mobile.status" to "Status",
        "mobile.user" to "User",
        "myTischtennis.about" to "About myTischtennis",
        "myTischtennis.aboutFeatures.fetch" to "Retrieve competition data directly",
        "myTischtennis.aboutFeatures.import" to "Automatically import tournament data",
        "myTischtennis.aboutFeatures.sync" to "Sync Player Results",
        "myTischtennis.aboutText" to "By linking your myTischtennis account, you can:",
        "myTischtennis.autoUpdates" to "Auto Update",
        "myTischtennis.club" to "Association (myTischtennis)",
        "myTischtennis.deleteAccount" to "Disconnect account",
        "myTischtennis.disabled" to "Unchecked",
        "myTischtennis.editAccount" to "Edit account",
        "myTischtennis.enabled" to "ON",
        "myTischtennis.fetchStatistics" to "Data Retrieval Statistics",
        "myTischtennis.lastFetch" to "Last Fetched:",
        "myTischtennis.lastLoginAttempt" to "Last login attempt",
        "myTischtennis.lastSuccessfulLogin" to "Last successful login",
        "myTischtennis.leagueTables" to "JoomSport Standings",
        "myTischtennis.linkAccount" to "Link account",
        "myTischtennis.linkedAccount" to "Linked Account",
        "myTischtennis.loadingStats" to "Loading stats",
        "myTischtennis.matchResults" to "Event Results",
        "myTischtennis.neverFetched" to "Never Retrieved",
        "myTischtennis.no" to "No",
        "myTischtennis.noAccount" to "No myTischtennis account linked.",
        "myTischtennis.passwordNote" to "Note: Saving the password is optional. If you do not save it, you will be asked for the password each time you synchronize.",
        "myTischtennis.passwordSaved" to "Password saved",
        "myTischtennis.passwordsEncrypted" to "Passwords are stored encrypted.",
        "myTischtennis.playerRatings" to "Player Ratings",
        "myTischtennis.refreshStats" to "Reload Stats",
        "myTischtennis.testLogin" to "Re-login",
        "myTischtennis.title" to "myTischtennis-Account",
        "myTischtennis.updateHistory" to "Update History",
        "myTischtennis.yes" to "Yes",
        "myTischtennisAccount.aboutDescription" to "By linking your myTischtennis account, you can:",
        "myTischtennisAccount.aboutFeature1" to "Automatically import tournament data",
        "myTischtennisAccount.aboutFeature2" to "Sync Player Results",
        "myTischtennisAccount.aboutFeature3" to "Retrieve competition data directly",
        "myTischtennisAccount.aboutHint" to "Saving the password is optional. If you do not save it, you will be asked for the password each time you synchronize.",
        "myTischtennisAccount.aboutMyTischtennis" to "About myTischtennis",
        "myTischtennisAccount.accountSaved" to "myTischtennis-Account successfully saved",
        "myTischtennisAccount.accountUnlinked" to "myTischtennis account successfully disconnected",
        "myTischtennisAccount.autoUpdates" to "Automatic updates:",
        "myTischtennisAccount.club" to "Association (myTischtennis):",
        "myTischtennisAccount.daysAgo" to "{count} days ago",
        "myTischtennisAccount.disabled" to "Unchecked",
        "myTischtennisAccount.editAccount" to "Edit account",
        "myTischtennisAccount.email" to "E-mail:",
        "myTischtennisAccount.enabled" to "ON",
        "myTischtennisAccount.errorLoadingAccount" to "Error loading myTischtennis account",
        "myTischtennisAccount.errorLoadingStatistics" to "Error loading fetch statistics",
        "myTischtennisAccount.errorUnlinking" to "Error disconnecting account",
        "myTischtennisAccount.fetchStatistics" to "Data Retrieval Statistics",
        "myTischtennisAccount.hoursAgo" to "{count} h ago",
        "myTischtennisAccount.justNow" to "just now",
        "myTischtennisAccount.lastFetch" to "Last Fetched:",
        "myTischtennisAccount.lastLoginAttempt" to "Last login attempt:",
        "myTischtennisAccount.lastSuccessfulLogin" to "Last successful login:",
        "myTischtennisAccount.leagueTables" to "JoomSport Standings",
        "myTischtennisAccount.linkAccount" to "Link account",
        "myTischtennisAccount.linkedAccount" to "Linked Account",
        "myTischtennisAccount.loading" to "Loading...",
        "myTischtennisAccount.loadingStatistics" to "Loading stats",
        "myTischtennisAccount.loginAgain" to "Re-login",
        "myTischtennisAccount.loginFailed" to "Login failed",
        "myTischtennisAccount.loginSuccessful" to "Login successful! Connection details updated.",
        "myTischtennisAccount.matchResults" to "Event Results",
        "myTischtennisAccount.minutesAgo" to "{count} min ago",
        "myTischtennisAccount.never" to "Never",
        "myTischtennisAccount.neverFetched" to "Never Retrieved",
        "myTischtennisAccount.no" to "No",
        "myTischtennisAccount.noAccountLinked" to "No myTischtennis account linked.",
        "myTischtennisAccount.passwordRequired" to "Password required",
        "myTischtennisAccount.passwordSaved" to "Password saved",
        "myTischtennisAccount.playerRatings" to "Player Ratings",
        "myTischtennisAccount.playersUpdated" to "Player Updated",
        "myTischtennisAccount.refreshStatistics" to "Reload Stats",
        "myTischtennisAccount.results" to "Results",
        "myTischtennisAccount.teams" to "Teams",
        "myTischtennisAccount.title" to "myTischtennis Account",
        "myTischtennisAccount.unlinkAccount" to "Disconnect account",
        "myTischtennisAccount.unlinkAccountConfirm" to "Are you sure you want to unlink the myTischtennis account?",
        "myTischtennisAccount.unlinkAccountTitle" to "Disconnect account",
        "myTischtennisAccount.updateHistory" to "Update History",
        "myTischtennisAccount.yes" to "Yes",
        "myTischtennisAccount.yesterday" to "yesterday",
        "myTischtennisDialog.appPassword" to "Your app password to confirm",
        "myTischtennisDialog.appPasswordHint" to "For security reasons, we need your app password to save the myTischtennis password.",
        "myTischtennisDialog.appPasswordPlaceholder" to "Your password for this app",
        "myTischtennisDialog.autoUpdateRatings" to "Enable automatic update ratings",
        "myTischtennisDialog.autoUpdateRatingsHint" to "The latest ratings from myTischtennis are automatically retrieved every day at 6:00 am. Requires saved password.",
        "myTischtennisDialog.autoUpdateWarning" to "For automatic updates, the myTischtennis password must be saved.",
        "myTischtennisDialog.cancel" to "Cancel",
        "myTischtennisDialog.editAccount" to "edit myTischtennis-Account",
        "myTischtennisDialog.email" to "myTischtennis-Email",
        "myTischtennisDialog.emailPlaceholder" to "Your myTischtennis email address",
        "myTischtennisDialog.errorLogin" to "Login error.",
        "myTischtennisDialog.errorSaving" to "Error saving Account",
        "myTischtennisDialog.linkAccount" to "link myTischtennis account",
        "myTischtennisDialog.loadingLoginForm" to "Loading Login Form...",
        "myTischtennisDialog.loggingIn" to "Log in...",
        "myTischtennisDialog.login" to "Log in",
        "myTischtennisDialog.password" to "myTischtennis-Password",
        "myTischtennisDialog.passwordPlaceholder" to "Your myTischtennis password",
        "myTischtennisDialog.passwordPlaceholderKeep" to "Leave blank to keep",
        "myTischtennisDialog.save" to "Save",
        "myTischtennisDialog.savePassword" to "save mytabletennis-password",
        "myTischtennisDialog.savePasswordHint" to "If enabled, your myTischtennis password will be stored encrypted so that automatic synchronizations are possible.",
        "myTischtennisDialog.saving" to "Saving...",
        "myTischtennisHistory.close" to "Close",
        "myTischtennisHistory.failed" to "That didnt work.",
        "myTischtennisHistory.loading" to "Loading history...",
        "myTischtennisHistory.noHistory" to "No automatic updates performed yet.",
        "myTischtennisHistory.ratingsUpdated" to "Ratings updated",
        "myTischtennisHistory.successful" to "Successful",
        "myTischtennisHistory.title" to "Update Ratings History",
        "navigation.approvals" to "Approvals",
        "navigation.backToHome" to "Back to home",
        "navigation.billing" to "Billing",
        "navigation.clickTtAccount" to "HTTV / click-TT account",
        "navigation.clickTtBrowser" to "HTTV / click-TT",
        "navigation.clubSettings" to "Club Settings",
        "navigation.clubTournaments" to "Club Tournaments",
        "navigation.competitions" to "Competitions",
        "navigation.dailyBusiness" to "Daily Business",
        "navigation.diary" to "Diary",
        "navigation.home" to "Home",
        "navigation.login" to "Log In",
        "navigation.logout" to "Log Out",
        "navigation.logs" to "System Logs",
        "navigation.members" to "Members",
        "navigation.memberTransfer" to "Member Transfer",
        "navigation.myTischtennisAccount" to "myTischtennis Account",
        "navigation.orders" to "Orders",
        "navigation.permissions" to "Permissions",
        "navigation.personalSettings" to "Personal Settings",
        "navigation.predefinedActivities" to "Predefined Activities",
        "navigation.register" to "Sign Up",
        "navigation.schedule" to "Schedules",
        "navigation.settings" to "Settings",
        "navigation.statistics" to "Training Statistics",
        "navigation.teamManagement" to "Team Management",
        "navigation.tournamentParticipations" to "Official tournaments & participations",
        "navigation.tournaments" to "Tournaments",
        "nuscoreAnalyzer.analysisComplete" to "✅ Analysis completed: {count} resources found",
        "nuscoreAnalyzer.analyze" to "🔍 nuscore analysis",
        "nuscoreAnalyzer.analyzing" to "Analyzing...",
        "nuscoreAnalyzer.createLocalCopy" to "Create 🏗️ local copy",
        "nuscoreAnalyzer.creating" to "🏗️ Creating...",
        "nuscoreAnalyzer.description" to "Analyzes and downloads nuscore resources for local use",
        "nuscoreAnalyzer.downloading" to "⬇️ Downloading...",
        "nuscoreAnalyzer.downloadResources" to "Download resources",
        "nuscoreAnalyzer.foundResources" to "📋 Resources found:",
        "nuscoreAnalyzer.log" to "Log",
        "nuscoreAnalyzer.pageLoaded" to "✅ nuscore page loaded",
        "nuscoreAnalyzer.startAnalysis" to "🔍 Starting nuscore analysis...",
        "nuscoreAnalyzer.title" to "🔍 nuscore Analyzer",
        "officialTournaments.action" to "Action",
        "officialTournaments.age" to "Age",
        "officialTournaments.ageClassCompetition" to "Age Group/Competition",
        "officialTournaments.ageClasses" to "Age classes",
        "officialTournaments.all" to "All",
        "officialTournaments.birthDate" to "Date of birth",
        "officialTournaments.checkBoxToActivate" to "Enable checkbox",
        "officialTournaments.competition" to "Competitor",
        "officialTournaments.competitions" to "Competitions",
        "officialTournaments.competitionTypes" to "Competition Types:",
        "officialTournaments.cutoffDate" to "Effective date:",
        "officialTournaments.date" to "Date",
        "officialTournaments.dateTime" to "Date:",
        "officialTournaments.deadlineDate" to "Registration deadline (date):",
        "officialTournaments.deadlineOnline" to "Registration deadline (online):",
        "officialTournaments.deadlines" to "Registration deadlines:",
        "officialTournaments.deadlinesByAgeClass" to "Registration deadlines for each AK:",
        "officialTournaments.delete" to "Delete",
        "officialTournaments.editTitle" to "Edit Title",
        "officialTournaments.eligible" to "Eligible to Participate",
        "officialTournaments.entryFee" to "starting cash",
        "officialTournaments.entryFees" to "Attendance fees:",
        "officialTournaments.events" to "Happenings",
        "officialTournaments.finalRound" to "Finals Competition",
        "officialTournaments.hasPlayed" to "{0} played their turn.",
        "officialTournaments.last12Months" to "Last 12 months",
        "officialTournaments.last2Years" to "Past 2 Years",
        "officialTournaments.last3Months" to "Last 3 months",
        "officialTournaments.last6Months" to "Past 6 months",
        "officialTournaments.markAsParticipated" to "Mark as attended",
        "officialTournaments.markAsRegistered" to "Mark as logged in",
        "officialTournaments.member" to "Member",
        "officialTournaments.name" to "name",
        "officialTournaments.noEvents" to "No events available yet. Upload a PDF to get started.",
        "officialTournaments.notInterested" to "Not interested",
        "officialTournaments.openTo" to "Open to",
        "officialTournaments.participants" to "Participants",
        "officialTournaments.participantsPdf" to "Participant PDF",
        "officialTournaments.participated" to "Participated",
        "officialTournaments.participations" to "Tournament Participations",
        "officialTournaments.pdfForSelectedMembers" to "PDF for flagged members",
        "officialTournaments.placement" to "Placement",
        "officialTournaments.preliminaryRound" to "1st Stage:",
        "officialTournaments.previousSeason" to "Previous Season",
        "officialTournaments.registered" to "Logged-In",
        "officialTournaments.resetStatus" to "Reset Status",
        "officialTournaments.results" to "Results",
        "officialTournaments.savedEvents" to "Saved Events",
        "officialTournaments.selectMembers" to "Select Members",
        "officialTournaments.showCompetitions" to "View Competitions",
        "officialTournaments.showEvents" to "View Saved Events",
        "officialTournaments.showParticipants" to "View Participant",
        "officialTournaments.showParticipations" to "View Tournament Shares",
        "officialTournaments.showResults" to "View Results",
        "officialTournaments.startTime" to "start time",
        "officialTournaments.startTimes" to "Start times:",
        "officialTournaments.status" to "status",
        "officialTournaments.timeRange" to "Period:",
        "officialTournaments.title" to "Title:",
        "officialTournaments.tournament" to "Tournament",
        "officialTournaments.updatePlacementError" to "Error updating placement",
        "officialTournaments.updateStatusError" to "Failed to update state",
        "officialTournaments.updateTitleError" to "This was unable to be saved.",
        "officialTournaments.uploadError" to "Error uploading PDF.",
        "officialTournaments.uploadPdf" to "Upload PDF",
        "officialTournaments.venues" to "Venues",
        "officialTournaments.wantsToParticipate" to "Want to Join",
        "orders.addOrder" to "Create order",
        "orders.budget" to "budget",
        "orders.club" to "Club",
        "orders.cost" to "Cost",
        "orders.dateAutoHint" to "The date is set automatically and every change is logged with a date.",
        "orders.errorLoading" to "Orders could not be loaded.",
        "orders.errorSaving" to "Order could not be saved.",
        "orders.filterAllClubs" to "All clubs",
        "orders.filterAllCompletionStates" to "All degrees",
        "orders.filterAllStatuses" to "All statuses",
        "orders.filterHandedOver" to "Item handed out",
        "orders.filterPaid" to "Paid",
        "orders.globalSubtitle" to "All orders across clubs can be viewed and managed here.",
        "orders.globalTitle" to "Orders Across All Clubs",
        "orders.history" to "History",
        "orders.item" to "Item",
        "orders.itemPlaceholder" to "e.g. jersey, hoodie, or paddle case",
        "orders.loading" to "Loading orders...",
        "orders.member" to "Member",
        "orders.memberTitle" to "Orders: {name}",
        "orders.noOrdersGlobal" to "There are currently no orders.",
        "orders.noOrdersMember" to "There are no orders for this member yet.",
        "orders.open" to "Outstanding",
        "orders.orderDate" to "Created on",
        "orders.paid" to "Paid",
        "orders.paidConfirmed" to "Paid",
        "orders.searchPlaceholder" to "Search by club, member, or item",
        "orders.showCompleted" to "Show completed ones",
        "orders.status" to "status",
        "orders.statusArrived" to "item arrived",
        "orders.statusDate" to "Last update",
        "orders.statusHandedOver" to "item handed over",
        "orders.statusOrdered" to "ordered",
        "orders.statusRequested" to "requested",
        "orders.title" to "Orders",
        "pdfGenerator.activityTimeBlock" to "Activity / Time Block",
        "pdfGenerator.allGames" to "All Cities",
        "pdfGenerator.alsoPlayable" to "Also playable",
        "pdfGenerator.birthDate" to "Date of birth",
        "pdfGenerator.clubLabel" to "Club:",
        "pdfGenerator.competition" to "Event",
        "pdfGenerator.competitionName" to "Competitor",
        "pdfGenerator.date" to "Date:",
        "pdfGenerator.diff" to "Diff",
        "pdfGenerator.duration" to "Minutes to Lockout",
        "pdfGenerator.fee" to "Fee",
        "pdfGenerator.generatedAt" to "Generated:",
        "pdfGenerator.group" to "Group",
        "pdfGenerator.groupLabel" to "Group",
        "pdfGenerator.groupMatrices" to "Group matrices",
        "pdfGenerator.hallShoes" to "Indoor shoes (must not rub off on the floor)",
        "pdfGenerator.hints" to "Notes:",
        "pdfGenerator.informTrainer" to "Since the club wants to take over the registration, inform the coaches at least one week before the tournament about the participation",
        "pdfGenerator.leagueLabel" to "League:",
        "pdfGenerator.lineupQttr" to "(Q)TTR",
        "pdfGenerator.member" to "Members:",
        "pdfGenerator.nameFirstName" to "Surname, first name",
        "pdfGenerator.noActivities" to "No activities recorded for this training day.",
        "pdfGenerator.noWhiteJersey" to "No white jersey",
        "pdfGenerator.officialTournament" to "Official Tournament",
        "pdfGenerator.oneHourBefore" to "Be in the hall one hour before the start of the competition",
        "pdfGenerator.overallRanking" to "Overall ranking (knockout rounds)",
        "pdfGenerator.periodLabel" to "Registration for:",
        "pdfGenerator.phoneList" to "Phone List - Active Members",
        "pdfGenerator.phoneNumber" to "Telephone no. ",
        "pdfGenerator.place" to "The square",
        "pdfGenerator.placement" to "Placement",
        "pdfGenerator.plannedLeagueLabel" to "Planned league:",
        "pdfGenerator.player" to "Skaters",
        "pdfGenerator.player1" to "Player 1",
        "pdfGenerator.player2" to "4 1/2 minutes",
        "pdfGenerator.points" to "Points",
        "pdfGenerator.recommendations" to "Recommendations",
        "pdfGenerator.result" to "Result",
        "pdfGenerator.round" to "Round",
        "pdfGenerator.seasonLabel" to "Season:",
        "pdfGenerator.sets" to "phrases",
        "pdfGenerator.sportShorts" to "Sports shorts (or sports skirts), preferably not white either",
        "pdfGenerator.startTime" to "start time",
        "pdfGenerator.status" to "status",
        "pdfGenerator.teamAgeGroupLabel" to "Team age group:",
        "pdfGenerator.teamGenderLabel" to "Team gender:",
        "pdfGenerator.teamLineupTitle" to "Team line-up",
        "pdfGenerator.teamNameLabel" to "Team:",
        "pdfGenerator.time" to "Time:",
        "pdfGenerator.timeBlock" to "Time block",
        "pdfGenerator.tournament" to "Tournament",
        "pdfGenerator.trainersPresent" to "The coaches try to be present at all tournaments.",
        "pdfGenerator.trainingPlan" to "Training plan",
        "pdfGenerator.venue" to "Location",
        "pdfGenerator.venues" to "Venues",
        "pdfGenerator.waterBottle" to "Have a bottle of water with you",
        "pendingApprovals.actions" to "Actions",
        "pendingApprovals.approve" to "Approve  ",
        "pendingApprovals.email" to "Email",
        "pendingApprovals.errorApproving" to "Error approving user",
        "pendingApprovals.errorLoadingRequests" to "failed to load pendings for %<%E%s%E%>",
        "pendingApprovals.errorRejecting" to "Error Rejecting User",
        "pendingApprovals.firstName" to "First name",
        "pendingApprovals.lastName" to "Surname",
        "pendingApprovals.noPendingRequests" to "No pending user requests.",
        "pendingApprovals.noPermission" to "No permission",
        "pendingApprovals.noPermissionDetails" to "Only admins can edit member requests.",
        "pendingApprovals.noPermissionMessage" to "You do not have permission to manage shares.",
        "pendingApprovals.reject" to "Dismiss",
        "pendingApprovals.title" to "Pending User Requests",
        "permissions.actions" to "Actions",
        "permissions.active" to "Active",
        "permissions.availableRoles" to "Available Roles",
        "permissions.baseRole" to "Base Role",
        "permissions.cancel" to "Cancel",
        "permissions.clickToActivate" to "Click to activate.",
        "permissions.clickToDeactivate" to "Click to disable",
        "permissions.clubMembers" to "Club members",
        "permissions.creator" to "Creator",
        "permissions.customize" to "Customize",
        "permissions.customizeInfo" to "Here you can make individual adjustments.",
        "permissions.email" to "Email",
        "permissions.errorLoadingData" to "Error loading data",
        "permissions.errorSavingPermissions" to "Error saving permissions",
        "permissions.errorUpdatingRole" to "Failed to update the role",
        "permissions.inactive" to "Unchecked",
        "permissions.loadingMembers" to "Inviting members...",
        "permissions.permissionsFor" to "Permissions for",
        "permissions.reset" to "Revert",
        "permissions.resetAll" to "Reset All",
        "permissions.role" to "Role",
        "permissions.save" to "Save",
        "permissions.status" to "status",
        "permissions.subtitle" to "Manage access rights for club members",
        "permissions.title" to "Credential management",
        "predefinedActivities.addImage" to "Add image",
        "predefinedActivities.cancel" to "Cancel",
        "predefinedActivities.code" to "Abbreviation",
        "predefinedActivities.createDrawing" to "Create Exercise Drawing",
        "predefinedActivities.deduplicate" to "Merge Duplicates",
        "predefinedActivities.delete" to "Delete",
        "predefinedActivities.description" to "Description",
        "predefinedActivities.duration" to "Duration minutes",
        "predefinedActivities.durationText" to "Duration (Text)",
        "predefinedActivities.durationTextPlaceholder" to "e.g. 2x7",
        "predefinedActivities.editActivity" to "Edit Activity",
        "predefinedActivities.editDrawing" to "Edit Exercise Drawing",
        "predefinedActivities.excludeFromStats" to "Exclude from statistics",
        "predefinedActivities.filterAll" to "All",
        "predefinedActivities.filterCustom" to "Custom",
        "predefinedActivities.filterStandard" to "Standard activities",
        "predefinedActivities.imageHelp" to "You can either enter a link to an image or upload an image:",
        "predefinedActivities.imageLink" to "Image link (optional)",
        "predefinedActivities.imageLinkPlaceholder" to "e.g. https://example.com/bild.jpg or /api/predefined-activities/:id/image/:imageId",
        "predefinedActivities.merge" to "Merge",
        "predefinedActivities.min" to "min",
        "predefinedActivities.name" to "name",
        "predefinedActivities.new" to "New",
        "predefinedActivities.newActivity" to "New Activity",
        "predefinedActivities.orUploadImage" to "Or upload image:",
        "predefinedActivities.reload" to "Re-Load",
        "predefinedActivities.searchPlaceholder" to "Search abbreviations (e.g. 'as vh us' or 'vh as us')...",
        "predefinedActivities.selectSource" to "Choose the source",
        "predefinedActivities.selectTarget" to "Select destination",
        "predefinedActivities.title" to "Predefined activities",
        "predefinedActivities.upload" to "Upload",
        "predefinedActivities.uploadAfterSave" to "Upload after saving",
        "predefinedActivities.uploadedImages" to "Uploaded video(s):",
        "predefinedActivities.uploadNote" to "Note: The image will not be uploaded until the activity is saved.",
        "privacy.clubData" to "Club/Activity Data",
        "privacy.consent" to "Consent-based operations",
        "privacy.cookies" to "Cookies/Local Storage",
        "privacy.dataCategories" to "Categories of personal data ",
        "privacy.logData" to "Logfiles",
        "privacy.memberData" to "Member details",
        "privacy.myTischtennisData" to "MyTischtennis data",
        "privacy.purposes" to "Purposes and legal bases of the processing",
        "privacy.recipients" to "Recipient",
        "privacy.registrationData" to "Registration/Profile Data",
        "privacy.responsible" to "Data Controller",
        "privacy.title" to "Privacy policy",
        "privacy.tournamentData" to "Tournament Data",
        "privacy.trainingData" to "Training data",
        "privacy.usage" to "Use of the training diary",
        "privacy.usageData" to "Usage data",
        "privacy.website" to "Preparation of the website",
        "quickAddMember.birthDate" to "Date of birth (optional)",
        "quickAddMember.cancel" to "Cancel",
        "quickAddMember.createAndAdd" to "Create & add new",
        "quickAddMember.firstName" to "First name",
        "quickAddMember.gender" to "Sex",
        "quickAddMember.lastName" to "Surname (optional)",
        "quickAddMember.pleaseSelect" to "Please select",
        "quickAddMember.title" to "Add new member",
        "schedule.activeSelection" to "Active selection",
        "schedule.addressLabel" to "Address",
        "schedule.adultSchedule" to "Adult schedule",
        "schedule.ageClass" to "Age group",
        "schedule.allLeagueMatches" to "All matches",
        "schedule.balls" to "Balls",
        "schedule.cancel" to "Cancel",
        "schedule.cityLabel" to "Postcode/city",
        "schedule.code" to "Code",
        "schedule.completedShort" to "Completed",
        "schedule.copyCode" to "Copy code",
        "schedule.copyGuestPin" to "Copy away PIN",
        "schedule.copyHomePin" to "Copy home PIN",
        "schedule.date" to "Date",
        "schedule.downloadPDF" to "Download PDF",
        "schedule.errorCopying" to "Error while copying",
        "schedule.errorImportingCSV" to "Failed to import the CSV file",
        "schedule.errorLoadingAdultSchedule" to "Failed to load the adult schedule",
        "schedule.errorLoadingGallery" to "The gallery could not be loaded.",
        "schedule.errorLoadingMatches" to "Failed to load matches",
        "schedule.errorLoadingMembers" to "Failed to load the member list.",
        "schedule.errorLoadingOverallSchedule" to "Failed to load the overall schedule",
        "schedule.errorLoadingTable" to "Failed to load league table data from myTischtennis",
        "schedule.errorLoadingTeams" to "Failed to load teams",
        "schedule.errorSavingPlayerSelection" to "Failed to save the player selection",
        "schedule.fetchDataFailed" to "Team data could not be fetched.",
        "schedule.fetchingTeamData" to "Fetching…",
        "schedule.fetchStartFailed" to "The fetch could not be started.",
        "schedule.fetchTeamData" to "Fetch schedule & results",
        "schedule.fetchTimedOut" to "Timed out while fetching data.",
        "schedule.gallery" to "Member gallery",
        "schedule.galleryLoading" to "Loading gallery…",
        "schedule.galleryTitle" to "Member gallery - click an image to mark as ready",
        "schedule.gamesFor" to "Matches for",
        "schedule.guestPin" to "Away PIN",
        "schedule.guestTeam" to "Away team",
        "schedule.homePin" to "Home PIN",
        "schedule.homeTeam" to "Home team",
        "schedule.imageSize" to "Image size",
        "schedule.importSchedule" to "Import schedule",
        "schedule.leagueTable" to "League table",
        "schedule.loadingMembers" to "Loading members...",
        "schedule.locationDialogTitle" to "Game room",
        "schedule.locationInfo" to "Location",
        "schedule.locationName" to "Game room",
        "schedule.matches" to "matches",
        "schedule.matchLabel" to "Game",
        "schedule.matchOverviewDescription" to "Controls which matches from the currently selected league are shown in the schedule.",
        "schedule.matchOverviewTitle" to "Match overview",
        "schedule.nextMatch" to "Next match",
        "schedule.noActiveMembers" to "No active members found",
        "schedule.noGames" to "No matches available",
        "schedule.noLeagueForTeam" to "No league is assigned to this team. Please assign a league first.",
        "schedule.noMatchesForPDF" to "No matches found to generate a PDF.",
        "schedule.noMatchingTeams" to "No teams match the current search.",
        "schedule.noMembersWithImages" to "No members with images found.",
        "schedule.noSelectionMessage" to "Choose the overall schedule, the adult schedule or a team from the left.",
        "schedule.noSelectionTitle" to "No active selection yet",
        "schedule.noTableData" to "No table data available",
        "schedule.noTeamsFound" to "No teams found for this season",
        "schedule.openMatchReport" to "Open match report",
        "schedule.otherTeamMatches" to "Other team",
        "schedule.overallSchedule" to "Overall schedule",
        "schedule.ownTeamMatches" to "Own team",
        "schedule.pendingShort" to "Open",
        "schedule.planned" to "Planned",
        "schedule.played" to "Played",
        "schedule.player" to "Player",
        "schedule.playerSelection" to "Player selection",
        "schedule.playerSelectionSaved" to "Player selection saved",
        "schedule.pleaseSelectGame" to "Please select a match first",
        "schedule.points" to "Pts",
        "schedule.position" to "Position",
        "schedule.ready" to "Ready",
        "schedule.refreshTable" to "Refresh table",
        "schedule.result" to "Result",
        "schedule.save" to "Save",
        "schedule.scheduleImportSuccess" to "Schedule imported successfully.",
        "schedule.schedulePDF" to "Schedules.pdf",
        "schedule.scheduleTab" to "Schedule",
        "schedule.searchTeams" to "Search team or league",
        "schedule.selection" to "Selection",
        "schedule.selectOtherTeam" to "Select other team",
        "schedule.selectSpecificLeague" to "Please select a specific league to load the table.",
        "schedule.sets" to "Sets",
        "schedule.showLocation" to "View Game Venue",
        "schedule.subtitle" to "Select teams, review fixtures and keep league tables in view.",
        "schedule.tableDataLoaded" to "League table data loaded successfully from myTischtennis.",
        "schedule.tableLoading" to "Loading table…",
        "schedule.tableTab" to "Table",
        "schedule.team" to "Team",
        "schedule.teamDataFetched" to "Team data updated successfully.",
        "schedule.teamDataFetchedDetails" to "Team: {team}\nProcessed records: {count}",
        "schedule.teams" to "Teams",
        "schedule.time" to "Time",
        "schedule.title" to "Schedules",
        "schedule.vs" to "vs",
        "schedule.workspaceScheduleDescription" to "{matches} matches, {completed} completed and {pending} open.",
        "schedule.workspaceTableDescription" to "{count} table rows currently loaded.",
        "seasonSelector.addSeason" to "Add new Season",
        "seasonSelector.alreadyExists" to "This season already exists!",
        "seasonSelector.cancel" to "Cancel",
        "seasonSelector.create" to "Create",
        "seasonSelector.errorCreating" to "Error creating season",
        "seasonSelector.errorLoading" to "Error loading seasons",
        "seasonSelector.hint" to "Notice",
        "seasonSelector.label" to "Season:",
        "seasonSelector.loading" to "Loading...",
        "seasonSelector.newSeason" to "Create New Season",
        "seasonSelector.placeholder" to "e.g. 2023/2024",
        "seasonSelector.selectSeason" to "Select season(s)",
        "settings.language" to "Language",
        "settings.languageChanged" to "Language successfully changed",
        "settings.languageDescription" to "Choose your preferred language for the application",
        "settings.personalSettings" to "Personal Settings",
        "settings.selectLanguage" to "Select Language",
        "settings.title" to "Settings",
        "tagHistory.noHistory" to "No tag history available",
        "tagHistory.selectTags" to "Select Tags",
        "tagHistory.title" to "Tag: TypePad",
        "teamManagement.activeTeam" to "Active team",
        "teamManagement.addPlanningTeam" to "Add Planning Team",
        "teamManagement.allMembersAssigned" to "All members are currently assigned.",
        "teamManagement.assignLeagueBeforeDocuments" to "Please assign a league to the team first so documents can be processed.",
        "teamManagement.assignLeagueBeforeParsing" to "Please assign a league to the team first to parse PDF files.",
        "teamManagement.assignMemberToTeam" to "Add to team",
        "teamManagement.association" to "Association",
        "teamManagement.asyncJobStartFailed" to "The async job could not be started.",
        "teamManagement.autoFetchEnabled" to "Automatic data retrieval is enabled",
        "teamManagement.automaticJobs" to "Automatic jobs",
        "teamManagement.autoSaved" to "AutoSaved",
        "teamManagement.autoSaveError" to "Autosaving Failed",
        "teamManagement.availableLineupMembers" to "Available players",
        "teamManagement.basicSettings" to "Basic settings",
        "teamManagement.basicSettingsIntro" to "Review and adjust team name and league in a calmer form.",
        "teamManagement.change" to "Change",
        "teamManagement.clearFields" to "Clear fields",
        "teamManagement.codeList" to "Code list",
        "teamManagement.configurationStatus" to "Configuration status",
        "teamManagement.configureLeagueDetails" to "Association: {association}\nSeason: {season}\nLeague: {league}\nGroup ID: {groupId}\n\nDo you want to configure this league in the database? This enables automatic table data retrieval.",
        "teamManagement.configureLeagueTitle" to "Configure league?",
        "teamManagement.createAndEdit" to "Create & edit",
        "teamManagement.created" to "Created",
        "teamManagement.createNewTeam" to "Create new team",
        "teamManagement.dataFetchFailed" to "Data could not be fetched.",
        "teamManagement.delete" to "Delete",
        "teamManagement.deleteTeamConfirm" to "Do you really want to delete the club team \"{name}\"?",
        "teamManagement.deleteTeamTitle" to "Delete club team",
        "teamManagement.documentAvailable" to "Available",
        "teamManagement.documentMissing" to "Missing",
        "teamManagement.documentNotFound" to "The selected document could not be found.",
        "teamManagement.documentParsedSummary" to "{label} uploaded and parsed successfully.\n\nMatches found: {matchesFound}\nNew matches created: {created}\nMatches updated: {updated}",
        "teamManagement.documents" to "Documents",
        "teamManagement.documentsIntro" to "Upload, review and re-parse code lists and PIN lists when needed.",
        "teamManagement.documentUploaded" to "{label} \"{fileName}\" was uploaded successfully.",
        "teamManagement.edit" to "Edit",
        "teamManagement.editTeam" to "Edit team",
        "teamManagement.eligibility" to "Eligibility",
        "teamManagement.eligibilityAdultRelease" to "Approved for adults",
        "teamManagement.eligibilityAdultReleaseAndReserve" to "Approved + adult reserve",
        "teamManagement.eligibilityAdultReserve" to "Adult reserve",
        "teamManagement.eligibilityRegular" to "Regular",
        "teamManagement.enterUrlForAutoConfig" to "Enter a myTischtennis URL for automatic configuration",
        "teamManagement.error" to "Error",
        "teamManagement.errorConfiguringLeague" to "The league could not be configured.",
        "teamManagement.errorConfiguringTeam" to "The team could not be configured.",
        "teamManagement.errorDeletingTeam" to "Failed to delete the club team.",
        "teamManagement.errorLoadingPdf" to "Failed to load the PDF.",
        "teamManagement.errorLoadingStats" to "Statistics could not be loaded.",
        "teamManagement.errorParsingPdf" to "Failed to parse the PDF file",
        "teamManagement.errorParsingUrl" to "The URL could not be parsed. Please check the format.",
        "teamManagement.errorsCount" to "Errors: {count}",
        "teamManagement.errorUploadingDocument" to "Failed to upload and parse the file.",
        "teamManagement.exportLineupPdf" to "Export line-up as PDF",
        "teamManagement.fetched" to "fetched",
        "teamManagement.fetchTimedOut" to "Timed out while fetching data (async job took too long).",
        "teamManagement.fetchTimeoutShort" to "Timed out while fetching data.",
        "teamManagement.fileTooLarge" to "{label} must not exceed 10 MB.",
        "teamManagement.fileTooLargeTitle" to "File too large",
        "teamManagement.filterAll" to "All",
        "teamManagement.filterConfigured" to "Configured",
        "teamManagement.filterNeedsAttention" to "Needs review",
        "teamManagement.filterNoLeague" to "Without league",
        "teamManagement.firstHalf" to "First half",
        "teamManagement.firstHalfFull" to "First half (July - December)",
        "teamManagement.fullyConfigured" to "Fully configured",
        "teamManagement.groupId" to "Group ID",
        "teamManagement.groupName" to "Group name",
        "teamManagement.invalidFileExtension" to "{label} must have one of the following extensions: {extensions}.",
        "teamManagement.invalidFileTypeTitle" to "Invalid file type",
        "teamManagement.invalidMimeType" to "{label} has an unexpected MIME type: {type}.",
        "teamManagement.lastRun" to "Last run",
        "teamManagement.lastUpdated" to "Last updated",
        "teamManagement.latestUpload" to "Last uploaded: {date}",
        "teamManagement.league" to "League",
        "teamManagement.leagueConfiguredDetails" to "League: {league}\nSeason: {season}\nAssociation: {association}\nGroup ID: {groupId}\n\nTable data can now be retrieved automatically.",
        "teamManagement.leagueConfiguredSuccess" to "League configured successfully. Table data can now be retrieved automatically.",
        "teamManagement.leagueFieldRequired" to "Please select a league class and save.",
        "teamManagement.lineupEmpty" to "No players have been assigned to this team yet.",
        "teamManagement.lineupPdfEmpty" to "No players in the line-up – cannot create PDF.",
        "teamManagement.lineupPdfFilePrefix" to "Lineup",
        "teamManagement.lineupProposal" to "Line-up by QTTR",
        "teamManagement.lineupSaved" to "Team line-up saved.",
        "teamManagement.lineupSaveError" to "Team line-up could not be saved.",
        "teamManagement.lineupUnsavedChanges" to "There are unsaved changes in the team line-up.",
        "teamManagement.lineupValidationTooLargeGap" to "{higher} is more than 30 QTTR points ahead of {lower}. Please correct this order.",
        "teamManagement.loadingStats" to "Loading statistics...",
        "teamManagement.manualFetch" to "Fetch",
        "teamManagement.markAsInterested" to "Mark as Interested",
        "teamManagement.matchesSummary" to "Matches found: {matchesFound}\nNew matches created: {created}\nMatches updated: {updated}",
        "teamManagement.matchResults" to "Match results",
        "teamManagement.missingConfigSummary" to "Missing:",
        "teamManagement.missingItems" to "Missing: {items}",
        "teamManagement.missingLeagueForTeam" to "No league was provided for the selected team.",
        "teamManagement.moreErrors" to "... and {count} more",
        "teamManagement.myTischtennis" to "myTischtennis",
        "teamManagement.myTischtennisIntro" to "Paste a URL, review the configuration and fetch data manually when needed.",
        "teamManagement.mytischtennisLoginRequired" to "Login to myTischtennis required",
        "teamManagement.myTischtennisUrlPlaceholder" to "myTischtennis URL...",
        "teamManagement.myTischtennisUrlRequired" to "Paste and parse the MyTischtennis URL to link the team ID and league data.",
        "teamManagement.never" to "Never",
        "teamManagement.newTeam" to "New team",
        "teamManagement.noAssignment" to "No assignment",
        "teamManagement.noAutomaticUpdate" to "No automatic update yet",
        "teamManagement.noDocumentUploadYet" to "No document uploaded yet.",
        "teamManagement.noIssues" to "No open configuration issues.",
        "teamManagement.noLeague" to "No league",
        "teamManagement.noMatchesFoundDetails" to "Note: No matches detected.\nLines in document: {lines}",
        "teamManagement.noMatchesFoundTitle" to "No matches found",
        "teamManagement.noMatchingTeams" to "No teams match the current search or filter.",
        "teamManagement.noMembersInPool" to "No matching members found.",
        "teamManagement.noPlannedLeague" to "No scheduled league",
        "teamManagement.noPlayerStats" to "No appearances recorded.",
        "teamManagement.notConfigured" to "Not configured",
        "teamManagement.notCreated" to "Not created",
        "teamManagement.noTeamsYet" to "No teams yet. Create your first team.",
        "teamManagement.openDocument" to "Open",
        "teamManagement.openInWorkspace" to "Open to edit",
        "teamManagement.parseDocument" to "Parse again",
        "teamManagement.parseUrlAction" to "Check URL",
        "teamManagement.partiallyConfigured" to "Partially configured",
        "teamManagement.pdfFileNotFound" to "The PDF file could not be found.",
        "teamManagement.pinList" to "PIN list",
        "teamManagement.plannedLeague" to "Planned league",
        "teamManagement.plannedLeagueHint" to "Optional. Independent of the registered league (MyTischtennis).",
        "teamManagement.plannedLeaguePlaceholder" to "e.g. district league, after next registration …",
        "teamManagement.planningSubtitle" to "Distribute members to scheduled teams, set order, and see open assignments.",
        "teamManagement.planningTitle" to "Team planning",
        "teamManagement.player" to "Player",
        "teamManagement.playersPoolSubtitle" to "All active members with game interest",
        "teamManagement.playerStats" to "Appearances",
        "teamManagement.playerStatsIntro" to "Quick overview of this team's appearances in the current season.",
        "teamManagement.playersWantToPlay" to "We want to play.",
        "teamManagement.qttr" to "(Q)TTR rating",
        "teamManagement.ratingUpdates" to "Rating updates",
        "teamManagement.refreshStats" to "Refresh",
        "teamManagement.reuploadFile" to "Please upload the file again and try once more.",
        "teamManagement.searchMembers" to "Search member",
        "teamManagement.searchTeams" to "Search team",
        "teamManagement.season" to "Season",
        "teamManagement.seasonFull" to "Full season (from 1 July)",
        "teamManagement.seasonUnknown" to "unknown",
        "teamManagement.secondHalf" to "Second half",
        "teamManagement.secondHalfFull" to "Second half (from 1 January)",
        "teamManagement.selectedLineup" to "Selected players",
        "teamManagement.selectMember" to "Select member",
        "teamManagement.selectTeam" to "Select Team",
        "teamManagement.selectTeamFirst" to "Please select a team first",
        "teamManagement.selectTeamForConfiguration" to "To activate the myTischtennis configuration, you must first select a team from the list.",
        "teamManagement.selectTeamTitle" to "Select team",
        "teamManagement.showCodeList" to "Show code list",
        "teamManagement.showPinList" to "Show PIN list",
        "teamManagement.sortFirstLast" to "Sorting: First name Last name",
        "teamManagement.sortLastFirst" to "Sorting: Last name First name",
        "teamManagement.status" to "status",
        "teamManagement.subtitle" to "Select teams, review configuration and maintain league data in one place.",
        "teamManagement.successful" to "Successful",
        "teamManagement.tableUpdateLabel" to "Table update:",
        "teamManagement.tableUrlDetected" to "Table URL detected",
        "teamManagement.team" to "Team",
        "teamManagement.teamAgeGroup" to "Age group",
        "teamManagement.teamConfiguredDetails" to "League: {league}\nSeason: {season}\nAutomatic data retrieval is now active.",
        "teamManagement.teamConfiguredSuccess" to "Team configured successfully. Automatic data retrieval is now active.",
        "teamManagement.teamDataFetched" to "Team data fetched successfully.",
        "teamManagement.teamDataFetchedDetails" to "Team: {team}\nFetched records: {count}",
        "teamManagement.teamGender" to "Gender",
        "teamManagement.teamGenderFemale" to "Female",
        "teamManagement.teamGenderOpen" to "Open",
        "teamManagement.teamHasNoLeague" to "This team is not assigned to a league.",
        "teamManagement.teamId" to "Team ID",
        "teamManagement.teamName" to "Team name",
        "teamManagement.teamNamePlaceholder" to "e.g. Men 1, Women 2",
        "teamManagement.teams" to "Teams",
        "teamManagement.title" to "Team Management",
        "teamManagement.unassignedMembers" to "not yet assigned",
        "teamManagement.unassignedMembersSubtitle" to "Members Without Team Assignment",
        "teamManagement.unknown" to "Unknown",
        "teamManagement.unknownTeam" to "Unknown team",
        "teamManagement.updated" to "updated",
        "teamManagement.uploadNewVersion" to "Upload new version",
        "tournament.apply" to "Apply Changes",
        "tournaments.action" to "Action",
        "tournaments.add" to "Add",
        "tournaments.addClass" to "Add Class",
        "tournaments.addClubMember" to "Add Club Member",
        "tournaments.addExternalParticipant" to "Add External Participant",
        "tournaments.addPairing" to "Add pairing",
        "tournaments.addPoolRule" to "Add pool rule",
        "tournaments.address" to "Address",
        "tournaments.adjustTournamentSearch" to "Adjust the search term or create a new tournament.",
        "tournaments.advancersPerGroup" to "Promoters per group",
        "tournaments.allClasses" to "All Classes",
        "tournaments.allDataComplete" to "All participant data is complete.",
        "tournaments.allDataCompleteTop3" to "All data for the top 3 placed players is complete.",
        "tournaments.apply" to "Apply Changes",
        "tournaments.assignmentReviewTitle" to "{count} participants need a choice:",
        "tournaments.atLeastOnePoolRule" to "Please add at least one pool rule for {label} (e.g. places 1,2).",
        "tournaments.autoAssignableParticipantsHint" to "{count} of them can be assigned automatically.",
        "tournaments.autoAssignEligible" to "Assign automatically",
        "tournaments.autoAssignEligibleDone" to "{count} participants were assigned automatically.",
        "tournaments.autoAssignEligibleNone" to "There are currently no participants with a single automatic class assignment.",
        "tournaments.autoAssignEligiblePartial" to "{successCount} participants were assigned automatically, {errorCount} failed.",
        "tournaments.birthdate" to "Date of birth",
        "tournaments.cancel" to "Cancel",
        "tournaments.class" to "Class",
        "tournaments.classes" to "Classes",
        "tournaments.className" to "Class Name",
        "tournaments.cleanupOrphanedMatches" to "Clean up orphaned games",
        "tournaments.club" to "Association",
        "tournaments.clubMember" to "(Club member)",
        "tournaments.conflictSuggestionLabel" to "Suggestions:",
        "tournaments.correctMatch" to "Correct",
        "tournaments.create" to "Create",
        "tournaments.createFinalFromIntermediate" to "Create final round from intermediate round",
        "tournaments.createFinalFromPreliminary" to "Create final round from preliminary round",
        "tournaments.createGroupMatches" to "Create group matches",
        "tournaments.createGroups" to "Who Can Create Groups",
        "tournaments.createIntermediateFromPreliminary" to "Create intermediate round from preliminary round",
        "tournaments.createMatches" to "Set matches",
        "tournaments.createSuggestedPairings" to "Create pairings",
        "tournaments.currentClass" to "Active Class",
        "tournaments.dataNotRecorded" to "Not yet recorded",
        "tournaments.date" to "Date",
        "tournaments.delete" to "Delete",
        "tournaments.deleteClassConfirm" to "Do you really want to delete class \"{name}\"?",
        "tournaments.deleteClassParticipantsDetached" to "All participants will be detached from this class.",
        "tournaments.deleteClassTitle" to "Delete class",
        "tournaments.deleteExistingPairingsConfirm" to "Existing pairings will be deleted. Continue?",
        "tournaments.deleteKORound" to "Knockout",
        "tournaments.diff" to "Diff",
        "tournaments.distributeTables" to "Distribute free tables",
        "tournaments.distributeTablesResult" to "Table distribution",
        "tournaments.doubles" to "Double",
        "tournaments.doublesPairingHint" to "{count} participants in this doubles class still need a partner.",
        "tournaments.doublesTournament" to "Doubles tournament",
        "tournaments.doublesTournamentHint" to "Switches all existing classes to doubles and creates new classes as doubles by default.",
        "tournaments.edit" to "Edit",
        "tournaments.eligibleClassesHint" to "Suitable for: {classes}",
        "tournaments.email" to "Email address",
        "tournaments.encounter" to "Meeting",
        "tournaments.enterClassName" to "Please enter a class name.",
        "tournaments.enterExternalParticipantName" to "Please enter at least first name and last name.",
        "tournaments.enterMiniLocation" to "Please enter a location.",
        "tournaments.errorCreatingGroups" to "Error creating groups.",
        "tournaments.errorCreatingTournament" to "Error creating tournament.",
        "tournaments.errorDistributingTables" to "Error distributing tables.",
        "tournaments.errorGeneratingPdf" to "Error generating the PDF.",
        "tournaments.errorMergingClasses" to "Failed to merge classes.",
        "tournaments.errorMoreSeededThanUnseeded" to "There are more betted than unseeded players. Cannot create random pairings.",
        "tournaments.errorResettingKORound" to "Error resetting knockout round.",
        "tournaments.errorUpdatingTournament" to "Error updating tournament.",
        "tournaments.exportPDF" to "Export PDF",
        "tournaments.external" to "External",
        "tournaments.finalPlacements" to "Final placements",
        "tournaments.finalRound" to "Final round",
        "tournaments.finishMatch" to "Finish",
        "tournaments.firstName" to "First name",
        "tournaments.forForwarding" to "for forwarding",
        "tournaments.gaveUp" to "Placed",
        "tournaments.gaveUpHint" to "Player has surrendered – all games count for the opponent (11:0) or 0:0 for both.",
        "tournaments.genderAll" to "All",
        "tournaments.genderMixed" to "Mixed",
        "tournaments.generatingPDF" to "Generating PDF...",
        "tournaments.group" to "Group",
        "tournaments.groupMatches" to "Inter Group Matches",
        "tournaments.groupNumber" to "Group",
        "tournaments.groupPlacements" to "Group Placements",
        "tournaments.groupsLabel" to "Groups",
        "tournaments.groupsOverview" to "Groups overview",
        "tournaments.groupsPerClass" to "Pool Standings",
        "tournaments.groupsPerClassHint" to "For each class, enter the number of groups (0 = no groups for this class):",
        "tournaments.index" to "Index",
        "tournaments.intermediateRound" to "Intermediate round (round 2)",
        "tournaments.internalStatsAbsoluteRank" to "Total score ranking",
        "tournaments.internalStatsAgeFilter" to "Age group & gender (singles)",
        "tournaments.internalStatsAgeFilterAll" to "All age classes",
        "tournaments.internalStatsAgeFilterNone" to "No age class selected",
        "tournaments.internalStatsAgeNoClass" to "No class assigned",
        "tournaments.internalStatsAgeSelectAll" to "All",
        "tournaments.internalStatsAgeSelectNone" to "None",
        "tournaments.internalStatsAverageRank" to "Average per tournament",
        "tournaments.internalStatsAvgPoints" to "Avg.",
        "tournaments.internalStatsEmpty" to "No data for the selected period.",
        "tournaments.internalStatsExportPdf" to "Export as PDF",
        "tournaments.internalStatsFilterAgeBands" to "Age classes",
        "tournaments.internalStatsFilterGenderColumn" to "Gender",
        "tournaments.internalStatsGenderScopeAll" to "All",
        "tournaments.internalStatsGenderScopeGirls" to "Girls only",
        "tournaments.internalStatsLast12Months" to "Last 12 months",
        "tournaments.internalStatsLast3Months" to "Last 3 months",
        "tournaments.internalStatsLast6Months" to "Last 6 months",
        "tournaments.internalStatsOpenButton" to "Tournament statistics (singles)",
        "tournaments.internalStatsPeriod" to "Period",
        "tournaments.internalStatsPoints" to "Total",
        "tournaments.internalStatsPointsExplain" to "Scoring: In each group, placement is expressed as a percentage (with N ranked players: 1st = 100%, last = 0%, linear in between; tied ranks share the same value). N counts everyone ranked in that group (including guests). With only one player: 100%. Players who reach the knockout get the highest group score in that class plus 1, then one extra point per knockout match won. Club members in singles classes only.",
        "tournaments.internalStatsTitle" to "Internal tournaments statistics (singles)",
        "tournaments.internalStatsTournamentsInPeriod" to "{count} tournament(s) in this period (excluding mini championships).",
        "tournaments.internalStatsTtAdult" to "Adults",
        "tournaments.internalTournaments" to "Internal tournaments",
        "tournaments.knockoutLabel" to "KO",
        "tournaments.koRound" to "knock-out round",
        "tournaments.lastName" to "Surname",
        "tournaments.livePosition" to "Live seat",
        "tournaments.loadFromTraining" to "Load from training day",
        "tournaments.markMatchLive" to "Mark as live",
        "tournaments.maxGroupSize" to "Maximum Party Size",
        "tournaments.mergeClasses" to "Merge classes (common group phase)",
        "tournaments.mergeDistribute" to "Distribute players from A to all groups (from B)",
        "tournaments.mergeSingleGroup" to "All players from A in a group (at B)",
        "tournaments.minBirthYear" to "Born in year or later",
        "tournaments.miniChampionshipLocation" to "Location",
        "tournaments.miniChampionships" to "Mini Championships",
        "tournaments.miniChampionshipYear" to "Year",
        "tournaments.miniChampionshipYearHint" to "12 = this year 12 or 13 years, 10 = 10 or 11, 8 = 9 and younger",
        "tournaments.minimumParticipantsForPairings" to "At least 2 participants are required for pairings.",
        "tournaments.missingDataPDF" to "Missing data as PDF",
        "tournaments.missingDataPDFSubtitle" to "Please collect the missing data (marked with ____) from participants and note them here.",
        "tournaments.missingDataPDFSubtitleTop3" to "Please collect missing data of the top 3 (marked with ____) and note them here.",
        "tournaments.missingDataPDFTitle" to "Missing participant data – Mini championship",
        "tournaments.missingDataPDFTitleTop3" to "Missing data – Top 3 Mini championship",
        "tournaments.name" to "name",
        "tournaments.newMiniChampionship" to "New Mini Championship",
        "tournaments.setShort" to "Set",
        "tournaments.newTournament" to "Add New Tournament",
        "tournaments.noAssignableMatches" to "No matches available where both players are free.",
        "tournaments.noClassesYet" to "No classes available yet. Add a new class.",
        "tournaments.noEligibleClass" to "No suitable class found.",
        "tournaments.noFreeTables" to "No free tables available.",
        "tournaments.noMatchingTournamentsTitle" to "No matching tournaments",
        "tournaments.noOrphanedMatchesFound" to "No orphaned matches found.",
        "tournaments.noPlacementsYet" to "No placements available yet.",
        "tournaments.noPlayerDataAvailable" to "No player data available",
        "tournaments.noPoolRulesYet12" to "No rules yet. Example: places 1 and 2 -> top round-2 groups.",
        "tournaments.noPoolRulesYetFinal" to "No rules yet. Example: places 1 and 2 -> final round.",
        "tournaments.noTop3Yet" to "No top 3 placements have been determined yet.",
        "tournaments.noTournamentDate" to "No tournament date available.",
        "tournaments.noTournamentsCreatedYet" to "No tournaments have been created yet.",
        "tournaments.noTrainingOnDate" to "No training session found for {date}.",
        "tournaments.noTrainingParticipants" to "No participants were found in the training session for this date.",
        "tournaments.noValidTrainingParticipants" to "No valid participants were found in the training session for this date.",
        "tournaments.numberOfGroups" to "Nr of groups",
        "tournaments.numberOfTables" to "Number of tables",
        "tournaments.openTournaments" to "Open Tournaments",
        "tournaments.optional" to "optional",
        "tournaments.orphanedMatchesRemoved" to "{count} orphaned matches removed.",
        "tournaments.outOfCompetition" to "Player from A out of competition",
        "tournaments.page" to "Page",
        "tournaments.pairingAlreadyExists" to "This pairing already exists.",
        "tournaments.pairings" to "Double Pairings",
        "tournaments.pairingsCreatedWithErrors" to "{successCount} pairings created, {errorCount} errors.",
        "tournaments.participantConflicts" to "Conflicts",
        "tournaments.participantNotFound" to "Participant not found.",
        "tournaments.participants" to "Participants",
        "tournaments.participantsNeedClassAssignment" to "{count} participants are not assigned to a class yet. These should be assigned first.",
        "tournaments.phone" to "Phone",
        "tournaments.placementsPendingFinals" to "Final placings will appear once multiple groups or a final round exist.",
        "tournaments.placementsPendingGroups" to "Group placings will appear once group matches exist.",
        "tournaments.placementsPendingNoGroups" to "Placings will appear here once group matches or a final round exist.",
        "tournaments.placementsPendingSelectedClass" to "There are no placings for the currently selected class yet.",
        "tournaments.placementsPendingTitle" to "Placings not available yet",
        "tournaments.placesFromEachGroup" to "Places from each group (e.g. 1,2)",
        "tournaments.player" to "Skaters",
        "tournaments.playerOne" to "Player 1",
        "tournaments.playerTwo" to "Player 2",
        "tournaments.playInGroups" to "Playing in groups",
        "tournaments.playThirdPlace" to "Play third place match",
        "tournaments.pleaseEnterDate" to "Please enter a date",
        "tournaments.pleaseSelectParticipant" to "Please select a student.",
        "tournaments.points" to "Points",
        "tournaments.pointsRatio" to "Game Points",
        "tournaments.poolRuleLabel" to "Rule {number}",
        "tournaments.poolRulePlacesHelp" to "Example: 1 or 1,2",
        "tournaments.poolRulePlacesLabel" to "Which places advance?",
        "tournaments.poolRulePreview" to "From each group, places {places} advance to {target}.",
        "tournaments.poolRuleQuickExamples" to "Quick examples:",
        "tournaments.poolRuleSummary" to "Places {places} go to {target}",
        "tournaments.poolRuleTargetGroupsDetailed" to "{count} target groups",
        "tournaments.poolRuleTargetKnockout" to "the knockout bracket",
        "tournaments.poolRuleTargetLabel" to "Where do these places go?",
        "tournaments.position" to "The square",
        "tournaments.problemConfigDescription" to "Check date, name and winning sets.",
        "tournaments.problemConfigTitle" to "Configuration incomplete",
        "tournaments.problemConflictsDescription" to "Review invalid classes, missing data or unclear assignments.",
        "tournaments.problemConflictsTitle" to "{count} participants with conflicts",
        "tournaments.problemDoublesAutoDescription" to "The open doubles class can be paired automatically right away.",
        "tournaments.problemDoublesDescription" to "One or more doubles classes still need partner assignments.",
        "tournaments.problemDoublesTitle" to "{count} open doubles partners",
        "tournaments.problemGroupMatchesDescription" to "The groups are ready, but the matches have not been created yet.",
        "tournaments.problemGroupMatchesTitle" to "Group matches not generated yet",
        "tournaments.problemGroupsMissingDescription" to "The group tournament needs groups to be created first.",
        "tournaments.problemGroupsMissingTitle" to "Groups not created yet",
        "tournaments.problemKnockoutReadyDescription" to "The group stage is complete and the final round can be generated now.",
        "tournaments.problemKnockoutReadyTitle" to "Knockout can be started",
        "tournaments.problemUnassignedAutoDescription" to "{count} of them can be assigned automatically right away.",
        "tournaments.problemUnassignedDescription" to "These participants still need a manual class assignment.",
        "tournaments.problemUnassignedTitle" to "{count} participants without class",
        "tournaments.promotionRule12" to "Advance: preliminary round → intermediate round (1→2)",
        "tournaments.promotionRuleDescription12" to "Define which places from each preliminary group advance to the intermediate round.",
        "tournaments.promotionRuleDescriptionFinalGroups" to "Define which places from the previous round advance to the final-round groups.",
        "tournaments.promotionRuleDescriptionFinalKnockout" to "Define which places from the previous round advance to the knockout bracket.",
        "tournaments.promotionRuleFinal" to "Advance: round {from} → round {to}",
        "tournaments.randomizeGroups" to "Randomize",
        "tournaments.randomPairings" to "Random Double Pairs",
        "tournaments.randomPairingsCreated" to "Random pairings have been created.",
        "tournaments.resetGroupMatches" to "Inter Group Matches",
        "tournaments.resetGroups" to "Reset Groups",
        "tournaments.result" to "Result",
        "tournaments.resultsRanking" to "Ranking",
        "tournaments.round" to "Round",
        "tournaments.roundGroupCount" to "Number of groups",
        "tournaments.roundMode" to "Mode",
        "tournaments.ruleStatusBlocked" to "Blocked",
        "tournaments.ruleStatusOk" to "Looks good",
        "tournaments.ruleStatusOkDescription" to "This rule matches the current target round and can be used as-is.",
        "tournaments.ruleStatusReview" to "Review",
        "tournaments.save" to "Save",
        "tournaments.saveRounds" to "Save rounds",
        "tournaments.seeded" to "Seed",
        "tournaments.selectClass" to "Select Class",
        "tournaments.selectClassPrompt" to "Please select a class.",
        "tournaments.selectedTournament" to "Active tournament",
        "tournaments.selectParticipant" to "Choose user",
        "tournaments.selectPlayer" to "Select players",
        "tournaments.selectTournamentFirst" to "Please select a tournament first.",
        "tournaments.selectTwoDifferentPlayers" to "Please select two different players.",
        "tournaments.setDiff" to "Sentence Difference",
        "tournaments.sets" to "phrases",
        "tournaments.showClass" to "View Class",
        "tournaments.showingTournamentCount" to "{visible} of {total}",
        "tournaments.showPlayerDetails" to "View Player Details",
        "tournaments.singles" to "Single",
        "tournaments.sourceClass" to "Source",
        "tournaments.stageActionMissingRulesHint" to "Create at least one advancement rule first before moving players into the next round.",
        "tournaments.stageActionRun" to "Run now",
        "tournaments.stageActionsDescription" to "These steps move qualified players into the next round.",
        "tournaments.stageActionsTitle" to "Next actions",
        "tournaments.stageConfigBadServerResponse" to "Invalid server response.",
        "tournaments.stageConfigCurrentSetup" to "Current structure",
        "tournaments.stageConfigIntro" to "The intermediate round is optional. If you activate it, a final round follows afterwards. A knockout final round is created as a single bracket.",
        "tournaments.stageConfigLoadError" to "Error loading round configuration.",
        "tournaments.stageConfigLoading" to "Loading round configuration…",
        "tournaments.stageConfigMissingIds" to "Cannot save: club or tournament ID is missing.",
        "tournaments.stageConfigTitle" to "Intermediate & Final Round",
        "tournaments.stageCreated" to "Round {round} was created.",
        "tournaments.stageFinalDescription" to "Decide whether the final round should be played as groups or directly as a knockout bracket.",
        "tournaments.stageFlowBreakdownActionAddRule" to "Add rule",
        "tournaments.stageFlowBreakdownActionOpen" to "Open rule",
        "tournaments.stageFlowBreakdownActionReview" to "Review issues",
        "tournaments.stageFlowBreakdownErrors" to "{count} blocking error(s)",
        "tournaments.stageFlowBreakdownMissingRule" to "No complete rule has been added yet",
        "tournaments.stageFlowBreakdownOk" to "Configuration looks good",
        "tournaments.stageFlowBreakdownWarnings" to "{count} warning(s) open",
        "tournaments.stageFlowDirectFinal" to "Preliminary round -> final round ({final})",
        "tournaments.stageFlowHealthBlocked" to "Round logic is contradictory",
        "tournaments.stageFlowHealthBlockedDescription" to "At least one rule currently does not match the target round or contains blocking configuration errors.",
        "tournaments.stageFlowHealthIncomplete" to "Round logic is incomplete",
        "tournaments.stageFlowHealthMissingRules" to "At least one transition does not yet have a complete advancement rule.",
        "tournaments.stageFlowHealthOk" to "Round logic looks good",
        "tournaments.stageFlowHealthOkDescription" to "The transitions between rounds are fully configured and currently coherent.",
        "tournaments.stageFlowHealthReviewDescription" to "The round logic is basically usable, but should still be reviewed because of open hints.",
        "tournaments.stageFlowPreviewMissing" to "No rule has been configured yet.",
        "tournaments.stageFlowPreviewRule" to "Places {places} go to {target}",
        "tournaments.stageFlowPreviewRuleWithCount" to "{base} (expected qualifiers: {count})",
        "tournaments.stageFlowQualifiedPreviewEntry" to "G{group} · Place {position} · {name}",
        "tournaments.stageFlowQualifiedPreviewTitle" to "Currently qualified",
        "tournaments.stageFlowReadinessIncompleteGroups" to "{count} group(s) are not fully decided yet",
        "tournaments.stageFlowReadinessNoGroups" to "No matching groups exist yet",
        "tournaments.stageFlowReadinessReady" to "Transition is ready to start",
        "tournaments.stageFlowRecommendationError" to "Review the first blocking error in the round logic first.",
        "tournaments.stageFlowRecommendationFixes" to "The typical configuration problems can be cleaned up automatically right away.",
        "tournaments.stageFlowRecommendationMissingRule" to "A complete rule is still missing for {label}. That is the best place to continue.",
        "tournaments.stageFlowRecommendationSave" to "The round logic is coherent. You can save the configuration now.",
        "tournaments.stageFlowRecommendationTitle" to "Recommended next step",
        "tournaments.stageFlowRecommendationWarnings" to "There are still warnings that should be reviewed before saving.",
        "tournaments.stageFlowWithIntermediate" to "Preliminary round -> intermediate round ({stage2}) -> final round ({final})",
        "tournaments.stageParticipantsTransferred" to "Qualified players were moved into {round}.",
        "tournaments.stageStep1" to "Step 1",
        "tournaments.stageStep1Description" to "First decide whether there should be an additional round after the preliminary round.",
        "tournaments.stageStep1Title" to "Decide on an intermediate round",
        "tournaments.stageStep2" to "Step 2",
        "tournaments.stageStep2Description" to "Define what the intermediate round should look like and how many groups it needs.",
        "tournaments.stageStep3" to "Step 3",
        "tournaments.stageValidationApplyAllFixes" to "Apply {count} quick fix(es)",
        "tournaments.stageValidationApplyFix" to "Apply",
        "tournaments.stageValidationApplyTargetGroupFix" to "Set to {count} target groups",
        "tournaments.stageValidationApplyTargetTypeFix" to "Switch to {target}",
        "tournaments.stageValidationDescription" to "Fix these points before saving or moving players into the next round.",
        "tournaments.stageValidationGroupCountRequired" to "Please set at least one valid group count.",
        "tournaments.stageValidationKnockoutByesLikely" to "With an expected {count} qualifiers, the knockout bracket will very likely include byes.",
        "tournaments.stageValidationKnockoutNeedsTwoPlayers" to "A knockout bracket needs at least 2 qualified players.",
        "tournaments.stageValidationKnockoutTargetOnly" to "For a knockout final round, only the knockout bracket is allowed as the target here.",
        "tournaments.stageValidationNoRules" to "There is no advancement rule yet for {stage}.",
        "tournaments.stageValidationNotEnoughQualifiersForGroups" to "With only {count} qualifiers for {groups} target groups, empty groups would be created.",
        "tournaments.stageValidationRulePlacesDuplicate" to "A single rule must not contain the same place more than once.",
        "tournaments.stageValidationRulePlacesGap" to "The place definition has gaps. Usually a continuous order such as 1,2 or 1,2,3 is intended.",
        "tournaments.stageValidationRulePlacesInvalid" to "The place definition is invalid. Only positive whole numbers such as 1 or 1,2 are allowed.",
        "tournaments.stageValidationRulePlacesRequired" to "Enter at least one place that should advance.",
        "tournaments.stageValidationRulesOverlap" to "Place {place} is assigned twice, in rule {first} and rule {second}.",
        "tournaments.stageValidationSaveBlocked" to "Please fix the highlighted configuration errors first.",
        "tournaments.stageValidationSuggestion" to "Suggestion: {value}",
        "tournaments.stageValidationTargetGroupCountMismatch" to "The number of target groups must match the target round. Expected: {expected}.",
        "tournaments.stageValidationTargetGroupsRequired" to "Please enter a valid number of target groups.",
        "tournaments.stageValidationTargetTypeMismatch" to "The target of this rule must match the target round. Expected: {target}.",
        "tournaments.stageValidationThinGroupsLikely" to "With {count} qualifiers across {groups} target groups, the groups will likely be very small.",
        "tournaments.stageValidationTitle" to "Review configuration",
        "tournaments.startKORound" to "Start knockout round",
        "tournaments.statusActionAssign" to "Assign",
        "tournaments.statusActionCreate" to "Create",
        "tournaments.statusActionGenerate" to "Generate",
        "tournaments.statusActionPair" to "Pair",
        "tournaments.statusActionReview" to "Review",
        "tournaments.statusActionStart" to "Start",
        "tournaments.statusConfigIncomplete" to "Configuration incomplete",
        "tournaments.statusConfigReady" to "Configuration ready",
        "tournaments.statusFinished" to "Finished",
        "tournaments.statusGroupsMissing" to "Groups not created yet",
        "tournaments.statusGroupsReady" to "Groups ready",
        "tournaments.statusGroupsRunning" to "Group stage in progress",
        "tournaments.statusKnockoutReady" to "Knockout ready to start",
        "tournaments.statusKnockoutRunning" to "Knockout in progress",
        "tournaments.statusLive" to "live",
        "tournaments.statusOpen" to "Open",
        "tournaments.statusParticipantsConflicts" to "{count} participants with conflicts",
        "tournaments.statusParticipantsReady" to "{count} participants conflict-free",
        "tournaments.statusParticipantsUnassigned" to "{count} without class",
        "tournaments.statusTournamentCompleted" to "Tournament completed",
        "tournaments.statusUnpairedDoubles" to "{count} doubles without partner",
        "tournaments.strategy" to "Strategy",
        "tournaments.tabConfig" to "Configuration",
        "tournaments.tabGroups" to "Pool Standings",
        "tournaments.table" to "Table",
        "tournaments.tablesDistributed" to "Tables have been distributed.",
        "tournaments.tabParticipants" to "Participants",
        "tournaments.tabPlacements" to "Placings",
        "tournaments.tabResults" to "Results",
        "tournaments.target" to "Target",
        "tournaments.targetClass" to "Target",
        "tournaments.targetGroupCount" to "Target number of groups",
        "tournaments.targetGroupsLabel" to "{count} groups",
        "tournaments.tournamentClassGenderFemale" to "Female",
        "tournaments.tournamentClassGenderOpen" to "Open (all)",
        "tournaments.tournamentName" to "Tournament name",
        "tournaments.tournamentParticipations" to "Official Tournaments & Entries",
        "tournaments.transferQualifiedToFinalFromIntermediate" to "Move qualified players into the final round",
        "tournaments.transferQualifiedToFinalFromIntermediateDesc" to "Uses the intermediate-round to final-round rules and moves the qualified players across.",
        "tournaments.transferQualifiedToFinalFromPreliminary" to "Move qualified players straight into the final round",
        "tournaments.transferQualifiedToFinalFromPreliminaryDesc" to "Uses the preliminary-round to final-round rules and creates the qualified players directly there.",
        "tournaments.transferQualifiedToIntermediate" to "Move qualified players into the intermediate round",
        "tournaments.transferQualifiedToIntermediateDesc" to "Uses the preliminary-round to intermediate-round rules and moves the qualified players across.",
        "tournaments.unknown" to "Unknown",
        "tournaments.unknownDate" to "Unknown Date",
        "tournaments.unmarkMatchLive" to "Remove live marker",
        "tournaments.unpairedDoubles" to "Doubles without partner",
        "tournaments.useIntermediateStage" to "Use intermediate round",
        "tournaments.warningBirthDateMissing" to "Birth date is missing for this class",
        "tournaments.warningClassMissing" to "Class not found",
        "tournaments.warningGenderMismatch" to "Gender does not match class",
        "tournaments.warningGenderMissing" to "Gender is missing for this class",
        "tournaments.warningMissingPairing" to "Doubles partner missing",
        "tournaments.warningTooOldForClass" to "Too old for this class",
        "tournaments.warningTooYoungForClass" to "Too young for this class",
        "tournaments.winningSets" to "Winning rates",
        "tournaments.withoutClass" to "Without Class",
        "tournaments.workspaceProblemsTitle" to "{count} open issues",
        "trainingDetails.birthdate" to "Date of birth",
        "trainingDetails.birthYear" to "Year of birth",
        "trainingDetails.last12Months" to "Last 12 months",
        "trainingDetails.last3Months" to "Last 3 months",
        "trainingDetails.maxBirthYear" to "Born ≤ year",
        "trainingDetails.noTrainings" to "No training attendance available",
        "trainingDetails.title" to "Training Details",
        "trainingDetails.total" to "Total",
        "trainingDetails.trainingParticipations" to "Training participations (sorted in descending order)",
        "trainingGroupsTab.addMember" to "Add Member...",
        "trainingGroupsTab.cancel" to "Cancel",
        "trainingGroupsTab.create" to "Create",
        "trainingGroupsTab.delete" to "Delete",
        "trainingGroupsTab.edit" to "Edit",
        "trainingGroupsTab.editGroup" to "Edit Group",
        "trainingGroupsTab.groupName" to "Group Name",
        "trainingGroupsTab.groups" to "Pool Standings",
        "trainingGroupsTab.members" to "Members",
        "trainingGroupsTab.newGroup" to "+ New Group",
        "trainingGroupsTab.noMembersAvailable" to "No affiliate partners available",
        "trainingGroupsTab.remove" to "Remove",
        "trainingStats.actions" to "Actions",
        "trainingStats.activeMembers" to "Active members",
        "trainingStats.allTrainingDays" to "All training days",
        "trainingStats.attendingMembers" to "Attending members",
        "trainingStats.averageParticipationCurrentMonth" to "Average participation (current month)",
        "trainingStats.averageParticipationHalfYear" to "Average participation (half-year)",
        "trainingStats.averageParticipationLastMonth" to "Average participation (last month)",
        "trainingStats.averageParticipationQuarter" to "Average participation (quarter)",
        "trainingStats.averageParticipationYear" to "Average participation (year)",
        "trainingStats.birthdate" to "Birthdate",
        "trainingStats.date" to "Date",
        "trainingStats.lastTraining" to "Last training",
        "trainingStats.memberParticipations" to "Member participations",
        "trainingStats.name" to "name",
        "trainingStats.noParticipants" to "No participants",
        "trainingStats.panelAgeGroups" to "Attendance by age class",
        "trainingStats.panelBestDay" to "Busiest training day",
        "trainingStats.panelGroupPerformance" to "Progress by group",
        "trainingStats.panelMemberStructure" to "Member structure",
        "trainingStats.panelMonthlyTrend" to "Monthly trend",
        "trainingStats.panelSummary" to "Key figures (filtered)",
        "trainingStats.panelWeekdayStats" to "Training days by weekday",
        "trainingStats.participants" to "Participants",
        "trainingStats.participations12Months" to "Participations (12 months)",
        "trainingStats.participations3Months" to "Participations (3 months)",
        "trainingStats.participationsTotal" to "Participations (total)",
        "trainingStats.qttr" to "QTTR",
        "trainingStats.showDetails" to "Show details",
        "trainingStats.title" to "Training statistics",
        "trainingStats.trainingDayFilter" to "Training day",
        "trainingStats.trainingDays" to "Training days (last 12 months)",
        "trainingStats.ttr" to "TTR",
        "trainingStats.weekday" to "Weekday",
        "trainingTimesTab.addTime" to "Add time",
        "trainingTimesTab.cancel" to "Cancel",
        "trainingTimesTab.create" to "Create",
        "trainingTimesTab.delete" to "Delete",
        "trainingTimesTab.edit" to "Edit",
        "trainingTimesTab.editTime" to "Edit Training Time",
        "trainingTimesTab.excludeFromQuickDiaryCreate" to "Exclude from quick creation (diary)",
        "trainingTimesTab.excludeFromQuickDiarySaveError" to "The setting could not be saved.",
        "trainingTimesTab.friday" to "Friday",
        "trainingTimesTab.from" to "From:",
        "trainingTimesTab.loading" to "Loading workout times...",
        "trainingTimesTab.monday" to "Monday",
        "trainingTimesTab.noTimes" to "No training times defined",
        "trainingTimesTab.saturday" to "Saturday",
        "trainingTimesTab.save" to "Save",
        "trainingTimesTab.saveError" to "Error saving workout time",
        "trainingTimesTab.sunday" to "Sunday",
        "trainingTimesTab.thursday" to "Thursday",
        "trainingTimesTab.to" to "To:",
        "trainingTimesTab.tuesday" to "Tuesday",
        "trainingTimesTab.wednesday" to "Wednesday",
        "trainingTimesTab.weekday" to "Weekdays:",
        "unknown" to "Unknown",
    ) }

    private val es: Map<String, String> by lazy { mapOf(
        "accident.accident" to "Accidente",
        "accident.accidentDescription" to "Descripción del accidente...",
        "accident.close" to "Cerca",
        "accident.member" to "Miembro",
        "accident.pleaseSelect" to "Por favor seleccione",
        "accident.reportAccident" to "Reportar accidentes",
        "accident.reportedAccidents" to "Accidentes reportados",
        "accident.submit" to "Entregar",
        "activityStats.activityStatistics" to "Estadísticas de ejercicio",
        "activityStats.last3Participations" to "Últimas 3 entradas",
        "activityStats.noParticipations" to "No hay entradas disponibles",
        "activityStats.noStatistics" to "No hay estadísticas disponibles",
        "activityStats.title" to "Estadísticas de ejercicio",
        "app.name" to "Diario de entrenamiento",
        "app.title" to "Diario de entrenamiento",
        "auth.accountActivated" to "¡Cuenta activada! Ahora puedes iniciar sesión.",
        "auth.activate" to "Activar",
        "auth.activateAccount" to "Activar cuenta",
        "auth.activationFailed" to "Activación fallida. Por favor verifica el enlace.",
        "auth.confirmPassword" to "Confirmar contraseña",
        "auth.email" to "Correo electrónico",
        "auth.forgotPassword" to "¿Olvidaste tu contraseña?",
        "auth.forgotPasswordDescription" to "Introduce tu dirección de correo electrónico. Recibirás un enlace para restablecer tu contraseña.",
        "auth.hasAccount" to "¿Ya tienes una cuenta?",
        "auth.login" to "Iniciar sesión",
        "auth.loginFailed" to "Inicio de sesión fallido. Por favor verifica tus credenciales.",
        "auth.loginSuccess" to "Sesión iniciada correctamente",
        "auth.logout" to "Cerrar sesión",
        "auth.logoutSuccess" to "Sesión cerrada correctamente",
        "auth.newPassword" to "Nueva contraseña",
        "auth.noAccount" to "¿No tienes cuenta?",
        "auth.password" to "Contraseña",
        "auth.passwordResetSuccess" to "Tu contraseña ha sido cambiada exitosamente. Ahora puedes iniciar sesión.",
        "auth.passwordsDoNotMatch" to "Las contraseñas no coinciden.",
        "auth.passwordTooShort" to "La contraseña debe tener al menos 6 caracteres.",
        "auth.register" to "Registrarse",
        "auth.registerFailed" to "El registro falló. Por favor inténtalo de nuevo.",
        "auth.registerSuccess" to "¡Registro exitoso! Por favor revise su correo electrónico para activar su cuenta.",
        "auth.rememberMe" to "Recordarme",
        "auth.resetEmailSent" to "Si existe una cuenta con este correo, se ha enviado un enlace de restablecimiento. Revisa tu bandeja de entrada (y la carpeta de spam).",
        "auth.resetFailed" to "No se pudo cambiar la contraseña. El enlace puede haber expirado.",
        "auth.resetPassword" to "Establecer nueva contraseña",
        "auth.resetRequestFailed" to "Solicitud fallida. Inténtalo de nuevo.",
        "auth.saveNewPassword" to "Guardar contraseña",
        "auth.saving" to "Guardando...",
        "auth.sending" to "Enviando...",
        "auth.sendResetLink" to "Enviar enlace",
        "auth.sessionExpired" to "Tu sesión ha expirado. Serás desconectado.",
        "auth.toLogin" to "Ir al inicio de sesión",
        "baseDialog.close" to "Cerca",
        "baseDialog.minimize" to "minimizar",
        "baseDialog.resize" to "Cambiar tamaño",
        "billing.autoSuggestMapping" to "Sugerencias de autos",
        "billing.deleteBilling" to "Borrar",
        "billing.deleteConfirm" to "¿Realmente eliminar esta declaración generada?",
        "billing.deleteError" to "No se pudo eliminar la facturación.",
        "billing.deleteSuccess" to "La facturación ha sido eliminada.",
        "billing.deleteTemplate" to "Eliminar plantilla",
        "billing.deleteTemplateConfirm" to "¿Realmente eliminar esta plantilla?",
        "billing.deleteTemplateError" to "No se pudo eliminar la plantilla.",
        "billing.deleteTemplateSuccess" to "La plantilla ha sido eliminada.",
        "billing.documentDate" to "Fecha",
        "billing.downloadError" to "No se pudo descargar el PDF.",
        "billing.downloadPdf" to "Descargar PDF",
        "billing.generateAndDownloadPdf" to "Generar + descargar PDF",
        "billing.generateError" to "No se pudo crear el PDF.",
        "billing.generateOwnBilling" to "Genera tu propia facturación",
        "billing.generatePdf" to "Generar PDF",
        "billing.generateSuccess" to "Se ha creado el PDF.",
        "billing.generatingPdf" to "Crear PDF...",
        "billing.hourlyRate" to "Salario por hora",
        "billing.hoursAutoHint" to "El número de horas se calcula automáticamente a partir de los días de formación: {hours} h ({count} unidades).",
        "billing.hoursTotal" to "Número de horas",
        "billing.iban" to "IBAN",
        "billing.ibanBoxesReset" to "Se han restablecido las casillas IBAN.",
        "billing.ibanLearnCancel" to "Cancelar aprendizaje de IBAN",
        "billing.ibanLearnDone" to "Se han asignado casillas IBAN del área seleccionada.",
        "billing.ibanLearnStart" to "Aprender IBAN",
        "billing.ibanLearnStep1" to "Aprendizaje de IBAN: haga clic en la primera casilla de IBAN que desee utilizar.",
        "billing.ibanLearnStep2" to "Aprendizaje de IBAN: haga clic en la última casilla de IBAN que se utilizará.",
        "billing.ibanWithoutCountry" to "sin codigo de pais",
        "billing.locationText" to "Ubicación",
        "billing.mappingEditorHint" to "Seleccione el campo y luego haga clic en el PDF. El puesto será asumido inmediatamente.",
        "billing.mappingEditorTitle" to "Asigna campos en el PDF con un clic",
        "billing.mappingField" to "Campo",
        "billing.mappingHint" to "Ajuste y guarde las coordenadas una vez para cada campo. Estas posiciones se utilizan en \"Crear PDF\".",
        "billing.mappingPreviewError" to "No se pudo cargar la vista previa en PDF para el mapeo.",
        "billing.mappingSaved" to "Se ha guardado el mapeo.",
        "billing.mappingSaveError" to "No se pudo guardar el mapeo.",
        "billing.mappingSuggested" to "Se han ingresado sugerencias de automóviles. Por favor verifique y ajuste.",
        "billing.mappingSuggestError" to "No se pudieron determinar las sugerencias automáticas.",
        "billing.mappingTitle" to "Mapeo de posiciones",
        "billing.monthFrom" to "mes de",
        "billing.monthTo" to "mes a",
        "billing.noRuns" to "Aún no hay facturas disponibles.",
        "billing.noSessionsInRange" to "No se encontraron sesiones de entrenamiento en el período seleccionado.",
        "billing.noTemplates" to "Aún no hay plantillas disponibles.",
        "billing.omitField" to "no especifiques",
        "billing.openMappingEditor" to "Mapeo con un clic",
        "billing.resetIbanBoxes" to "Restablecer casillas IBAN",
        "billing.runSection" to "ejecución de facturación",
        "billing.runsTitle" to "Facturaciones anteriores",
        "billing.sameAccountCheckbox" to "Misma cuenta que el último estado de cuenta",
        "billing.saveMapping" to "Guardar mapeo",
        "billing.selfRecipientName" to "Nombre propio",
        "billing.sessionHours" to "Horas",
        "billing.sessionLabel" to "Identificador",
        "billing.sessionTime" to "Tiempo",
        "billing.step1" to "Paso 1: almacenar plantilla",
        "billing.step2" to "Paso 2: crear una ejecución de facturación",
        "billing.step3" to "Paso 3: Genera y descarga PDF",
        "billing.subtitle" to "Crea tu propia factura mensual de lecciones de práctica.",
        "billing.template" to "Plantilla",
        "billing.templateDescription" to "Descripción",
        "billing.templateName" to "Nombre de la plantilla",
        "billing.templatePdf" to "plantilla pdf",
        "billing.templateSection" to "Subir plantilla",
        "billing.title" to "Factura",
        "billing.uploadTemplate" to "Guardar plantilla",
        "calendar.agendaEmpty" to "No hay eventos este mes.",
        "calendar.agendaTitle" to "Eventos del mes",
        "calendar.cancelCancellation.confirm" to "Cancelar ausencia",
        "calendar.cancelCancellation.message" to "¿Cancelar realmente la ausencia “{title}” el {date}?",
        "calendar.cancelCancellation.title" to "Cancelar ausencia de entrenamiento",
        "calendar.cancellation.date" to "Fecha",
        "calendar.cancellation.description" to "Oculta los tiempos de entrenamiento habituales.",
        "calendar.cancellation.fallbackTitle" to "Entrenamiento cancelado",
        "calendar.cancellation.reasonPlaceholder" to "Razón (opcional)",
        "calendar.cancellation.saving" to "Ahorro...",
        "calendar.cancellation.submit" to "Agregar",
        "calendar.cancellation.subtitle" to "Cancelación de entrenamiento",
        "calendar.cancellation.title" to "Entrenamiento cancelado",
        "calendar.cancellation.trainingGroups" to "Grupos de entrenamiento",
        "calendar.cancellation.untilOptional" to "Hasta opcional",
        "calendar.customEvent.categoryPlaceholder" to "Categoría (opcional)",
        "calendar.customEvent.description" to "Reuniones distritales, sesiones, reuniones internas, ...",
        "calendar.customEvent.saving" to "Ahorro...",
        "calendar.customEvent.submit" to "Crear",
        "calendar.customEvent.subtitleFallback" to "Evento propio",
        "calendar.customEvent.title" to "Eventos propios",
        "calendar.customEvent.titlePlaceholder" to "Título",
        "calendar.description" to "Días de entrenamiento, torneos de clubes y partidos de liga en vista mensual.",
        "calendar.eventTitles.match" to "partido de liga",
        "calendar.eventTitles.officialTournament" to "Participación en el torneo",
        "calendar.eventTitles.tournament" to "Torneo",
        "calendar.eventTitles.training" to "capacitación",
        "calendar.eyebrow" to "Calendario del club",
        "calendar.holidayTypes.holiday" to "Día festivo",
        "calendar.holidayTypes.schoolHoliday" to "vacaciones escolares",
        "calendar.legend.customEvent" to "Evento",
        "calendar.legend.holiday" to "Día festivo",
        "calendar.legend.match" to "partido de liga",
        "calendar.legend.officialTournament" to "Participación",
        "calendar.legend.schoolHoliday" to "vacaciones escolares",
        "calendar.legend.tournament" to "Torneo",
        "calendar.legend.training" to "capacitación",
        "calendar.legend.trainingCancellation" to "Cancelado",
        "calendar.loadError" to "No se pudieron cargar los datos del calendario.",
        "calendar.loading" to "Cargando datos del calendario...",
        "calendar.match.guest" to "Lejos",
        "calendar.match.home" to "Hogar",
        "calendar.noClub" to "Seleccione primero un club.",
        "calendar.options.subtitle" to "Cancelaciones y eventos propios",
        "calendar.options.title" to "Opciones",
        "calendar.participants" to "{count} participantes",
        "calendar.quickCancellation.confirm" to "Añadir cancelación",
        "calendar.quickCancellation.message" to "¿Marcar “{title}” como cancelación de entrenamiento?",
        "calendar.quickCancellation.noGroups" to "No hay grupos de entrenamiento con horarios de entrenamiento disponibles.",
        "calendar.quickCancellation.title" to "Cancelación de entrenamiento",
        "calendar.quickCancellation.trainingGroups" to "Grupos de entrenamiento afectados",
        "calendar.quickCancellation.useWholeRange" to "Aplicar al período completo ({start} a {end})",
        "calendar.recurringTrainingTime" to "Tiempo de entrenamiento regular",
        "calendar.sources.customEvents" to "Eventos propios",
        "calendar.sources.holidays" to "Vacaciones/vacaciones escolares",
        "calendar.sources.matches" to "partidos de liga",
        "calendar.sources.officialTournaments" to "Participaciones en torneos",
        "calendar.sources.tournaments" to "Torneos",
        "calendar.sources.trainingCancellations" to "Cancelaciones de entrenamiento",
        "calendar.sources.trainingDays" to "Jornadas de entrenamiento",
        "calendar.sources.trainingTimes" to "Horarios de entrenamiento",
        "calendar.sourceWarning" to "{source} no se pudo cargar",
        "calendar.starts" to "{count} comienza",
        "calendar.title" to "Calendario",
        "calendar.today" to "Hoy",
        "calendar.tournament.club" to "torneo de clubes",
        "calendar.tournament.open" to "torneo abierto",
        "calendar.weekdays.friday" to "Vie",
        "calendar.weekdays.monday" to "Lun",
        "calendar.weekdays.saturday" to "Sáb",
        "calendar.weekdays.sunday" to "Dom",
        "calendar.weekdays.thursday" to "Jue",
        "calendar.weekdays.tuesday" to "Mar",
        "calendar.weekdays.wednesday" to "Mié",
        "club.accessDenied" to "Acceso al club denegado.",
        "club.accessRequested" to "Se ha solicitado el acceso.",
        "club.accessRequestFailed" to "No se pudo enviar la solicitud de acceso.",
        "club.accessRequestPending" to "Se ha solicitado acceso a este club. Por favor, espera.",
        "club.create" to "Crear club",
        "club.createTitle" to "Crear club",
        "club.diary" to "Diario de entrenamiento",
        "club.errorLoadingRequests" to "Error al cargar las solicitudes abiertas",
        "club.load" to "Cargar",
        "club.members" to "Miembros",
        "club.mobileSelectHint" to "Selecciona primero un club para usar la app en el smartphone.",
        "club.name" to "Nombre del club",
        "club.new" to "Nuevo club",
        "club.noAccess" to "Todavía no tienes acceso a este club.",
        "club.openAccessRequests" to "Solicitudes de acceso abiertas",
        "club.openRequests" to "Solicitudes de acceso abiertas",
        "club.requestAccess" to "Solicitar acceso",
        "club.select" to "Seleccionar club",
        "club.selectPlaceholder" to "Elegir club...",
        "club.title" to "Club",
        "club.trainingDiary" to "Diario de entrenamiento",
        "clubSettings.associationMemberNumber" to "Número de membresía de la asociación",
        "clubSettings.associationMemberNumberPlaceholder" to "p.ej. SN-12-3456.",
        "clubSettings.autoFetchRankings" to "Recuperar clasificaciones automáticamente",
        "clubSettings.greetingHint" to "Este texto aparece en la pestaña \"Bienvenida\" de la hoja de informe del juego.",
        "clubSettings.greetingPlaceholder" to "Texto de bienvenida para los partidos en casa...",
        "clubSettings.greetingText" to "Texto de saludo",
        "clubSettings.guestPlayers" to "Jugadora y Equipo Invitado de Dobles",
        "clubSettings.guestTeam" to "Nombre del equipo invitado",
        "clubSettings.homePlayers" to "Jugadores y dobles del equipo local.",
        "clubSettings.homeTeam" to "Nombre del equipo local",
        "clubSettings.loadFailed" to "No se pudieron cargar las configuraciones",
        "clubSettings.memberDataQuality" to "Miembros de calidad de datos",
        "clubSettings.memberDataQualityHint" to "Estos campos cuentan como necesarios en la página de miembro. Aún se pueden ingresar todos los campos.",
        "clubSettings.myTischtennisFedNickname" to "Abreviatura de asociación",
        "clubSettings.myTischtennisFedNicknamePlaceholder" to "p.ej. HeTTV",
        "clubSettings.myTischtennisRankings" to "Clasificación myTischtennis TTR/QTTR",
        "clubSettings.myTischtennisRankingsHint" to "Recuperación automática del ranking del club para actualizaciones TTR y QTTR de los miembros.",
        "clubSettings.noClubSelected" to "Seleccione primero un médico.",
        "clubSettings.placeholders" to "Espaciador",
        "clubSettings.rankingsUsesAssociationNumber" to "El número de club para la recuperación de la lista de clasificación corresponde al número de membresía de la asociación indicado arriba.",
        "clubSettings.requireCity" to "Ubicación requerida",
        "clubSettings.requireEmail" to "Correo electrónico requerido",
        "clubSettings.requirePhone" to "Número de teléfono requerido",
        "clubSettings.requirePostalCode" to "Se requiere código postal",
        "clubSettings.requireStreet" to "Carretera requerida",
        "clubSettings.save" to "Ahorrar",
        "clubSettings.saved" to "almacenado",
        "clubSettings.saveFailed" to "No se puede guardar",
        "clubSettings.settings" to "Ajustes",
        "clubSettings.title" to "Configuración del club",
        "clubSettings.trainingGroups" to "Grupos de formación.",
        "clubSettings.trainingTimes" to "Horario de práctica",
        "common.actions" to "Acciones",
        "common.active" to "Activo",
        "common.add" to "Añadir",
        "common.all" to "Todos",
        "common.apply" to "Aplicar",
        "common.back" to "Atrás",
        "common.cancel" to "Cancelar",
        "common.choose" to "Elegir",
        "common.clear" to "Borrar",
        "common.close" to "Cerrar",
        "common.confirm" to "Confirmar",
        "common.create" to "Crear",
        "common.date" to "Fecha",
        "common.days" to "días",
        "common.delete" to "Eliminar",
        "common.description" to "Descripción",
        "common.details" to "Details",
        "common.disabled" to "Deshabilitado",
        "common.download" to "Descargar",
        "common.edit" to "Editar",
        "common.enabled" to "Habilitado",
        "common.filter" to "filtrar",
        "common.hours" to "horas",
        "common.in" to "in",
        "common.inactive" to "Inactivo",
        "common.loading" to "Cargando...",
        "common.min" to "mín.",
        "common.minutes" to "minutos",
        "common.months" to "meses",
        "common.move" to "Mover",
        "common.name" to "nombre",
        "common.new" to "Nuevo",
        "common.next" to "Siguiente",
        "common.no" to "No",
        "common.ok" to "OK",
        "common.optional" to "Optional",
        "common.period" to "Periodo",
        "common.previous" to "Anterior",
        "common.refresh" to "Recargar",
        "common.remove" to "Quitar",
        "common.required" to "Obligatorio",
        "common.reset" to "Restablecer",
        "common.save" to "Guardar",
        "common.saved" to "Guardado",
        "common.saving" to "Guardando...",
        "common.search" to "Buscar",
        "common.select" to "Seleccionar",
        "common.status" to "estado",
        "common.submit" to "Enviar",
        "common.time" to "Hora",
        "common.today" to "Hoy",
        "common.type" to "Tipo",
        "common.update" to "Actualizar",
        "common.view" to "Ver",
        "common.weeks" to "semanas",
        "common.years" to "años",
        "common.yes" to "Sí",
        "courtDrawing.cancel" to "Cancelar",
        "courtDrawing.durationMinutes" to "Duración (minutos)",
        "courtDrawing.durationText" to "Duración (texto)",
        "courtDrawing.durationTextPlaceholder" to "p.ej. 2x5",
        "courtDrawing.group" to "Grupo",
        "courtDrawing.ok" to "OK",
        "courtDrawing.selectGroup" to "Seleccionar grupo...",
        "courtDrawing.title" to "Configurar ejercicio de tenis de mesa",
        "courtDrawingRender.animationRunning" to "Animación en progreso...",
        "courtDrawingRender.startAnimation" to "Iniciar animación",
        "courtDrawingTool.addStroke" to "Añadir golpe",
        "courtDrawingTool.backhand" to "Revés",
        "courtDrawingTool.codeLabel" to "Código",
        "courtDrawingTool.completeFirstStroke" to "Completar el primer golpe",
        "courtDrawingTool.completeFirstStrokeHint" to "Elige posición inicial, lado, efecto y objetivo. Después aparecerá el gráfico.",
        "courtDrawingTool.configureExercise" to "Configurar ejercicio",
        "courtDrawingTool.counterSpin" to "Contraefecto",
        "courtDrawingTool.forehand" to "Derecha",
        "courtDrawingTool.noAdditionalStrokes" to "Todavía no se han añadido golpes siguientes.",
        "courtDrawingTool.preview" to "Vista previa",
        "courtDrawingTool.previewHint" to "El gráfico aparece en cuanto el primer golpe está completamente configurado.",
        "courtDrawingTool.service" to "Saque:",
        "courtDrawingTool.serviceTitle" to "Saque",
        "courtDrawingTool.sidespin" to "Efecto lateral",
        "courtDrawingTool.sideUnderspin" to "Lateral cortado",
        "courtDrawingTool.spin" to "Efecto:",
        "courtDrawingTool.startLeft" to "izquierda",
        "courtDrawingTool.startMiddle" to "centro",
        "courtDrawingTool.startRight" to "derecha",
        "courtDrawingTool.stepAdditionalStrokes" to "4. Golpes siguientes",
        "courtDrawingTool.stepAdditionalStrokesHint" to "Opcionalmente añade más pelotas como secuencia.",
        "courtDrawingTool.stepFirstStroke" to "2. Primer golpe",
        "courtDrawingTool.stepFirstStrokeHint" to "Define el lado y el efecto de la primera pelota.",
        "courtDrawingTool.stepStartPosition" to "1. Posición inicial",
        "courtDrawingTool.stepStartPositionHint" to "¿Desde qué posición de saque comienza el ejercicio?",
        "courtDrawingTool.stepTarget" to "3. Objetivo",
        "courtDrawingTool.stepTargetHint" to "Selecciona la zona objetivo del primer golpe.",
        "courtDrawingTool.strokeSide" to "Lado",
        "courtDrawingTool.strokeTypeBlock" to "Block",
        "courtDrawingTool.strokeTypeChopDefense" to "Defensa cortada",
        "courtDrawingTool.strokeTypeCounter" to "Contragolpe",
        "courtDrawingTool.strokeTypeFlip" to "voltear",
        "courtDrawingTool.strokeTypeLabel" to "Tipo de golpe",
        "courtDrawingTool.strokeTypeLobDefense" to "Defensa alta",
        "courtDrawingTool.strokeTypePush" to "Corto",
        "courtDrawingTool.strokeTypeSmash" to "Remate",
        "courtDrawingTool.strokeTypeTopspin" to "Giro superior",
        "courtDrawingTool.targetBackhandHalfLong" to "Revés media-larga",
        "courtDrawingTool.targetBackhandLong" to "Revés largo",
        "courtDrawingTool.targetBackhandShort" to "Revés corto",
        "courtDrawingTool.targetForehandHalfLong" to "Derecha media-larga",
        "courtDrawingTool.targetForehandLong" to "Derecha larga",
        "courtDrawingTool.targetForehandShort" to "Derecha corta",
        "courtDrawingTool.targetMiddleHalfLong" to "Centro media-larga",
        "courtDrawingTool.targetMiddleLong" to "Centro largo",
        "courtDrawingTool.targetMiddleShort" to "Centro corto",
        "courtDrawingTool.targetPosition" to "Posición objetivo:",
        "courtDrawingTool.targetPositionLabel" to "Posición objetivo",
        "courtDrawingTool.title" to "Dibujo de ejercicio de tenis de mesa",
        "courtDrawingTool.titleLabel" to "Título",
        "courtDrawingTool.topspin" to "efecto superior",
        "courtDrawingTool.toTarget" to "a",
        "courtDrawingTool.underspin" to "Cortado",
        "createClub.clubExists" to "La asociación ya existe.",
        "createClub.clubName" to "nombre del club",
        "createClub.create" to "crear un club",
        "createClub.nameRequired" to "Por favor, déle a la asociación un nombre significativo.",
        "createClub.title" to "crear un club",
        "createClub.unknownError" to "Se produjo un error desconocido, inténtalo de nuevo.",
        "csvImport.cancel" to "Cancelar",
        "csvImport.import" to "Importador",
        "csvImport.title" to "Calendario de importación",
        "csvImport.uploadCsvFile" to "Subir archivo CSV",
        "dialogExamples.composableConfirmDetails" to "Este es un ejemplo del uso de Confirm Composable.",
        "dialogExamples.composableConfirmMessage" to "¿Desea continuar?",
        "dialogExamples.composableConfirmTitle" to "utilizarConfirmar ejemplo",
        "dialogExamples.composableDialogText" to "Este cuadro de diálogo utiliza useDialog Composable.",
        "dialogExamples.composableDialogText2" to "¡Esto hace que sea más fácil de administrar!",
        "dialogExamples.composableDialogTitle" to "Diálogo con useDialog Composable",
        "dialogExamples.composableUsage" to "Uso componible",
        "dialogExamples.confirmDeleteMessage" to "¿Estás seguro de que deseas eliminar esta tarjeta de regalo?",
        "dialogExamples.confirmDeleteTitle" to "Confirmar eliminación",
        "dialogExamples.confirmDialogs" to "Diálogos de confirmación",
        "dialogExamples.confirmWarningDetails" to "Esta acción no se puede deshacer.",
        "dialogExamples.confirmWarningMessage" to "¿Estás seguro de que quieres continuar?",
        "dialogExamples.error" to "Error",
        "dialogExamples.errorDetails" to "Inténtelo de nuevo más tarde.",
        "dialogExamples.errorMessage" to "Ha ocurrido un error.",
        "dialogExamples.fullscreenModal" to "Modo de pantalla completa",
        "dialogExamples.fullscreenModalText" to "Este es un cuadro de diálogo de pantalla completa.",
        "dialogExamples.fullscreenModalText2" to "Ocupa casi toda la pantalla (90vw x 90vh).",
        "dialogExamples.fullscreenModalTitle" to "Diálogo modal de pantalla completa",
        "dialogExamples.info" to "Información",
        "dialogExamples.infoDialogs" to "Diálogos informativos",
        "dialogExamples.infoMessage" to "Este es un mensaje informativo.",
        "dialogExamples.information" to "información",
        "dialogExamples.largeModal" to "Modal grande",
        "dialogExamples.largeModalText" to "Este es un gran diálogo modal.",
        "dialogExamples.largeModalText2" to "Ofrece más espacio para el contenido.",
        "dialogExamples.largeModalTitle" to "Gran diálogo modal",
        "dialogExamples.minimizedDialogs" to "Diálogos minimizados:",
        "dialogExamples.modalDialogs" to "Diálogos modales",
        "dialogExamples.multipleDialogs" to "Múltiples diálogos",
        "dialogExamples.nonModalDialog" to "Diálogo no modal",
        "dialogExamples.nonModalDialogs" to "Diálogos no modales",
        "dialogExamples.nonModalText" to "Este es un diálogo no modal.",
        "dialogExamples.nonModalText2" to "¡Puedes moverlo y abrir varios a la vez!",
        "dialogExamples.nonModalTitle" to "Diálogo no modal",
        "dialogExamples.scrollArea" to "Área de desplazamiento para ver mucho contenido...",
        "dialogExamples.secondNonModalText" to "¡Otro diálogo no modal!",
        "dialogExamples.secondNonModalTitle" to "Segundo diálogo no modal",
        "dialogExamples.simpleModal" to "Modales simples",
        "dialogExamples.simpleModalText" to "Este es un diálogo modal simple con tamaño mediano.",
        "dialogExamples.simpleModalText2" to "Haga clic afuera o en la X para cerrar.",
        "dialogExamples.simpleModalTitle" to "Diálogo modal simple",
        "dialogExamples.success" to "Logro",
        "dialogExamples.successDetails" to "Todos los cambios se han guardado.",
        "dialogExamples.successMessage" to "¡La operación se ha completado con éxito!",
        "dialogExamples.title" to "Ejemplos de diálogo",
        "dialogExamples.useConfirmExample" to "utilizarConfirmar ejemplo",
        "dialogExamples.useDialogExample" to "useEjemplo de diálogo",
        "dialogExamples.warning" to "Precauciones",
        "dialogExamples.warningDetails" to "Es posible que algunos campos no estén completos.",
        "dialogExamples.warningMessage" to "Los siguientes enlaces pueden ayudarle:",
        "dialogManager.close" to "Cerca",
        "dialogManager.minimize" to "minimizar",
        "dialogManager.noMinimizedDialogs" to "Sin diálogos minimizados",
        "dialogs.confirm.cancel" to "Cancelar",
        "dialogs.confirm.ok" to "OK",
        "dialogs.confirm.title" to "Confirmación",
        "dialogs.info.ok" to "OK",
        "dialogs.info.title" to "información",
        "diary.activeTrainingDay" to "Día de entrenamiento activo",
        "diary.activities" to "Actividades",
        "diary.activity" to "Actividad",
        "diary.activityDrawing" to "Dibujo de actividad",
        "diary.activityImage" to "Imagen de actividad",
        "diary.activityNotFound" to "Actividad no encontrada. Selecciona una de la lista.",
        "diary.activityOrTimeblock" to "Actividad / bloque horario",
        "diary.activityPlaceholder" to "Actividad",
        "diary.activityRequired" to "Introduce una actividad.",
        "diary.addActivity" to "Añadir actividad",
        "diary.addGroup" to "Añadir grupo",
        "diary.addGroupActivity" to "Añadir actividad de grupo",
        "diary.addGroupButton" to "+ Grupo",
        "diary.addTimeblock" to "Bloque horario",
        "diary.all" to "Todos",
        "diary.applySuggestion" to "Aplicar sugerencia",
        "diary.assignParticipants" to "Asignar participantes",
        "diary.assignParticipantsForGroupActivity" to "Asignar participantes a la actividad de grupo",
        "diary.assignShort" to "Asignar",
        "diary.bookAccident" to "Registrar accidente",
        "diary.confirmDelete" to "Confirmar eliminación",
        "diary.confirmDeleteDate" to "¿Deseas eliminar realmente esta fecha?",
        "diary.confirmDeleteDateDetails" to "También se eliminarán todos los datos asociados.",
        "diary.confirmDeleteGroup" to "¿Deseas eliminar realmente el grupo \"{name}\"?",
        "diary.createDate" to "Crear fecha",
        "diary.createDrawing" to "Crear dibujo de ejercicio",
        "diary.createGroups" to "Crear grupos",
        "diary.createNew" to "Crear",
        "diary.createNewDate" to "Crear nueva fecha",
        "diary.date" to "Fecha",
        "diary.dateCannotBeDeleted" to "La fecha no se puede eliminar",
        "diary.dateCannotBeDeletedDetails" to "Todavía hay contenido (plan, participantes, actividades, accidentes o notas).",
        "diary.dateNoLongerCurrent" to "La fecha seleccionada ya no era actual. Inténtalo de nuevo.",
        "diary.delete" to "Eliminar",
        "diary.deleteDate" to "Eliminar fecha",
        "diary.deleteGroup" to "Eliminar grupo",
        "diary.duration" to "Duración",
        "diary.durationExampleLong" to "p. ej. 2x7 o 3*5",
        "diary.durationExampleShort" to "p. ej. 2x7",
        "diary.durationMinutes" to "Duración (min)",
        "diary.editActivity" to "Editar actividad",
        "diary.editGroupActivity" to "Editar actividad de grupo",
        "diary.editTrainingTimes" to "Editar horarios de entrenamiento",
        "diary.errorCreatingActivity" to "Error al crear la actividad",
        "diary.errorCreatingGroups" to "Error al crear grupos",
        "diary.errorDeletingGroup" to "Error al eliminar el grupo",
        "diary.errorLoadingPredefinedActivities" to "Error al cargar las actividades predefinidas",
        "diary.errorMarkingForm" to "Error al marcar el formulario",
        "diary.errorOccurred" to "Se ha producido un error. Inténtalo de nuevo.",
        "diary.existingGroups" to "Grupos existentes",
        "diary.filterAbsent" to "Ausente",
        "diary.filterAll" to "Todos",
        "diary.filterExcused" to "Justificado",
        "diary.filterPresent" to "Presente",
        "diary.filterTest" to "Prueba",
        "diary.formHandedOver" to "Formulario de afiliación entregado",
        "diary.formMarkedAsHandedOver" to "Formulario de afiliación marcado como entregado",
        "diary.freeActivities" to "Actividades libres",
        "diary.gallery" to "Galería de miembros",
        "diary.galleryCreating" to "Creando galería…",
        "diary.group" to "Grupo...",
        "diary.groupDeletedSuccessfully" to "El grupo se eliminó correctamente.",
        "diary.groupManagement" to "Gestión de grupos",
        "diary.groupsCreated" to "Se crearon {count} grupos correctamente.",
        "diary.groupsLabel" to "Grupos",
        "diary.groupsSection" to "Grupos",
        "diary.leader" to "Responsable",
        "diary.min" to "Min",
        "diary.minutes" to "Minutos",
        "diary.mustCreateAtLeastTwoGroups" to "La primera vez deben crearse al menos 2 grupos.",
        "diary.nextAppointment" to "Próxima cita",
        "diary.noActiveTrainingDay" to "No se ha seleccionado ningún día de entrenamiento.",
        "diary.noEntries" to "No hay entradas",
        "diary.noFreeActivitiesYet" to "Todavía no se han registrado actividades libres.",
        "diary.noParticipants" to "No hay participantes disponibles para este día de entrenamiento.",
        "diary.numberOfGroups" to "Número de grupos",
        "diary.oneGroupAdded" to "Se añadió 1 grupo correctamente.",
        "diary.openPlanItems" to "{count} abiertos",
        "diary.openPlanItemsLabel" to "Estado del plan",
        "diary.overallActivity" to "Actividad global",
        "diary.participants" to "Participantes",
        "diary.participantStatusCancelled" to "Cancelado",
        "diary.participantStatusExcused" to "Justificado",
        "diary.participantStatusNone" to "Sin estado",
        "diary.planActivitiesCount" to "Actividades planificadas",
        "diary.planAddHint" to "Añade nuevos elementos del plan con las acciones superiores.",
        "diary.planEmptyState" to "Todavía no hay nada registrado en el plan de entrenamiento.",
        "diary.quickAdd" to "+ Añadir rápido",
        "diary.quickCreate" to "Alta rápida",
        "diary.quickCreateFailed" to "No se pudo crear el día de entrenamiento.",
        "diary.quickCreateNoSlot" to "No se encontró un día de entrenamiento libre (según horarios de grupos, un año adelante).",
        "diary.searchParticipants" to "Buscar participantes",
        "diary.selectGroup" to "Seleccionar grupo...",
        "diary.selectGroupAndActivity" to "Selecciona un grupo e introduce una actividad.",
        "diary.selectParticipantAndNote" to "Selecciona un participante e introduce una nota.",
        "diary.selectTags" to "Seleccionar etiquetas",
        "diary.selectTrainingGroup" to "Seleccionar grupo de entrenamiento",
        "diary.selectTrainingGroupPlaceholder" to "Selecciona...",
        "diary.showImage" to "Mostrar imagen/dibujo",
        "diary.skipSuggestion" to "Continuar sin sugerencia",
        "diary.standardActivities" to "Actividades estándar",
        "diary.standardActivityAddError" to "No se pudo añadir la actividad estándar.",
        "diary.standardDurationShort" to "Min",
        "diary.startTime" to "Hora de inicio",
        "diary.statusEmpty" to "Este día de entrenamiento aún está vacío.",
        "diary.statusInProgress" to "Este día de entrenamiento está preparado parcialmente.",
        "diary.statusOpenShort" to "Abierto",
        "diary.statusReady" to "Los horarios y el plan de entrenamiento están definidos.",
        "diary.statusReadyShort" to "Listo",
        "diary.suggestion" to "Sugerencia",
        "diary.timeblock" to "Bloque horario",
        "diary.timeblocksCount" to "Bloques horarios",
        "diary.title" to "Diario de entrenamiento",
        "diary.today" to "Hoy",
        "diary.trainingDayAsPDF" to "Descargar día de entrenamiento como PDF",
        "diary.trainingDayAsPDFShort" to "Día de entrenamiento en PDF",
        "diary.trainingDayChecklist" to "Lista de control final",
        "diary.trainingDaySection" to "Día de entrenamiento",
        "diary.trainingDaySummaryPdfShort" to "Resumen de participantes en PDF",
        "diary.trainingEnd" to "Fin del entrenamiento",
        "diary.trainingPlan" to "Plan de entrenamiento",
        "diary.trainingPlanAsPDF" to "Plan de entrenamiento en PDF",
        "diary.trainingPlanPdfShort" to "Planificación en PDF",
        "diary.trainingStart" to "Inicio del entrenamiento",
        "diary.trainingTimesUpdated" to "Los horarios de entrenamiento se actualizaron correctamente.",
        "diary.trainingWindow" to "Franja de entrenamiento",
        "diary.trainingWindowUnset" to "Aún no definido",
        "diary.unassignedPlanItems" to "{count} abiertos",
        "diary.updateTimes" to "Actualizar horarios",
        "errors.ERROR_ACTIVITY_IMAGE_DELETE_FAILED" to "Error al eliminar la imagen.",
        "errors.ERROR_BAD_REQUEST" to "Solicitud no válida.",
        "errors.ERROR_CLUB_ALREADY_EXISTS" to "La asociación ya existe.",
        "errors.ERROR_CLUB_NAME_REQUIRED" to "Por favor, déle a la asociación un nombre significativo.",
        "errors.ERROR_CLUB_NAME_TOO_SHORT" to "Por favor, déle a la asociación un nombre significativo.",
        "errors.ERROR_CLUB_NOT_FOUND" to "Club no encontrado.",
        "errors.ERROR_DIARY_ACTIVITY_PARTICIPANTS_UPDATE_FAILED" to "Error al actualizar los participantes de la actividad",
        "errors.ERROR_DIARY_ASSIGN_ALL_PARTICIPANTS_FAILED" to "Error al asignar a todos los participantes",
        "errors.ERROR_DIARY_ASSIGN_GROUP_FAILED" to "Grupo de asignación de errores",
        "errors.ERROR_DIARY_DATE_NOT_FOUND" to "Fecha no encontrada",
        "errors.ERROR_DIARY_DATE_UPDATED" to "La fecha no estaba (ya no) disponible. El selector de fechas ha sido actualizado. Por favor inténtalo de nuevo.",
        "errors.ERROR_DIARY_GROUP_ASSIGNMENT_UPDATE_FAILED" to "Error al actualizar la asignación de grupo",
        "errors.ERROR_DIARY_IMAGE_LOAD_FAILED" to "FALLO AL CARGAR LA IMAGEN",
        "errors.ERROR_DIARY_MEMBER_CREATE_FAILED" to "Error al crear miembro",
        "errors.ERROR_DIARY_NO_EXERCISE_DATA" to "No se recibieron datos de ejercicio.",
        "errors.ERROR_DIARY_NO_PARTICIPANTS" to "No hay participantes disponibles para este día de capacitación.",
        "errors.ERROR_DIARY_PARTICIPANT_ASSIGN_FAILED" to "No se pudo asignar a los participantes.",
        "errors.ERROR_DIARY_PARTICIPANT_GROUP_ASSIGNMENT_UPDATE_FAILED" to "Error al actualizar la asignación del grupo de participantes",
        "errors.ERROR_DIARY_PDF_GENERATION_FAILED" to "Error al generar PDF.",
        "errors.ERROR_DIARY_STATS_LOAD_FAILED" to "No se pudieron cargar las estadísticas.",
        "errors.ERROR_FORBIDDEN" to "Permiso denegado.",
        "errors.ERROR_GROUP_ALREADY_EXISTS" to "Ya existe un grupo con este nombre.",
        "errors.ERROR_GROUP_CANNOT_RENAME_PRESET" to "No se puede cambiar el nombre de los grupos predeterminados.",
        "errors.ERROR_GROUP_INVALID_PRESET_TYPE" to "Tipo preestablecido no válido.",
        "errors.ERROR_GROUP_NAME_REQUIRED" to "Por favor ingrese un nombre de grupo.",
        "errors.ERROR_GROUP_NOT_FOUND" to "Grupo no encontrado.",
        "errors.ERROR_INTERNAL_SERVER_ERROR" to "Se ha producido un error interno del servidor.",
        "errors.ERROR_INVALID_PASSWORD" to "Contraseña incorrecta.",
        "errors.ERROR_LOG_NOT_FOUND" to "Entrada de registro no encontrada",
        "errors.ERROR_LOGIN_FAILED" to "Error de inicio de sesion.",
        "errors.ERROR_MEMBER_ALREADY_EXISTS" to "El miembro ya existe",
        "errors.ERROR_MEMBER_FIRSTNAME_REQUIRED" to "Se requiere el nombre.",
        "errors.ERROR_MEMBER_LASTNAME_REQUIRED" to "Se requiere apellido.",
        "errors.ERROR_MEMBER_NOT_FOUND" to "Miembros no encontrados",
        "errors.ERROR_MEMBER_TRANSFER_BULK_FAILED" to "Error de transferencia masiva: {message}",
        "errors.ERROR_MYTISCHTENNIS_ACCOUNT_NOT_LINKED" to "No hay ninguna cuenta myTischtennis vinculada.",
        "errors.ERROR_MYTISCHTENNIS_CAPTCHA_REQUIRED" to "Se requiere CAPTCHA. MyTischtennis ahora utiliza un CAPTCHA al iniciar sesión. Inicie sesión directamente en mytischtennis.de para resolver el CAPTCHA o comuníquese con el soporte.",
        "errors.ERROR_MYTISCHTENNIS_INVALID_PASSWORD" to "Contraseña de myTischtennis no válida.",
        "errors.ERROR_MYTISCHTENNIS_LOGIN_FAILED" to "Error de inicio de sesion. Por favor verifique sus credenciales.",
        "errors.ERROR_MYTISCHTENNIS_NO_PASSWORD_SAVED" to "No se guardó ninguna contraseña y la sesión expiró. Por favor ingrese su contraseña.",
        "errors.ERROR_MYTISCHTENNIS_PASSWORD_NOT_SAVED" to "No se guardó ninguna contraseña. Por favor ingrese su contraseña.",
        "errors.ERROR_MYTISCHTENNIS_SESSION_EXPIRED" to "La sesión expiró. Por favor inicia sesión nuevamente.",
        "errors.ERROR_MYTISCHTENNIS_USER_NOT_FOUND" to "Usuario myTischtennis no encontrado.",
        "errors.ERROR_NOT_FOUND" to "Extraviado.",
        "errors.ERROR_OFFICIAL_TOURNAMENT_PDF_UPLOAD" to "Error al cargar el PDF.",
        "errors.ERROR_SESSION_EXPIRED" to "La sesión expiró.",
        "errors.ERROR_TEAM_LINK_TO_LEAGUE_REQUIRED" to "Primero asigne una liga al equipo para que se puedan procesar los documentos.",
        "errors.ERROR_TEAM_NOT_LINKED_TO_LEAGUE" to "Este equipo no está asignado a ninguna liga.",
        "errors.ERROR_TEAM_PDF_LOAD_FAILED" to "No se pudo cargar el PDF",
        "errors.ERROR_TEAM_STATS_LOAD_FAILED" to "No se pudieron cargar las estadísticas",
        "errors.ERROR_TOURNAMENT_CLASS_NAME_REQUIRED" to "¡Por favor ingrese un nombre de clase!",
        "errors.ERROR_TOURNAMENT_NO_DATE" to "¡No hay fecha de torneo disponible!",
        "errors.ERROR_TOURNAMENT_NO_PARTICIPANTS" to "¡No se encontraron participantes en el día de entrenamiento para esta fecha!",
        "errors.ERROR_TOURNAMENT_NO_TRAINING_DAY" to "¡No se encontró ningún día de entrenamiento para {date}!",
        "errors.ERROR_TOURNAMENT_NO_VALID_PARTICIPANTS" to "¡No se encontraron participantes válidos en el día de entrenamiento para esta fecha!",
        "errors.ERROR_TOURNAMENT_NOT_FOUND" to "Torneo no encontrado",
        "errors.ERROR_TOURNAMENT_PDF_GENERATION_FAILED" to "Error al generar PDF",
        "errors.ERROR_TOURNAMENT_SELECT_FIRST" to "Primero seleccione un torneo.",
        "errors.ERROR_TRAINING_STATS_LOAD_FAILED" to "Error al cargar estadísticas de entrenamiento",
        "errors.ERROR_UNAUTHORIZED" to "No autorizado.",
        "errors.ERROR_UNKNOWN_ERROR" to "Se produjo un error desconocido.",
        "errors.ERROR_USER_NOT_FOUND" to "Usuario no encontrado.",
        "errors.ERROR_VALIDATION_FAILED" to "Validación fallida",
        "errors.SUCCESS_DIARY_GROUP_ASSIGNMENT_UPDATED" to "Mapeo de grupo actualizado",
        "errors.SUCCESS_DIARY_MEMBER_CREATED" to "¡El miembro \"{name}\" fue creado y agregado exitosamente!",
        "errors.SUCCESS_OFFICIAL_TOURNAMENT_PDF_UPLOAD" to "Subida exitosa.",
        "home.authenticatedFeatures.keepDiary" to "Lleva un diario de entrenamiento",
        "home.authenticatedFeatures.keepDiaryDesc" to "Documente las actividades de capacitación, los participantes, las actividades y las notas de cada día de capacitación.",
        "home.authenticatedFeatures.manageMembers" to "Administrar miembros",
        "home.authenticatedFeatures.manageMembersDesc" to "Administre los miembros de su club, cree grupos de capacitación y realice un seguimiento de todos los participantes.",
        "home.authenticatedFeatures.manageTournaments" to "Gestionar torneos",
        "home.authenticatedFeatures.manageTournamentsDesc" to "Crea torneos internos y abiertos, importa torneos oficiales y gestiona entradas.",
        "home.authenticatedFeatures.myTischtennisIntegration" to "Integración de MyTable Tennis",
        "home.authenticatedFeatures.myTischtennisIntegrationDesc" to "Sincronice automáticamente los resultados y estadísticas del juego con MyTischtennis.de.",
        "home.authenticatedFeatures.pdfExport" to "Exportación de PDF",
        "home.authenticatedFeatures.pdfExportDesc" to "Exporta las jornadas de formación en formato PDF con participantes, actividades y estadísticas.",
        "home.authenticatedFeatures.statistics" to "Estadísticas y evaluaciones",
        "home.authenticatedFeatures.statisticsDesc" to "Obtenga resúmenes detallados de capacitación y participación, así como estadísticas de actividad.",
        "home.authenticatedFeatures.teamManagement" to "Gestión de equipos",
        "home.authenticatedFeatures.teamManagementDesc" to "Gestiona equipos, ligas, partidos y resultados de tu club.",
        "home.authenticatedFeatures.trainingGroups" to "Grupos y horarios de entrenamiento",
        "home.authenticatedFeatures.trainingGroupsDesc" to "Organice grupos de formación, defina tiempos de formación y gestione las asignaciones de grupo.",
        "home.faq" to "Preguntas frecuentes",
        "home.faqFree.answer" to "Sí, puedes empezar gratis. Las extensiones pueden seguir más adelante.",
        "home.faqFree.question" to "¿Es de uso gratuito?",
        "home.faqInstallation.answer" to "No, es una aplicación web. Lo utiliza directamente en el navegador: en su computadora de escritorio, tableta y teléfono inteligente.",
        "home.faqInstallation.question" to "¿Necesito instalación?",
        "home.faqMyTischtennis.answer" to "Sí, después de la configuración, la aplicación se sincroniza automáticamente con MyTischtennis.de e importa resultados y estadísticas del juego.",
        "home.faqMyTischtennis.question" to "¿La integración MyTischtennis funciona automáticamente?",
        "home.faqPermissions.answer" to "Hay cuatro roles: administrador, entrenador, líder de equipo y miembro. Cada rol tiene permisos específicos que se pueden personalizar.",
        "home.faqPermissions.question" to "¿Cómo funciona el sistema de autorización?",
        "home.faqPrivacy.answer" to "Nos basamos en la economía de datos, aprobaciones transparentes, acceso basado en roles y registros de actividad completos. La aplicación cumple con el RGPD.",
        "home.faqPrivacy.question" to "¿Qué pasa con la protección de datos?",
        "home.faqTournaments.answer" to "Puedes gestionar torneos internos, torneos abiertos y torneos oficiales (por ejemplo, de asociaciones). Se pueden importar torneos oficiales.",
        "home.faqTournaments.question" to "¿Qué tipos de torneos son compatibles?",
        "home.faqTrainingGroups.answer" to "Sí, puedes crear grupos de entrenamiento, definir tiempos de entrenamiento y asignar miembros a los grupos. El diario de entrenamiento sugiere automáticamente grupos y horarios adecuados.",
        "home.faqTrainingGroups.question" to "¿Puedo gestionar grupos y horarios de entrenamiento?",
        "home.features.activityLog" to "Registro de actividad",
        "home.features.activityLogDesc" to "Registro completo de todas las acciones para mayor transparencia y trazabilidad.",
        "home.features.keepDiary" to "Lleva un diario de entrenamiento",
        "home.features.keepDiaryDesc" to "Documente el contenido, el alcance y la asistencia de cada unidad, de forma comprensible y estructurada.",
        "home.features.manageMembers" to "Administrar miembros",
        "home.features.manageMembersDesc" to "Cree perfiles de miembros, forme grupos y mantenga actualizados los estados de contacto y aprobación.",
        "home.features.myTischtennisIntegration" to "Integración de MyTable Tennis",
        "home.features.myTischtennisIntegrationDesc" to "Sincronización automática con MyTischtennis.de para resultados y estadísticas del juego.",
        "home.features.officialTournaments" to "Torneos oficiales",
        "home.features.officialTournamentsDesc" to "Importa y gestiona torneos oficiales, gestiona entradas y resultados.",
        "home.features.organizeSchedules" to "Organizar planes de juego",
        "home.features.organizeSchedulesDesc" to "Planifique juegos, torneos y eventos, incluidos grupos, rondas y resultados.",
        "home.features.pdfExport" to "Exportación de PDF",
        "home.features.pdfExportDesc" to "Exporta las jornadas de formación en formato PDF con participantes, actividades y estadísticas.",
        "home.features.permissionSystem" to "Sistema de autorización",
        "home.features.permissionSystemDesc" to "Acceso basado en roles (administrador, entrenador, capitán del equipo, miembro) con permisos individuales.",
        "home.features.predefinedActivities" to "Actividades predefinidas",
        "home.features.predefinedActivitiesDesc" to "Utilice plantillas para ejercicios recurrentes y acelere su documentación.",
        "home.features.security" to "Seguridad y RGPD",
        "home.features.securityDesc" to "Arquitectura compatible con la protección de datos, aprobaciones de miembros y acceso transparente.",
        "home.features.statistics" to "Estadísticas y evaluación",
        "home.features.statisticsDesc" to "Reciba resúmenes de capacitación y participación, reconozca el desarrollo y planifique específicamente.",
        "home.features.teamManagement" to "Gestión de equipos",
        "home.features.teamManagementDesc" to "Gestiona equipos, ligas, partidos y resultados de tu club.",
        "home.features.trainingGroups" to "Grupos y horarios de entrenamiento",
        "home.features.trainingGroupsDesc" to "Organice grupos de formación, defina tiempos de formación y gestione las asignaciones de grupo.",
        "home.forWhom" to "¿Para quién es el diario de entrenamiento?",
        "home.forWhomText" to "TrainingDiary es la plataforma integral para clubes, departamentos y equipos de entrenadores. Combina gestión de miembros con grupos y horarios de entrenamiento, diario de entrenamiento detallado, organización integral de torneos (torneos internos, abiertos y oficiales), gestión de equipos con integración de ligas, sincronización con MyTischtennis, estadísticas y evaluaciones significativas, así como un sistema de autorización flexible en una aplicación web moderna. A través de roles claros (administrador, formador, líder de equipo, miembro) y autorizaciones individuales, los responsables conservan el control, mientras que los miembros pueden participar de forma autodeterminada. Ideal para deportes de equipo, raqueta e individuales, desde el nivel junior hasta el avanzado. Cumple con GDPR con aprobaciones transparentes y registro de actividad completo.",
        "home.haveAccount" to "ya tengo una cuenta",
        "home.heroFeatures.memberManagement" to "Gestión de miembros y grupos.",
        "home.heroFeatures.myTischtennis" to "Integración de MyTable Tennis",
        "home.heroFeatures.statistics" to "Estadísticas y evaluaciones",
        "home.heroFeatures.teamManagement" to "Gestión de equipos y ligas",
        "home.heroFeatures.tournaments" to "Torneos (internos, abiertos, oficiales)",
        "home.heroFeatures.trainingDiary" to "Diario de entrenamiento y documentación.",
        "home.heroFeatures.trainingGroups" to "Grupos de entrenamiento y horarios de entrenamiento",
        "home.heroSubtitle" to "TrainingDiary es la solución integral para clubes: gestión de miembros, grupos de entrenamiento, tiempos de entrenamiento, diario de entrenamiento, organización de torneos, gestión de equipos, integración de MyTable Tennis, estadísticas y más. Cumple con el RGPD y es fácil de usar.",
        "home.heroTitle" to "Gestión de clubes, planificación de entrenamientos y torneos: todo en un solo lugar",
        "home.howItWorks" to "Así es como funciona",
        "home.registerNow" to "Regístrese ahora gratis",
        "home.rolesAndPrivacy" to "Roles, permisos y RGPD",
        "home.startFree" to "Empieza gratis",
        "home.step1.description" to "Crea una cuenta gratis y actívala por correo electrónico.",
        "home.step1.title" to "Registro",
        "home.step2.description" to "Crea tu club, invita a miembros y crea grupos.",
        "home.step2.title" to "crear un club",
        "home.step3.description" to "Planifique citas, documente la capacitación y realice un seguimiento del progreso.",
        "home.step3.title" to "Planificar y documentar",
        "home.welcome" to "Bienvenido al diario de entrenamiento",
        "home.welcomeBack" to "¡Bienvenido de nuevo! Has iniciado sesión correctamente.",
        "home.whatCanYouDo" to "¿Qué puedes hacer con el diario de entrenamiento?",
        "imageDialog.close" to "Cerca",
        "imageDialog.noImageAvailable" to "No hay imagen disponible",
        "imageDialog.title" to "Pantalla",
        "imageViewer.camera" to "Cámara",
        "imageViewer.delete" to "Borrar",
        "imageViewer.deleteImage" to "Eliminar imagen",
        "imageViewer.nextImage" to "Siguiente imagen",
        "imageViewer.noImageAvailable" to "No hay imagen disponible",
        "imageViewer.previousImage" to "imagen anterior",
        "imageViewer.rotateLeft" to "Girar 90° a la izquierda",
        "imageViewer.rotateRight" to "Girar 90° hacia la derecha",
        "imageViewer.selectFiles" to "Seleccionar archivos",
        "imageViewer.setAsPrimary" to "establecer como imagen principal",
        "imageViewer.setAsPrimaryButton" to "Establecer imagen destacada",
        "imprint.contact" to "Contacto",
        "imprint.serviceProvider" to "Nombre del proveedor de servicios",
        "imprint.title" to "Aviso legal",
        "languages.de" to "Deutsch (Alemán)",
        "languages.de-CH" to "Schwiizerdütsch (Alemán suizo)",
        "languages.en-AU" to "English (Inglés (AU))",
        "languages.en-GB" to "English (Inglés (GB))",
        "languages.en-US" to "English (Inglés (US))",
        "languages.es" to "Español",
        "languages.fil" to "filipino",
        "languages.fr" to "Français (Francés)",
        "languages.it" to "Italiano",
        "languages.ja" to "日本語 (Japonés)",
        "languages.pl" to "Polski (Polaco)",
        "languages.th" to "ไทย (Tailandés)",
        "languages.tl" to "Tagalog (Tagalo)",
        "languages.zh" to "中文 (Chino)",
        "legal.backToHome" to "Volver a la página de inicio",
        "legal.imprint" to "Aviso legal",
        "legal.privacyPolicy" to "Política de privacidad",
        "logs.actions" to "Comportamiento",
        "logs.all" to "Todo",
        "logs.apiRequests" to "Solicitudes de API",
        "logs.applyFilters" to "Aplicar filtro",
        "logs.backend" to "Configuración de back-end",
        "logs.clearFilters" to "Revertir",
        "logs.cronJobs" to "Trabajos cronificados",
        "logs.details" to "Details",
        "logs.displayed" to "desplegado",
        "logs.displayedLabel" to "Visto",
        "logs.error" to "Error",
        "logs.errorLabel" to "Error",
        "logs.errorLoading" to "Error al cargar registros",
        "logs.executionTime" to "tiempo de ejecución",
        "logs.from" to "De",
        "logs.httpMethod" to "Método HTTP",
        "logs.justNow" to "En este momento",
        "logs.loadingLogs" to "Cargando registros...",
        "logs.logDetails" to "Detalle de registro",
        "logs.logDetailsLabels.error" to "Error",
        "logs.logDetailsLabels.executionTime" to "tiempo de ejecución",
        "logs.logDetailsLabels.ip" to "IP",
        "logs.logDetailsLabels.method" to "Método",
        "logs.logDetailsLabels.path" to "camino",
        "logs.logDetailsLabels.requestBody" to "Cuerpo de solicitud",
        "logs.logDetailsLabels.responseBody" to "Cuerpo de respuesta",
        "logs.logDetailsLabels.schedulerJob" to "Trabajo del programador",
        "logs.logDetailsLabels.status" to "estado",
        "logs.logDetailsLabels.time" to "Tiempo",
        "logs.logDetailsLabels.type" to "Tipo",
        "logs.logType" to "Tipo de registro",
        "logs.logTypeLabels.api_request" to "Solicitud de API",
        "logs.logTypeLabels.cron_job" to "Trabajo cronológico",
        "logs.logTypeLabels.manual" to "Manual",
        "logs.logTypeLabels.scheduler" to "planificador",
        "logs.manual" to "Ejecuciones manuales",
        "logs.method" to "Método",
        "logs.minutesAgo" to "Hace {n} minutos",
        "logs.mytischtennis" to "miTenis de Mesa",
        "logs.next" to "Próximo",
        "logs.of" to "por",
        "logs.ownBackend" to "Propio backend",
        "logs.page" to "Página",
        "logs.path" to "camino",
        "logs.pathPlaceholder" to "p.ej. /api/diario",
        "logs.previous" to "Anterior",
        "logs.recordsFound" to "Registros encontrados",
        "logs.scheduler" to "planificador",
        "logs.secondsAgo" to "Hace {n} segundos",
        "logs.status" to "estado",
        "logs.subtitle" to "Descripción general de todas las solicitudes, respuestas y ejecuciones de API",
        "logs.successfullyLoaded" to "Cargado exitosamente",
        "logs.time" to "Tiempo",
        "logs.title" to "Registros del sistema",
        "logs.to" to "A",
        "logs.total" to "Total",
        "logs.type" to "Tipo",
        "matchReport.analyzeNuscore" to "análisis nuscore",
        "matchReport.createLocalCopy" to "Crear copia local",
        "matchReport.hideAnalyzer" to "Ocultar analizador",
        "matchReportApi.availablePlayers" to "Jugadores disponibles",
        "matchReportApi.bothTeamsAppeared" to "Ambos equipos compitieron",
        "matchReportApi.clickToRemove" to "Haga clic para eliminar",
        "matchReportApi.completed" to "Cerrado",
        "matchReportApi.completion" to "Terminación",
        "matchReportApi.endTime" to "tiempo final",
        "matchReportApi.errorLoading" to "Error al cargar datos",
        "matchReportApi.general" to "General",
        "matchReportApi.greeting" to "bienvenida",
        "matchReportApi.guestLineup" to "Configuración de invitado",
        "matchReportApi.guestPin" to "PIN Club de invitados",
        "matchReportApi.guestTeamNotAppeared" to "El equipo invitado {team} no compitió",
        "matchReportApi.homeLineup" to "Instalación en casa",
        "matchReportApi.homePin" to "PIN Inicio Club",
        "matchReportApi.homeTeamNotAppeared" to "El equipo local {team} no compitió",
        "matchReportApi.loading" to "Cargando datos del informe del partido...",
        "matchReportApi.noLineupData" to "No hay datos de instalación disponibles",
        "matchReportApi.notAppeared" to "No participó para todos",
        "matchReportApi.pending" to "Pendiente",
        "matchReportApi.pinInput" to "Entrada de PIN",
        "matchReportApi.playSystem" to "sistema de juego",
        "matchReportApi.rank" to "Círculo",
        "matchReportApi.result" to "Introducir resultados",
        "matchReportApi.retry" to "Intentar otra vez",
        "matchReportApi.selectedPlayers" to "Jugador seleccionado",
        "matchReportApi.setCurrentTime" to "Establecer hora actual",
        "matchReportApi.signLineup" to "Instalación de letreros",
        "matchReportApi.startTime" to "hora de inicio",
        "matchReportApi.status" to "estado",
        "matchReportApi.vs" to "vs",
        "matchReportHeaderActions.copied" to "¡Copiado!",
        "matchReportHeaderActions.copyError" to "Error al copiar el PIN",
        "matchReportHeaderActions.copyPin" to "Copiar PIN",
        "matchReportHeaderActions.copyPinTitle" to "Copiar al portapapeles",
        "matchReportHeaderActions.insertPin" to "INSERTE SU PIN",
        "matchReportHeaderActions.insertPinTitle" to "Inserción automática",
        "matchReportHeaderActions.noPinAvailable" to "Ningún PIN DISPONIBLE",
        "memberActivities.activity" to "Ejercicio",
        "memberActivities.all" to "Todo",
        "memberActivities.close" to "Cerca",
        "memberActivities.dates" to "Datos",
        "memberActivities.frequency" to "Frecuencia",
        "memberActivities.last3Months" to "últimos 3 meses",
        "memberActivities.last4Weeks" to "últimos 2 meses",
        "memberActivities.last6Months" to "último medio año",
        "memberActivities.lastYear" to "El año pasado",
        "memberActivities.loading" to "Cargando ejercicios...",
        "memberActivities.more" to "otro",
        "memberActivities.noActivities" to "No se encontraron ejercicios en el período seleccionado.",
        "memberActivities.period" to "Periodo de tiempo",
        "memberActivities.showLess" to "mostrar menos",
        "memberActivities.title" to "Ejercicios de",
        "memberGallery.imageSize" to "Tamaño de imagen",
        "memberGallery.loading" to "Cargando galería...",
        "memberGallery.noImage" to "Sin imagen",
        "memberGallery.noMembersWithImages" to "No se encontraron miembros con imágenes.",
        "memberGallery.title" to "Galería de miembros",
        "memberGallery.titleWithDate" to "Galería de miembros: haga clic en una imagen para agregarla como participante",
        "memberNotes.add" to "Agregar",
        "memberNotes.memberImage" to "Miembro de imagen",
        "memberNotes.newNote" to "Nueva nota",
        "memberNotes.notes" to "Notas",
        "memberNotes.phone" to "Número de teléfono.",
        "memberNotes.selectTags" to "Seleccionar etiquetas",
        "memberNotes.tags" to "Tags",
        "memberNotes.title" to "Notas para",
        "members.actions" to "Acciones",
        "members.active" to "Activo",
        "members.activeMembers" to "Miembros activos",
        "members.addEmail" to "Añadir dirección de correo",
        "members.addGroup" to "Añadir grupo...",
        "members.addPhone" to "Añadir número de teléfono",
        "members.address" to "Dirección",
        "members.adultReleaseApproved" to "Aprobado para adultos",
        "members.adultReserveApproved" to "Reserva adulta",
        "members.adults" to "Adultos (20+)",
        "members.age" to "Edad",
        "members.ageFromPlaceholder" to "de",
        "members.ageGroup" to "Categoría de edad",
        "members.ageRange" to "Edad de - a",
        "members.ageToPlaceholder" to "a",
        "members.batchFormsMarkedEmpty" to "No hay formularios sin verificar en la selección actual.",
        "members.batchFormsMarkedSuccess" to "Se marcaron {count} formulario(s) como verificados.",
        "members.batchMarkedRegularEmpty" to "No hay miembros de prueba en la selección actual.",
        "members.batchMarkedRegularSuccess" to "Se marcaron {count} miembro(s) de prueba como regulares.",
        "members.batchPartialFailure" to "{success} correctos, {failed} fallidos.",
        "members.birthdate" to "Fecha de nacimiento",
        "members.bulkActions" to "Acciones en lote",
        "members.camera" to "Cámara",
        "members.change" to "Cambiar",
        "members.city" to "Ciudad",
        "members.clearFields" to "Vaciar campos",
        "members.clearFilters" to "Restablecer filtros",
        "members.clickTtRequestAction" to "Solicitar autorización Click-TT",
        "members.clickTtRequestConfirm" to "¿Deseas iniciar la solicitud Click-TT automatizada para {name}?",
        "members.clickTtRequestError" to "No se pudo enviar la solicitud Click-TT.",
        "members.clickTtRequestFailedLog" to "Falló la solicitud Click-TT",
        "members.clickTtRequestHint" to "La solicitud se procesa automáticamente mediante el flujo Click-TT del backend.",
        "members.clickTtRequestPending" to "Solicitud Click-TT en curso",
        "members.clickTtRequestPendingShort" to "En curso...",
        "members.clickTtRequestShort" to "Haga clic en TT",
        "members.clickTtRequestSuccess" to "Inicia sesión en click-tt y envía allí la solicitud.",
        "members.clickTtRequestTitle" to "Iniciar solicitud Click-TT",
        "members.clickTtSubmitted" to "Click-TT enviado",
        "members.closeEditor" to "Cerrar editor",
        "members.composeEmail" to "Preparar correo",
        "members.contact" to "Contacto",
        "members.copyContactSummary" to "Copiar resumen de contactos",
        "members.copyContactSummarySuccess" to "Resumen de contactos copiado al portapapeles.",
        "members.copyEmails" to "Copiar correos",
        "members.copyEmailsEmpty" to "No hay direcciones de correo en la selección actual.",
        "members.copyEmailsSuccess" to "La lista de correo se copió al portapapeles.",
        "members.copyPhones" to "Copiar teléfonos",
        "members.copyPhonesEmpty" to "No hay números de teléfono en la selección actual.",
        "members.copyPhonesSuccess" to "La lista telefónica se copió al portapapeles.",
        "members.create" to "Crear",
        "members.createNewMember" to "Crear nuevo miembro",
        "members.dataIssueAddress" to "Falta la dirección",
        "members.dataIssueBirthdate" to "Falta la fecha de nacimiento",
        "members.dataIssueCity" to "Falta la ciudad",
        "members.dataIssueEmail" to "Falta el correo",
        "members.dataIssueGender" to "Sexo no definido",
        "members.dataIssuePhone" to "Falta el teléfono",
        "members.dataIssuePostalCode" to "Falta el código postal",
        "members.dataIssueStreet" to "Falta la calle",
        "members.dataIssueTrainingGroup" to "Falta el grupo de entrenamiento",
        "members.dataQuality" to "Calidad de los datos",
        "members.dataQualityComplete" to "Datos completos",
        "members.deactivateMember" to "Desactivar miembro",
        "members.deactivateMemberConfirm" to "¿Realmente deseas desactivar a \"{name}\"?",
        "members.deactivateMemberTitle" to "Desactivar miembro",
        "members.deleteImageConfirm" to "¿Deseas eliminar realmente esta imagen?",
        "members.deleteImageTitle" to "Eliminar imagen",
        "members.editHint" to "Un clic en una fila abre el editor.",
        "members.editMember" to "Editar miembro",
        "members.editorAssignTrainingGroupHint" to "Asigna al menos un grupo de entrenamiento.",
        "members.editorCreateHint" to "Crear un nuevo miembro e introducir directamente sus datos de contacto.",
        "members.editorEditHint" to "Editar los datos de {name}.",
        "members.editorRecommendedEntry" to "Entrada recomendada",
        "members.emailAddress" to "Dirección de correo",
        "members.emailAddressShort" to "Correo",
        "members.emails" to "Direcciones de correo",
        "members.errorAddingToGroup" to "Error al añadir al grupo",
        "members.errorDeactivatingMember" to "Error al desactivar al miembro",
        "members.errorDeletingImage" to "No se pudo eliminar la imagen",
        "members.errorLoadingImage" to "Error al cargar la imagen",
        "members.errorLoadingMembers" to "No se pudo cargar la lista de miembros.",
        "members.errorLoadingTrainingParticipations" to "Error al cargar las participaciones de entrenamiento",
        "members.errorMarkingForm" to "Error al marcar el formulario.",
        "members.errorRemovingFromGroup" to "Error al quitar del grupo",
        "members.errorRemovingTestMembership" to "Error al eliminar la membresía de prueba.",
        "members.errorRotatingImage" to "Error al girar la imagen",
        "members.errorSavingMember" to "Error al guardar el miembro",
        "members.errorSettingPrimaryImage" to "No se pudo establecer la imagen principal",
        "members.errorTransfer" to "Error en la transferencia",
        "members.errorUpdatingRatings" to "Error al actualizar los valores TTR/QTTR",
        "members.errorUploadingImage" to "No se pudo subir la imagen",
        "members.exercises" to "Ejercicios",
        "members.exportCsv" to "Exportar CSV",
        "members.exportCsvFile" to "seleccion-miembros.csv",
        "members.exportEmails" to "Correo",
        "members.exportMembersSelected" to "miembros seleccionados actualmente",
        "members.exportPhones" to "Teléfono",
        "members.exportPreview" to "Vista previa de exportación",
        "members.exportPreviewEmpty" to "No hay miembros en la selección actual",
        "members.exportPreviewNames" to "Vista previa",
        "members.exportReachableByEmail" to "con dirección de correo",
        "members.exportReachableByPhone" to "con número de teléfono",
        "members.firstName" to "Nombre",
        "members.formHandedOver" to "Formulario de afiliación entregado",
        "members.formMarkedAsHandedOver" to "El formulario de afiliación se marcó como entregado.",
        "members.gender" to "Sexo",
        "members.genderDiverse" to "Diverso",
        "members.genderFemale" to "Femenino",
        "members.genderMale" to "Masculino",
        "members.genderUnknown" to "Desconocido",
        "members.generatePhoneList" to "Generar lista telefónica",
        "members.groupPhotoCrop" to "Procesar foto de grupo",
        "members.groupPhotoCropSaved" to "Foto del miembro guardada desde la foto de grupo.",
        "members.image" to "Imagen",
        "members.imageDeleted" to "La imagen ha sido eliminada.",
        "members.imageInternet" to "Imagen (web?)",
        "members.imagePreview" to "Vista previa de la imagen del miembro",
        "members.imageUpdated" to "Imagen actualizada",
        "members.inactive" to "inactivo",
        "members.inactiveMembers" to "Miembros inactivos",
        "members.j11" to "U11",
        "members.j13" to "U13",
        "members.j15" to "U15",
        "members.j17" to "U17 (17 años o menos)",
        "members.j19" to "U19",
        "members.j9" to "U9",
        "members.lastName" to "Apellido",
        "members.lastTrainingFilter" to "Último entrenamiento",
        "members.lastTrainingFilterHasDate" to "Con fecha registrada",
        "members.lastTrainingFilterHint" to "Tabla: temporada actual en la columna de edad. Detalle completo (ambas temporadas, último entrenamiento, participaciones) al pasar el ratón por la fila.",
        "members.lastTrainingFilterNoDate" to "Sin último entrenamiento",
        "members.lastTrainingFilterNotInTraining" to "« Ya no entrena »",
        "members.loadingMembers" to "Cargando miembros...",
        "members.m11" to "G11",
        "members.m13" to "G13",
        "members.m15" to "G15",
        "members.m19" to "G19",
        "members.m9" to "G9",
        "members.markFormReceived" to "Marcar formulario como verificado",
        "members.markFormsForSelection" to "Verificar formularios de la selección",
        "members.markRegular" to "Marcar como regular",
        "members.markRegularForSelection" to "Marcar selección como regular",
        "members.memberDeactivated" to "Miembro desactivado",
        "members.memberDetails" to "Detalles del miembro",
        "members.memberFormHandedOver" to "Formulario de afiliación entregado",
        "members.memberImage" to "Imagen del miembro",
        "members.memberImages" to "Imágenes del miembro",
        "members.memberInfo" to "Información del miembro",
        "members.memberScope" to "Ámbito de miembros",
        "members.missingTtrHistoryId" to "No hay ID de myTischtennis almacenado",
        "members.name" to "Apellido, nombre",
        "members.newMember" to "Nuevo miembro",
        "members.noAddressShort" to "Sin dirección",
        "members.noEmailShort" to "Sin correo",
        "members.noGroupsAssigned" to "No hay grupos asignados",
        "members.noGroupsAvailable" to "No hay grupos disponibles",
        "members.noOpenTasks" to "No hay tareas abiertas",
        "members.noPhoneShort" to "Sin teléfono",
        "members.notes" to "Notas",
        "members.noTestMembership" to "Ya no es miembro de prueba",
        "members.notInTrainingTooltip" to "Sin participación desde hace {weeks} semanas de entrenamiento",
        "members.onlyActiveMembers" to "Solo se incluyen miembros activos",
        "members.openTasks" to "Tareas abiertas",
        "members.parent" to "Tutor",
        "members.parentFallback" to "Tutor",
        "members.parentName" to "Nombre (p. ej. madre, padre)",
        "members.phoneList" to "lista-telefonica.pdf",
        "members.phoneListForSelection" to "Lista telefónica de la selección",
        "members.phoneListSelectionFile" to "lista-telefonica-seleccion.pdf",
        "members.phoneNumber" to "Número de teléfono",
        "members.phoneNumberShort" to "Tel.",
        "members.phones" to "Números de teléfono",
        "members.picsInInternetAllowed" to "Fotos permitidas en internet",
        "members.postalCode" to "Código postal",
        "members.previewLastTraining" to "Último entrenamiento",
        "members.previewNoLastTraining" to "Aún sin participación",
        "members.primary" to "Principal",
        "members.primaryImageUpdated" to "Imagen principal actualizada.",
        "members.remove" to "Quitar",
        "members.resultsVisible" to "miembros visibles",
        "members.rowTooltipSeparator" to "·",
        "members.scopeActive" to "Activos",
        "members.scopeActiveDataIncomplete" to "Activo + datos incompletos",
        "members.scopeActiveTest" to "Activo + prueba",
        "members.scopeAll" to "Todos",
        "members.scopeDataIncomplete" to "Datos incompletos",
        "members.scopeInactive" to "Inactivos",
        "members.scopeNeedsForm" to "Formulario sin verificar",
        "members.scopeNotTraining" to "Ya no entrena",
        "members.scopeTest" to "Prueba",
        "members.search" to "Buscar",
        "members.searchAndFilter" to "Búsqueda y filtros",
        "members.searchPlaceholder" to "Buscar por nombre, ciudad, teléfono o correo",
        "members.selectFile" to "Seleccionar archivo",
        "members.showInactiveMembers" to "Mostrar miembros inactivos",
        "members.showTrainingParticipationsColumn" to "Mostrar columna « Participaciones »",
        "members.showTtrHistory" to "Mostrar historial TTR",
        "members.sixOrMoreParticipations" to "6 o más participaciones en entrenamiento",
        "members.sortAge" to "Edad",
        "members.sortBirthday" to "Fecha de nacimiento",
        "members.sortBy" to "Ordenar por",
        "members.sortFirstName" to "Nombre",
        "members.sortLastName" to "Apellido",
        "members.sortLastTraining" to "Último entrenamiento",
        "members.sortOpenTasks" to "Tareas abiertas",
        "members.sortQttr" to "Valor QTTR",
        "members.status" to "estado",
        "members.street" to "Calle",
        "members.subtitle" to "Buscar, filtrar y editar miembros directamente.",
        "members.taskActionMarkRegular" to "Marcar regular",
        "members.taskActionRequest" to "Solicitar",
        "members.taskActionReview" to "Abrir",
        "members.taskActionVerify" to "Verificar",
        "members.taskAssignTrainingGroup" to "Asignar grupo de entrenamiento",
        "members.taskCheckClickTt" to "Revisar autorización Click-TT",
        "members.taskCheckDataQuality" to "Revisar calidad de datos",
        "members.taskCheckTrainingStatus" to "Revisar estado de entrenamiento",
        "members.taskReviewTrialStatus" to "Revisar estado de prueba",
        "members.taskVerifyForm" to "Verificar formulario",
        "members.testMember" to "Prueba",
        "members.testMembers" to "Miembros de prueba",
        "members.testMembership" to "Membresía de prueba",
        "members.testMembershipRemoved" to "Se eliminó la membresía de prueba.",
        "members.threeOrMoreParticipations" to "3 o más participaciones en entrenamiento",
        "members.title" to "Miembros",
        "members.toggleSortDirection" to "Cambiar dirección de ordenación",
        "members.trainingGroups" to "Grupos de entrenamiento",
        "members.trainingParticipations" to "Participaciones en entrenamiento",
        "members.transferErrorTitle" to "Error de transferencia",
        "members.transferMembers" to "Transferir miembros",
        "members.transferSuccessTitle" to "Transferencia correcta",
        "members.ttAdult" to "Adultos (no juvenil según corte)",
        "members.ttAgeClassCol" to "Cat. edad (TT)",
        "members.ttFilterGroupJ" to "Niños y niñas (mixto)",
        "members.ttFilterGroupM" to "Solo niñas",
        "members.ttrQttr" to "TTR/QTTR",
        "members.ttSeasonCurrentTag" to "actual",
        "members.ttSeasonFilter" to "Temporada (corte)",
        "members.ttSeasonNextTag" to "próxima",
        "members.ttStichtagHint" to "Corte el 1 de enero (DTTB). Niños: solo clases J. Niñas: J y M.",
        "members.updateRatings" to "Actualizar TTR/QTTR desde myTischtennis",
        "members.updating" to "Actualizando...",
        "members.visibleMembers" to "Miembros visibles",
        "members.wantsToPlay" to "Quiere jugar",
        "memberSelection.close" to "Cerca",
        "memberSelection.deselectAll" to "Deseleccionar todo",
        "memberSelection.generatePdf" to "Generar PDF",
        "memberSelection.members" to "Miembros",
        "memberSelection.noRecommendations" to "No se encontraron recomendaciones coincidentes.",
        "memberSelection.recommendations" to "Recomendaciones",
        "memberSelection.selectAll" to "Seleccionar todo",
        "memberSelection.title" to "Seleccionar miembros",
        "memberTransfer.additionalField" to "Campo adicional",
        "memberTransfer.additionalFieldExample1" to "Campo adicional (por ejemplo, client_id)",
        "memberTransfer.additionalFieldExample2" to "Campo adicional (por ejemplo, client_secret)",
        "memberTransfer.analyzeAndImport" to "Analizar e importar plantilla",
        "memberTransfer.availablePlaceholders" to "Marcadores de posición disponibles",
        "memberTransfer.bulkMode" to "Modo de importación masiva (transfiere todos los miembros a la vez)",
        "memberTransfer.bulkModeActive" to "Modo activo",
        "memberTransfer.bulkModeActiveDescription" to "La plantilla define el formato para un solo miembro. Los miembros se envuelven automáticamente en una matriz. Opcionalmente, puede definir la estructura externa en la \"plantilla de contenedor masivo\" (ver más abajo).",
        "memberTransfer.bulkModeHint" to "Si está habilitado, todos los miembros de una solicitud se transfieren como una matriz.",
        "memberTransfer.bulkWrapperDescription" to "Opcionalmente, puede definir la estructura externa en la que se insertará la matriz de miembros. Utilice PLACEHOLDER_MEMBERS como marcadores de posición para la matriz de miembros.",
        "memberTransfer.bulkWrapperNote" to "Nota: Si no se especifica ninguna plantilla contenedora, se utiliza automáticamente una matriz de miembros.",
        "memberTransfer.bulkWrapperTemplate" to "Plantilla de contenedor a granel (opcional)",
        "memberTransfer.bulkWrapperWhat" to "¿Qué es una plantilla de contenedor masivo?",
        "memberTransfer.configDeleted" to "¡Configuración eliminada exitosamente!",
        "memberTransfer.configInfo" to "Configure aquí los ajustes para transferir miembros a sistemas externos. Estas configuraciones se guardan según el club específico.",
        "memberTransfer.configSaved" to "Configuración guardada exitosamente",
        "memberTransfer.confirmDelete" to "Eliminar configuración",
        "memberTransfer.confirmDeleteMessage" to "¿Está seguro de que desea reembolsar esta transacción?",
        "memberTransfer.deleteConfig" to "Eliminar configuración",
        "memberTransfer.deleting" to "claro...",
        "memberTransfer.errorDeleting" to "Error al borrar",
        "memberTransfer.errorLoading" to "Error al cargar la configuración",
        "memberTransfer.errorParsingTemplate" to "Error al analizar la plantilla",
        "memberTransfer.errorSaving" to "Error al guardar",
        "memberTransfer.example" to "Ejemplo",
        "memberTransfer.exampleFormData" to "Ejemplo de formato de datos de formulario",
        "memberTransfer.exampleJson" to "Ejemplo de formato JSON (recomendado)",
        "memberTransfer.exampleXml" to "Ejemplo de formato XML",
        "memberTransfer.formDataHint" to "Para los datos del formulario, utilice una plantilla de texto simple con líneas en el formato feldname=placeholder:",
        "memberTransfer.httpMethod" to "Método HTTP",
        "memberTransfer.importTemplate" to "Importar plantilla del ejemplo completo",
        "memberTransfer.importTemplateHint" to "Incluya una plantilla de muestra completa (con miembros de muestra). El sistema detectará automáticamente la plantilla de miembro y la plantilla de contenedor masivo.",
        "memberTransfer.importTemplatePlaceholder" to "Inserte una plantilla de ejemplo completa aquí, por ejemplo:\nLBRACE\n  Diciembre: [\n    LBRACE\n      D .primerNombreD.: D .MaxD.,\n      D. ApellidoD.: D. MustermannD.,\n      Correo electrónico: DMaxATexample.comCorreo electrónico: DMaxATexample.com\n    RBRACE\n  ]\nRBRACE",
        "memberTransfer.invalidJson" to "Asegúrese de utilizar JSON válido.",
        "memberTransfer.invalidTemplateFormat" to "Formato de plantilla no válido",
        "memberTransfer.loadingConfig" to "Cargando configuración...",
        "memberTransfer.loginConfiguration" to "Configuración de inicio de sesión",
        "memberTransfer.loginData" to "Datos de inicio de sesión",
        "memberTransfer.loginEndpointHint" to "Opcional: ruta relativa al punto final de inicio de sesión (por ejemplo, /api/auth/login)",
        "memberTransfer.loginEndpointPath" to "Ruta del punto final de inicio de sesión",
        "memberTransfer.loginEndpointPlaceholder" to "/api/auth/iniciar sesión",
        "memberTransfer.loginFormat" to "Formato de inicio de sesión",
        "memberTransfer.membersArray" to "Matriz de miembros",
        "memberTransfer.password" to "Contraseña",
        "memberTransfer.passwordEncrypted" to "Las contraseñas se almacenan cifradas.",
        "memberTransfer.placeholderHint" to "Haga clic en un marcador de posición para insertarlo en la posición actual del cursor:",
        "memberTransfer.placeholders.address" to "Dirección combinada",
        "memberTransfer.placeholders.addressDesc" to "Calle y ciudad combinadas",
        "memberTransfer.placeholders.birthDate" to "Fecha de nacimiento",
        "memberTransfer.placeholders.birthDateAlt" to "Fecha de nacimiento (antigua)",
        "memberTransfer.placeholders.birthDateAltDesc" to "Fecha de nacimiento en formato AAAA-MM-DD (nombre alternativo)",
        "memberTransfer.placeholders.birthDateDesc" to "en el formato AAAA-MM-DD",
        "memberTransfer.placeholders.city" to "Ubicación",
        "memberTransfer.placeholders.cityDesc" to "Domicilio",
        "memberTransfer.placeholders.email" to "Dirección de correo electrónico",
        "memberTransfer.placeholders.emailDesc" to "Dirección de correo electrónico del miembro",
        "memberTransfer.placeholders.firstName" to "Nombre de pila",
        "memberTransfer.placeholders.firstNameDesc" to "Nombre del miembro",
        "memberTransfer.placeholders.fullName" to "nombre completo",
        "memberTransfer.placeholders.fullNameDesc" to "Nombre y apellido combinados",
        "memberTransfer.placeholders.gender" to "Sexo",
        "memberTransfer.placeholders.genderDesc" to "Género del miembro",
        "memberTransfer.placeholders.lastName" to "Apellido",
        "memberTransfer.placeholders.lastNameDesc" to "Apellido del miembro",
        "memberTransfer.placeholders.phone" to "Número de teléfono",
        "memberTransfer.placeholders.phoneDesc" to "Teléfono del miembro del personal",
        "memberTransfer.placeholders.qttr" to "Valor QTTR",
        "memberTransfer.placeholders.qttrDesc" to "Valor QTTR del miembro",
        "memberTransfer.placeholders.street" to "Calle",
        "memberTransfer.placeholders.streetDesc" to "Calle y número de casa",
        "memberTransfer.placeholders.ttr" to "valor TTR",
        "memberTransfer.placeholders.ttrDesc" to "Valor TTR del miembro",
        "memberTransfer.save" to "Ahorrar",
        "memberTransfer.saving" to "Ahorro...",
        "memberTransfer.serverBaseUrl" to "URL base del servidor",
        "memberTransfer.serverBaseUrlHint" to "URL base del servidor (por ejemplo, https://example.com)",
        "memberTransfer.serverBaseUrlPlaceholder" to "https://ejemplo.com",
        "memberTransfer.serverConfiguration" to "Configuración del servidor",
        "memberTransfer.templateDescription" to "La plantilla define el formato en el que los datos de los miembros se transfieren al sistema externo. Utilice marcadores de posición como PLACEHOLDER_FIRSTNAME para reemplazar automáticamente los datos.",
        "memberTransfer.templateImported" to "Plantilla importada correctamente.",
        "memberTransfer.templateImportedBulk" to "Plantilla de miembro detectada, modo masivo habilitado.",
        "memberTransfer.templateImportedDetails" to "Se han detectado y completado plantillas de miembros y contenedores masivos.",
        "memberTransfer.templateImportedSingle" to "Plantilla de miembro único detectada.",
        "memberTransfer.templateTip" to "Consejo: coloque el cursor en el lugar deseado de la plantilla y haga clic en un marcador de posición para insertarlo. Los marcadores de posición se reemplazan automáticamente por los datos reales del miembro cuando se transfieren.",
        "memberTransfer.templateWhat" to "¿Qué es una plantilla?",
        "memberTransfer.title" to "Transferencia de miembros - Configuración",
        "memberTransfer.transferConfiguration" to "Configuración de transmisión",
        "memberTransfer.transferConfigurationTitle" to "Configuración de transmisión",
        "memberTransfer.transferEndpointHint" to "Ruta relativa al punto final de transmisión (por ejemplo, /api/members/bulk)",
        "memberTransfer.transferEndpointPath" to "Ruta del punto final de transmisión",
        "memberTransfer.transferEndpointPlaceholder" to "/api/miembros/a granel",
        "memberTransfer.transferFormat" to "Formato de transmisión",
        "memberTransfer.transferTemplate" to "Plantilla de transferencia",
        "memberTransfer.usernameEmail" to "Nombre de usuario/correo electrónico",
        "memberTransferDialog.additionalErrors" to "fallas adicionales",
        "memberTransferDialog.additionalFieldPlaceholder" to "Campo adicional (por ejemplo, client_id)",
        "memberTransferDialog.additionalFieldPlaceholderForm" to "Nombre de campo: Valor (por ejemplo, client_id: abc123)",
        "memberTransferDialog.bulkImport" to "Importación masiva",
        "memberTransferDialog.cancel" to "Cancelar",
        "memberTransferDialog.editConfig" to "Edite la configuración.",
        "memberTransferDialog.endpoint" to "Endpoint",
        "memberTransferDialog.excludedMembers" to "Miembros excluidos (faltan campos obligatorios)",
        "memberTransferDialog.format" to "Format",
        "memberTransferDialog.goToSettings" to "Configuración ¿Hacia dónde?",
        "memberTransferDialog.loadingConfig" to "Cargando configuración guardada",
        "memberTransferDialog.loginData" to "Datos de inicio de sesión",
        "memberTransferDialog.loginDataHint" to "Los datos de inicio de sesión se utilizan desde la configuración. Puede sobrescribirlos aquí si es necesario.",
        "memberTransferDialog.loginDataOverride" to "Detalles de inicio de sesión (sobrescritura opcional)",
        "memberTransferDialog.loginDataOverrideHint" to "Complete solo si desea sobrescribir los datos de inicio de sesión guardados. Los campos vacíos utilizan los valores almacenados.",
        "memberTransferDialog.method" to "Método",
        "memberTransferDialog.mode" to "modo",
        "memberTransferDialog.noConfigFound" to "No se encontró ninguna configuración",
        "memberTransferDialog.noConfigMessage" to "Primero configure la transferencia de miembros en la configuración.",
        "memberTransferDialog.passwordPlaceholder" to "Contraseña (dejar en blanco para guardar)",
        "memberTransferDialog.server" to "Server",
        "memberTransferDialog.single" to "Soltero",
        "memberTransferDialog.title" to "Transferir miembros",
        "memberTransferDialog.transfer" to "Transferido",
        "memberTransferDialog.transferConfiguration" to "Configuración de transmisión",
        "memberTransferDialog.transferError" to "Error durante la transmisión",
        "memberTransferDialog.transferFailed" to "Transferencia fallida",
        "memberTransferDialog.transferring" to "Comunicado...",
        "memberTransferDialog.transferSuccess" to "{transferred} transferido exitosamente por {total} miembros.",
        "memberTransferDialog.usernameEmail" to "Nombre de usuario/correo electrónico",
        "messages.cancel" to "Cancelar",
        "messages.confirm" to "Confirmar",
        "messages.error" to "Error",
        "messages.fileTooLarge" to "Archivo demasiado grande",
        "messages.imageMaxSize" to "La imagen debe tener un tamaño máximo de 5 MB.",
        "messages.info" to "Información",
        "messages.invalidFile" to "Archivo no válido",
        "messages.note" to "Aviso",
        "messages.pleaseSelectImageFile" to "Seleccione un archivo de imagen.",
        "messages.recordsDisplayed" to "desplegado",
        "messages.recordsFound" to "Registros encontrados",
        "messages.success" to "Éxito",
        "messages.successfullyLoaded" to "Cargado exitosamente",
        "messages.warning" to "Advertencia",
        "mobile.active" to "Aktiv",
        "mobile.add" to "Hinzufügen",
        "mobile.appLoading" to "App wird geladen",
        "mobile.calendarAgendaEmpty" to "No hay citas en este mes.",
        "mobile.calendarAgendaTitle" to "Citas del mes",
        "mobile.calendarAllSourcesFailed" to "No se pudieron cargar los datos del calendario.",
        "mobile.calendarCancellationEnd" to "Hasta (opcional)",
        "mobile.calendarCancellationHint" to "Oculta los horarios recurrentes en esos días.",
        "mobile.calendarCancellationInMonth" to "Cancelaciones este mes",
        "mobile.calendarCancellationReason" to "Motivo",
        "mobile.calendarCancellationSave" to "Guardar",
        "mobile.calendarCancellationStart" to "Fecha (AAAA-MM-DD)",
        "mobile.calendarCancellationTitle" to "Entrenamiento cancelado",
        "mobile.calendarGridTitle" to "Mes",
        "mobile.calendarLegend" to "Vista",
        "mobile.calendarLegendCancellation" to "Cancelación",
        "mobile.calendarLegendHoliday" to "Festivo",
        "mobile.calendarLegendMatch" to "Partido de liga",
        "mobile.calendarLegendOfficial" to "Participación",
        "mobile.calendarLegendSchool" to "Vacaciones escolares",
        "mobile.calendarLegendTournament" to "Torneo",
        "mobile.calendarLegendTraining" to "Entrenamiento",
        "mobile.calendarSourceCancellations" to "Cancelaciones",
        "mobile.calendarSourceDiary" to "Diario",
        "mobile.calendarSourceFailed" to "no cargado",
        "mobile.calendarSourceHolidays" to "Vacaciones / festivos",
        "mobile.calendarSourceMatches" to "Partidos de liga",
        "mobile.calendarSourceOfficial" to "Participaciones oficiales",
        "mobile.calendarSourceTournaments" to "Torneos",
        "mobile.calendarSourceTrainingTimes" to "Horarios de entrenamiento",
        "mobile.calendarSubtitle" to "Entrenamientos, torneos, partidos y festivos del mes.",
        "mobile.calendarTitle" to "Calendario",
        "mobile.calendarToday" to "Hoy",
        "mobile.cancel" to "Abbrechen",
        "mobile.clubRequest" to "Zugriff anfragen",
        "mobile.clubRequested" to "Angefragt",
        "mobile.createDiaryEntry" to "Eintrag erstellen",
        "mobile.deleteNote" to "Notiz löschen",
        "mobile.deleteTag" to "Tag entfernen",
        "mobile.editTimes" to "Zeiten bearbeiten",
        "mobile.emailAndPasswordRequired" to "E-Mail und Passwort sind erforderlich",
        "mobile.entry" to "Eintrag",
        "mobile.inactive" to "Inaktiv",
        "mobile.language" to "Sprache",
        "mobile.lastTraining" to "Letztes Training",
        "mobile.loginFailed" to "Login fehlgeschlagen",
        "mobile.loginInProgress" to "Anmelden...",
        "mobile.more" to "Mehr",
        "mobile.new" to "Neu",
        "mobile.newNote" to "Neue Notiz",
        "mobile.newTag" to "Neuer Tag",
        "mobile.noDiaryEntries" to "Noch keine Tagebuch-Einträge",
        "mobile.noMembers" to "Keine Mitglieder gefunden",
        "mobile.noResults" to "Keine Treffer",
        "mobile.noTimes" to "Keine Zeiten",
        "mobile.offlineCacheHint" to "Sin conexión: se muestran los datos cargados por última vez.",
        "mobile.participationTop" to "Top Teilnahmen",
        "mobile.refresh" to "Aktualisieren",
        "mobile.requestedAccess" to "Angefragt",
        "mobile.role" to "Rolle",
        "mobile.saveEntry" to "Speichern",
        "mobile.search" to "Suche",
        "mobile.select" to "Auswählen",
        "mobile.sessionCheck" to "Session prüfen",
        "mobile.sessionCheckFailed" to "Session check fehlgeschlagen",
        "mobile.sessionInvalid" to "Session ungültig",
        "mobile.sessionValid" to "Session gültig",
        "mobile.status" to "Status",
        "mobile.user" to "Benutzer",
        "myTischtennis.about" to "Acerca de myTischtennis",
        "myTischtennis.aboutFeatures.fetch" to "Recuperar datos de la competencia directamente",
        "myTischtennis.aboutFeatures.import" to "Importar automáticamente datos del torneo",
        "myTischtennis.aboutFeatures.sync" to "Sincronizar resultados del reproductor",
        "myTischtennis.aboutText" to "Al vincular su cuenta myTischtennis, podrá:",
        "myTischtennis.autoUpdates" to "Actualización automática",
        "myTischtennis.club" to "Asociación (myTischtennis)",
        "myTischtennis.deleteAccount" to "Desconectar cuenta",
        "myTischtennis.disabled" to "Desenfrenado",
        "myTischtennis.editAccount" to "Editar cuenta",
        "myTischtennis.enabled" to "EN",
        "myTischtennis.fetchStatistics" to "Estadísticas de recuperación de datos",
        "myTischtennis.lastFetch" to "Último obtenido:",
        "myTischtennis.lastLoginAttempt" to "Último intento de inicio de sesión",
        "myTischtennis.lastSuccessfulLogin" to "Último inicio de sesión exitoso",
        "myTischtennis.leagueTables" to "Clasificación de JoomSport",
        "myTischtennis.linkAccount" to "Vincular cuenta",
        "myTischtennis.linkedAccount" to "Cuenta vinculada",
        "myTischtennis.loadingStats" to "Cargando estadísticas",
        "myTischtennis.matchResults" to "Resultados del evento",
        "myTischtennis.neverFetched" to "Nunca recuperado",
        "myTischtennis.no" to "No",
        "myTischtennis.noAccount" to "No hay ninguna cuenta myTischtennis vinculada.",
        "myTischtennis.passwordNote" to "Nota: Guardar la contraseña es opcional. Si no la guarda, se le pedirá la contraseña cada vez que sincronice.",
        "myTischtennis.passwordSaved" to "Contraseña guardada",
        "myTischtennis.passwordsEncrypted" to "Las contraseñas se almacenan cifradas.",
        "myTischtennis.playerRatings" to "Calificaciones de jugadores",
        "myTischtennis.refreshStats" to "Recargar estadísticas",
        "myTischtennis.testLogin" to "Volver a iniciar sesión",
        "myTischtennis.title" to "myTischtennis-Account",
        "myTischtennis.updateHistory" to "Historial de actualizaciones",
        "myTischtennis.yes" to "Sí",
        "myTischtennisAccount.aboutDescription" to "Al vincular su cuenta myTischtennis, podrá:",
        "myTischtennisAccount.aboutFeature1" to "Importar automáticamente datos del torneo",
        "myTischtennisAccount.aboutFeature2" to "Sincronizar resultados del reproductor",
        "myTischtennisAccount.aboutFeature3" to "Recuperar datos de la competencia directamente",
        "myTischtennisAccount.aboutHint" to "Guardar la contraseña es opcional. Si no la guarda, se le pedirá la contraseña cada vez que sincronice.",
        "myTischtennisAccount.aboutMyTischtennis" to "Acerca de myTischtennis",
        "myTischtennisAccount.accountSaved" to "myTischtennis-Cuenta guardada con éxito",
        "myTischtennisAccount.accountUnlinked" to "Cuenta myTischtennis desconectada exitosamente",
        "myTischtennisAccount.autoUpdates" to "Actualizaciones automáticas:",
        "myTischtennisAccount.club" to "Asociación (myTischtennis):",
        "myTischtennisAccount.daysAgo" to "Hace {count} días",
        "myTischtennisAccount.disabled" to "Desenfrenado",
        "myTischtennisAccount.editAccount" to "Editar cuenta",
        "myTischtennisAccount.email" to "Correo electrónico:",
        "myTischtennisAccount.enabled" to "EN",
        "myTischtennisAccount.errorLoadingAccount" to "Error al cargar la cuenta myTischtennis",
        "myTischtennisAccount.errorLoadingStatistics" to "Error al cargar estadísticas de recuperación",
        "myTischtennisAccount.errorUnlinking" to "Error al desconectar la cuenta",
        "myTischtennisAccount.fetchStatistics" to "Estadísticas de recuperación de datos",
        "myTischtennisAccount.hoursAgo" to "Hace {count}h",
        "myTischtennisAccount.justNow" to "En este momento",
        "myTischtennisAccount.lastFetch" to "Último obtenido:",
        "myTischtennisAccount.lastLoginAttempt" to "Último intento de inicio de sesión:",
        "myTischtennisAccount.lastSuccessfulLogin" to "Último inicio de sesión exitoso:",
        "myTischtennisAccount.leagueTables" to "Clasificación de JoomSport",
        "myTischtennisAccount.linkAccount" to "Vincular cuenta",
        "myTischtennisAccount.linkedAccount" to "Cuenta vinculada",
        "myTischtennisAccount.loading" to "Cargando...",
        "myTischtennisAccount.loadingStatistics" to "Cargando estadísticas",
        "myTischtennisAccount.loginAgain" to "Volver a iniciar sesión",
        "myTischtennisAccount.loginFailed" to "error de inicio de sesion",
        "myTischtennisAccount.loginSuccessful" to "¡Inicia sesión exitosamente! Detalles de conexión actualizados.",
        "myTischtennisAccount.matchResults" to "Resultados del evento",
        "myTischtennisAccount.minutesAgo" to "{count} hace minutos",
        "myTischtennisAccount.never" to "Nunca",
        "myTischtennisAccount.neverFetched" to "Nunca recuperado",
        "myTischtennisAccount.no" to "No",
        "myTischtennisAccount.noAccountLinked" to "No hay ninguna cuenta myTischtennis vinculada.",
        "myTischtennisAccount.passwordRequired" to "Se requiere contraseña",
        "myTischtennisAccount.passwordSaved" to "Contraseña guardada",
        "myTischtennisAccount.playerRatings" to "Calificaciones de jugadores",
        "myTischtennisAccount.playersUpdated" to "Jugador actualizado",
        "myTischtennisAccount.refreshStatistics" to "Recargar estadísticas",
        "myTischtennisAccount.results" to "Resultados",
        "myTischtennisAccount.teams" to "Teams",
        "myTischtennisAccount.title" to "Cuenta myTischtennis",
        "myTischtennisAccount.unlinkAccount" to "Desconectar cuenta",
        "myTischtennisAccount.unlinkAccountConfirm" to "¿Está seguro de que desea desvincular la cuenta myTischtennis?",
        "myTischtennisAccount.unlinkAccountTitle" to "Desconectar cuenta",
        "myTischtennisAccount.updateHistory" to "Historial de actualizaciones",
        "myTischtennisAccount.yes" to "Sí",
        "myTischtennisAccount.yesterday" to "ayer",
        "myTischtennisDialog.appPassword" to "La contraseña de tu aplicación para confirmar",
        "myTischtennisDialog.appPasswordHint" to "Por razones de seguridad, necesitamos la contraseña de su aplicación para guardar la contraseña de myTischtennis.",
        "myTischtennisDialog.appPasswordPlaceholder" to "Tu contraseña para esta aplicación",
        "myTischtennisDialog.autoUpdateRatings" to "Habilitar calificaciones de actualización automática",
        "myTischtennisDialog.autoUpdateRatingsHint" to "Las últimas valoraciones de myTischtennis se obtienen automáticamente todos los días a las 6:00 a. m. Requiere contraseña guardada.",
        "myTischtennisDialog.autoUpdateWarning" to "Para actualizaciones automáticas, se debe guardar la contraseña de myTischtennis.",
        "myTischtennisDialog.cancel" to "Cancelar",
        "myTischtennisDialog.editAccount" to "editar mi cuenta de Tischtennis",
        "myTischtennisDialog.email" to "myTischtennis-Email",
        "myTischtennisDialog.emailPlaceholder" to "Su dirección de correo electrónico de myTischtennis",
        "myTischtennisDialog.errorLogin" to "Error de inicio de sesión.",
        "myTischtennisDialog.errorSaving" to "Error al guardar la cuenta",
        "myTischtennisDialog.linkAccount" to "vincular cuenta myTischtennis",
        "myTischtennisDialog.loadingLoginForm" to "Cargando formulario de inicio de sesión...",
        "myTischtennisDialog.loggingIn" to "Acceso...",
        "myTischtennisDialog.login" to "Acceso",
        "myTischtennisDialog.password" to "myTischtennis-Contraseña",
        "myTischtennisDialog.passwordPlaceholder" to "Su contraseña de myTischtennis",
        "myTischtennisDialog.passwordPlaceholderKeep" to "Dejar en blanco para conservar",
        "myTischtennisDialog.save" to "Ahorrar",
        "myTischtennisDialog.savePassword" to "guardar la contraseña de mytabletennis",
        "myTischtennisDialog.savePasswordHint" to "Si está habilitado, su contraseña de myTischtennis se almacenará encriptada para que sean posibles las sincronizaciones automáticas.",
        "myTischtennisDialog.saving" to "Ahorro...",
        "myTischtennisHistory.close" to "Cerca",
        "myTischtennisHistory.failed" to "Eso no funcionó.",
        "myTischtennisHistory.loading" to "Cargando historial...",
        "myTischtennisHistory.noHistory" to "Aún no se han realizado actualizaciones automáticas.",
        "myTischtennisHistory.ratingsUpdated" to "Calificaciones actualizadas",
        "myTischtennisHistory.successful" to "Exitoso",
        "myTischtennisHistory.title" to "Actualizar historial de calificaciones",
        "navigation.approvals" to "Aprobaciones",
        "navigation.backToHome" to "Volver al inicio",
        "navigation.billing" to "Facturación",
        "navigation.clickTtAccount" to "Cuenta HTTV / click-TT",
        "navigation.clickTtBrowser" to "HTTV / click-TT",
        "navigation.clubSettings" to "Configuración del club",
        "navigation.clubTournaments" to "Torneos del club",
        "navigation.competitions" to "Competiciones",
        "navigation.dailyBusiness" to "Gestión diaria",
        "navigation.diary" to "Diario",
        "navigation.home" to "Inicio",
        "navigation.login" to "Iniciar sesión",
        "navigation.logout" to "Cerrar sesión",
        "navigation.logs" to "Registros del sistema",
        "navigation.members" to "Miembros",
        "navigation.memberTransfer" to "Transferencia de miembros",
        "navigation.myTischtennisAccount" to "Cuenta myTischtennis",
        "navigation.orders" to "Pedidos",
        "navigation.permissions" to "Permisos",
        "navigation.personalSettings" to "Configuración personal",
        "navigation.predefinedActivities" to "Actividades predefinidas",
        "navigation.register" to "Registrarse",
        "navigation.schedule" to "Calendarios",
        "navigation.settings" to "Configuración",
        "navigation.statistics" to "Estadísticas de entrenamiento",
        "navigation.teamManagement" to "Gestión de equipos",
        "navigation.tournamentParticipations" to "Participaciones en torneos",
        "navigation.tournaments" to "Torneos",
        "nuscoreAnalyzer.analysisComplete" to "✅ Análisis completado: {count} recursos encontrados",
        "nuscoreAnalyzer.analyze" to "🔍 análisis nuscore",
        "nuscoreAnalyzer.analyzing" to "Analizando...",
        "nuscoreAnalyzer.createLocalCopy" to "Crear 🏗️ copia local",
        "nuscoreAnalyzer.creating" to "🏗️ Creando...",
        "nuscoreAnalyzer.description" to "Analiza y descarga recursos de nuscore para uso local.",
        "nuscoreAnalyzer.downloading" to "⬇️ Descargando...",
        "nuscoreAnalyzer.downloadResources" to "Descargar recursos",
        "nuscoreAnalyzer.foundResources" to "📋 Recursos encontrados:",
        "nuscoreAnalyzer.log" to "Registro",
        "nuscoreAnalyzer.pageLoaded" to "✅ página nuscore cargada",
        "nuscoreAnalyzer.startAnalysis" to "🔍Iniciando análisis de nuscore...",
        "nuscoreAnalyzer.title" to "🔍 nuscore Analyzer",
        "officialTournaments.action" to "Acción",
        "officialTournaments.age" to "Edad",
        "officialTournaments.ageClassCompetition" to "Grupo de edad/Competición",
        "officialTournaments.ageClasses" to "Clases de edad",
        "officialTournaments.all" to "Todo",
        "officialTournaments.birthDate" to "Fecha de nacimiento",
        "officialTournaments.checkBoxToActivate" to "Habilitar casilla de verificación",
        "officialTournaments.competition" to "Competidor",
        "officialTournaments.competitions" to "Competiciones",
        "officialTournaments.competitionTypes" to "Tipos de competencia:",
        "officialTournaments.cutoffDate" to "Fecha de vigencia:",
        "officialTournaments.date" to "Fecha",
        "officialTournaments.dateTime" to "Fecha:",
        "officialTournaments.deadlineDate" to "Fecha límite de inscripción (fecha):",
        "officialTournaments.deadlineOnline" to "Fecha límite de inscripción (en línea):",
        "officialTournaments.deadlines" to "Plazos de inscripción:",
        "officialTournaments.deadlinesByAgeClass" to "Plazos de inscripción para cada AK:",
        "officialTournaments.delete" to "Borrar",
        "officialTournaments.editTitle" to "Editar título",
        "officialTournaments.eligible" to "Elegible para participar",
        "officialTournaments.entryFee" to "efectivo inicial",
        "officialTournaments.entryFees" to "Tarifas de asistencia:",
        "officialTournaments.events" to "Acontecimientos",
        "officialTournaments.finalRound" to "Competición final",
        "officialTournaments.hasPlayed" to "{0} jugó su turno.",
        "officialTournaments.last12Months" to "últimos 12 meses",
        "officialTournaments.last2Years" to "Últimos 2 años",
        "officialTournaments.last3Months" to "últimos 3 meses",
        "officialTournaments.last6Months" to "últimos 6 meses",
        "officialTournaments.markAsParticipated" to "Marcar como atendido",
        "officialTournaments.markAsRegistered" to "Marcar como conectado",
        "officialTournaments.member" to "Miembro",
        "officialTournaments.name" to "nombre",
        "officialTournaments.noEvents" to "Aún no hay eventos disponibles. Cargue un PDF para comenzar.",
        "officialTournaments.notInterested" to "No interesado",
        "officialTournaments.openTo" to "Abierto a",
        "officialTournaments.participants" to "Participantes",
        "officialTournaments.participantsPdf" to "PDF del participante",
        "officialTournaments.participated" to "Participó",
        "officialTournaments.participations" to "Participaciones en torneos",
        "officialTournaments.pdfForSelectedMembers" to "PDF para miembros marcados",
        "officialTournaments.placement" to "Colocación",
        "officialTournaments.preliminaryRound" to "1ra Etapa:",
        "officialTournaments.previousSeason" to "Temporada anterior",
        "officialTournaments.registered" to "Iniciado sesión",
        "officialTournaments.resetStatus" to "Restablecer estado",
        "officialTournaments.results" to "Resultados",
        "officialTournaments.savedEvents" to "Eventos guardados",
        "officialTournaments.selectMembers" to "Seleccionar miembros",
        "officialTournaments.showCompetitions" to "Ver competiciones",
        "officialTournaments.showEvents" to "Ver eventos guardados",
        "officialTournaments.showParticipants" to "Ver participante",
        "officialTournaments.showParticipations" to "Ver acciones del torneo",
        "officialTournaments.showResults" to "Ver resultados",
        "officialTournaments.startTime" to "hora de inicio",
        "officialTournaments.startTimes" to "Horas de inicio:",
        "officialTournaments.status" to "estado",
        "officialTournaments.timeRange" to "Período:",
        "officialTournaments.title" to "Título:",
        "officialTournaments.tournament" to "Torneo",
        "officialTournaments.updatePlacementError" to "Error al actualizar la ubicación",
        "officialTournaments.updateStatusError" to "No se pudo actualizar el estado",
        "officialTournaments.updateTitleError" to "Esto no se pudo salvar.",
        "officialTournaments.uploadError" to "Error al cargar el PDF.",
        "officialTournaments.uploadPdf" to "Subir PDF",
        "officialTournaments.venues" to "Lugares",
        "officialTournaments.wantsToParticipate" to "Quieres unirte",
        "orders.addOrder" to "Crear pedido",
        "orders.budget" to "presupuesto",
        "orders.club" to "Club",
        "orders.cost" to "Coste",
        "orders.dateAutoHint" to "La fecha se establece automáticamente y cada cambio se registra con fecha.",
        "orders.errorLoading" to "No se pudieron cargar los pedidos.",
        "orders.errorSaving" to "No se pudo guardar el pedido.",
        "orders.filterAllClubs" to "Todos los clubes",
        "orders.filterAllCompletionStates" to "Todos los grados",
        "orders.filterAllStatuses" to "Todos los estados",
        "orders.filterHandedOver" to "Artículo entregado",
        "orders.filterPaid" to "Pagado",
        "orders.globalSubtitle" to "Aquí se pueden ver y gestionar los pedidos de todos los clubes.",
        "orders.globalTitle" to "Pedidos de todos los clubes",
        "orders.history" to "Historial",
        "orders.item" to "Artículo",
        "orders.itemPlaceholder" to "p. ej. camiseta, sudadera o funda de pala",
        "orders.loading" to "Cargando pedidos...",
        "orders.member" to "Miembro",
        "orders.memberTitle" to "Pedidos: {name}",
        "orders.noOrdersGlobal" to "Actualmente no hay pedidos.",
        "orders.noOrdersMember" to "Todavía no hay pedidos para este miembro.",
        "orders.open" to "Pendiente",
        "orders.orderDate" to "Creado el",
        "orders.paid" to "Pagado",
        "orders.paidConfirmed" to "Pagado",
        "orders.searchPlaceholder" to "Buscar por club, miembro o artículo",
        "orders.showCompleted" to "Mostrar los completados",
        "orders.status" to "Estado",
        "orders.statusArrived" to "artículo recibido",
        "orders.statusDate" to "Último cambio",
        "orders.statusHandedOver" to "artículo entregado",
        "orders.statusOrdered" to "pedido",
        "orders.statusRequested" to "deseado",
        "orders.title" to "Pedidos",
        "pdfGenerator.activityTimeBlock" to "Actividad/Bloque de tiempo",
        "pdfGenerator.allGames" to "Todas las ciudades",
        "pdfGenerator.alsoPlayable" to "También jugable",
        "pdfGenerator.birthDate" to "Fecha de nacimiento",
        "pdfGenerator.clubLabel" to "Club:",
        "pdfGenerator.competition" to "Evento",
        "pdfGenerator.competitionName" to "Competidor",
        "pdfGenerator.date" to "Fecha:",
        "pdfGenerator.diff" to "Diff",
        "pdfGenerator.duration" to "Minutos para el bloqueo",
        "pdfGenerator.fee" to "Tarifa",
        "pdfGenerator.generatedAt" to "Generado:",
        "pdfGenerator.group" to "Grupo",
        "pdfGenerator.groupLabel" to "Grupo",
        "pdfGenerator.groupMatrices" to "Matrices de grupo",
        "pdfGenerator.hallShoes" to "Zapatos de interior (no deben frotarse con el suelo)",
        "pdfGenerator.hints" to "Notas:",
        "pdfGenerator.informTrainer" to "Dado que el club quiere hacerse cargo de la inscripción, informe a los entrenadores sobre la participación al menos una semana antes del torneo.",
        "pdfGenerator.leagueLabel" to "Liga:",
        "pdfGenerator.lineupQttr" to "(Q)TTR",
        "pdfGenerator.member" to "Miembros:",
        "pdfGenerator.nameFirstName" to "Apellido, nombre",
        "pdfGenerator.noActivities" to "No se registraron actividades para este día de entrenamiento.",
        "pdfGenerator.noWhiteJersey" to "Sin camiseta blanca",
        "pdfGenerator.officialTournament" to "Torneo Oficial",
        "pdfGenerator.oneHourBefore" to "Estar en el salón una hora antes del inicio de la competición.",
        "pdfGenerator.overallRanking" to "Clasificación general (rondas eliminatorias)",
        "pdfGenerator.periodLabel" to "Inscripción para:",
        "pdfGenerator.phoneList" to "Lista de teléfonos: miembros activos",
        "pdfGenerator.phoneNumber" to "Número de teléfono.",
        "pdfGenerator.place" to "la plaza",
        "pdfGenerator.placement" to "Colocación",
        "pdfGenerator.plannedLeagueLabel" to "Liga prevista:",
        "pdfGenerator.player" to "patinadores",
        "pdfGenerator.player1" to "Jugador 1",
        "pdfGenerator.player2" to "4 1/2 minutos",
        "pdfGenerator.points" to "Agujas",
        "pdfGenerator.recommendations" to "Recomendaciones",
        "pdfGenerator.result" to "Resultado",
        "pdfGenerator.round" to "Redondo",
        "pdfGenerator.seasonLabel" to "Temporada:",
        "pdfGenerator.sets" to "frases",
        "pdfGenerator.sportShorts" to "Pantalones cortos deportivos (o faldas deportivas), preferiblemente que tampoco sean blancos.",
        "pdfGenerator.startTime" to "hora de inicio",
        "pdfGenerator.status" to "estado",
        "pdfGenerator.teamAgeGroupLabel" to "Categoría de edad del equipo:",
        "pdfGenerator.teamGenderLabel" to "Género del equipo:",
        "pdfGenerator.teamLineupTitle" to "Alineación del equipo",
        "pdfGenerator.teamNameLabel" to "Equipo:",
        "pdfGenerator.time" to "Tiempo:",
        "pdfGenerator.timeBlock" to "bloque de tiempo",
        "pdfGenerator.tournament" to "Torneo",
        "pdfGenerator.trainersPresent" to "Los entrenadores intentan estar presentes en todos los torneos.",
        "pdfGenerator.trainingPlan" to "plan de entrenamiento",
        "pdfGenerator.venue" to "Ubicación",
        "pdfGenerator.venues" to "Lugares",
        "pdfGenerator.waterBottle" to "Lleva contigo una botella de agua.",
        "pendingApprovals.actions" to "Comportamiento",
        "pendingApprovals.approve" to "Aprobar",
        "pendingApprovals.email" to "Email",
        "pendingApprovals.errorApproving" to "Error al aprobar usuario",
        "pendingApprovals.errorLoadingRequests" to "No se pudieron cargar los pendientes para %<%E%s%E%>",
        "pendingApprovals.errorRejecting" to "Error al rechazar usuario",
        "pendingApprovals.firstName" to "Nombre de pila",
        "pendingApprovals.lastName" to "Apellido",
        "pendingApprovals.noPendingRequests" to "No hay solicitudes de usuarios pendientes.",
        "pendingApprovals.noPermission" to "Sin permiso",
        "pendingApprovals.noPermissionDetails" to "Solo los administradores pueden editar las solicitudes de los miembros.",
        "pendingApprovals.noPermissionMessage" to "No tienes permiso para gestionar acciones.",
        "pendingApprovals.reject" to "Despedir",
        "pendingApprovals.title" to "Solicitudes de usuario pendientes",
        "permissions.actions" to "Comportamiento",
        "permissions.active" to "Activo",
        "permissions.availableRoles" to "Roles disponibles",
        "permissions.baseRole" to "Rol básico",
        "permissions.cancel" to "Cancelar",
        "permissions.clickToActivate" to "Haga clic para activar.",
        "permissions.clickToDeactivate" to "Haga clic para desactivar",
        "permissions.clubMembers" to "Miembros del club",
        "permissions.creator" to "Creador",
        "permissions.customize" to "Personalizar",
        "permissions.customizeInfo" to "Aquí puede realizar ajustes individuales.",
        "permissions.email" to "Email",
        "permissions.errorLoadingData" to "Error al cargar datos",
        "permissions.errorSavingPermissions" to "Error al guardar permisos",
        "permissions.errorUpdatingRole" to "No se pudo actualizar el rol",
        "permissions.inactive" to "Desenfrenado",
        "permissions.loadingMembers" to "Invitando miembros...",
        "permissions.permissionsFor" to "Permisos para",
        "permissions.reset" to "Revertir",
        "permissions.resetAll" to "Restablecer todo",
        "permissions.role" to "Role",
        "permissions.save" to "Ahorrar",
        "permissions.status" to "estado",
        "permissions.subtitle" to "Gestionar los derechos de acceso de los miembros del club.",
        "permissions.title" to "Gestión de credenciales",
        "predefinedActivities.addImage" to "Agregar imagen",
        "predefinedActivities.cancel" to "Cancelar",
        "predefinedActivities.code" to "Abreviatura",
        "predefinedActivities.createDrawing" to "Crear dibujo de ejercicio",
        "predefinedActivities.deduplicate" to "Fusionar duplicados",
        "predefinedActivities.delete" to "Borrar",
        "predefinedActivities.description" to "Descripción",
        "predefinedActivities.duration" to "Duración minutos",
        "predefinedActivities.durationText" to "Duración (Texto)",
        "predefinedActivities.durationTextPlaceholder" to "p.ej. 2x7",
        "predefinedActivities.editActivity" to "Editar actividad",
        "predefinedActivities.editDrawing" to "Editar dibujo de ejercicio",
        "predefinedActivities.excludeFromStats" to "Excluir de las estadísticas",
        "predefinedActivities.filterAll" to "Todo",
        "predefinedActivities.filterCustom" to "Costumbre",
        "predefinedActivities.filterStandard" to "Actividades estándar",
        "predefinedActivities.imageHelp" to "Puede ingresar un enlace a una imagen o cargar una imagen:",
        "predefinedActivities.imageLink" to "Enlace de imagen (opcional)",
        "predefinedActivities.imageLinkPlaceholder" to "p.ej. https://example.com/bild.jpg o /api/predefinidas-actividades/:id/image/:imageId",
        "predefinedActivities.merge" to "Unir",
        "predefinedActivities.min" to "min",
        "predefinedActivities.name" to "nombre",
        "predefinedActivities.new" to "Nuevo",
        "predefinedActivities.newActivity" to "Nueva actividad",
        "predefinedActivities.orUploadImage" to "O subir imagen:",
        "predefinedActivities.reload" to "Recargar",
        "predefinedActivities.searchPlaceholder" to "Abreviaturas de búsqueda (por ejemplo, 'as vh us' o 'vh as us')...",
        "predefinedActivities.selectSource" to "Elige la fuente",
        "predefinedActivities.selectTarget" to "Seleccionar destino",
        "predefinedActivities.title" to "Actividades predefinidas",
        "predefinedActivities.upload" to "Subir",
        "predefinedActivities.uploadAfterSave" to "Subir después de guardar",
        "predefinedActivities.uploadedImages" to "Vídeo(s) subido(s):",
        "predefinedActivities.uploadNote" to "Nota: La imagen no se cargará hasta que se guarde la actividad.",
        "privacy.clubData" to "Datos del club/actividad",
        "privacy.consent" to "Operaciones basadas en el consentimiento",
        "privacy.cookies" to "Cookies/Almacenamiento local",
        "privacy.dataCategories" to "Categorías de datos personales",
        "privacy.logData" to "Archivos de registro",
        "privacy.memberData" to "Detalles del miembro",
        "privacy.myTischtennisData" to "Datos de MyTischtennis",
        "privacy.purposes" to "Finalidades y bases jurídicas del tratamiento",
        "privacy.recipients" to "Beneficiario",
        "privacy.registrationData" to "Datos de registro/perfil",
        "privacy.responsible" to "Controlador de datos",
        "privacy.title" to "Política de privacidad",
        "privacy.tournamentData" to "Datos del torneo",
        "privacy.trainingData" to "Datos de entrenamiento",
        "privacy.usage" to "Uso del diario de entrenamiento",
        "privacy.usageData" to "Datos de uso",
        "privacy.website" to "Preparación del sitio web",
        "quickAddMember.birthDate" to "Fecha de nacimiento (opcional)",
        "quickAddMember.cancel" to "Cancelar",
        "quickAddMember.createAndAdd" to "Crear y agregar nuevo",
        "quickAddMember.firstName" to "Nombre de pila",
        "quickAddMember.gender" to "Sexo",
        "quickAddMember.lastName" to "Apellido (opcional)",
        "quickAddMember.pleaseSelect" to "Por favor seleccione",
        "quickAddMember.title" to "Agregar nuevo miembro",
        "schedule.activeSelection" to "Selección activa",
        "schedule.addressLabel" to "DIRECCIÓN",
        "schedule.adultSchedule" to "Horario adulto",
        "schedule.ageClass" to "grupo de edad",
        "schedule.allLeagueMatches" to "Todos los partidos",
        "schedule.balls" to "Bolas",
        "schedule.cancel" to "Cancelar",
        "schedule.cityLabel" to "Código postal/ciudad",
        "schedule.code" to "Code",
        "schedule.completedShort" to "Terminado",
        "schedule.copyCode" to "Copiar código",
        "schedule.copyGuestPin" to "Copiar PIN",
        "schedule.copyHomePin" to "Copiar PIN de casa",
        "schedule.date" to "Fecha",
        "schedule.downloadPDF" to "Descargar PDF",
        "schedule.errorCopying" to "Error al copiar",
        "schedule.errorImportingCSV" to "No se pudo importar el archivo CSV",
        "schedule.errorLoadingAdultSchedule" to "No se pudo cargar el horario de adultos",
        "schedule.errorLoadingGallery" to "No se pudo cargar la galería.",
        "schedule.errorLoadingMatches" to "No se pudieron cargar las coincidencias",
        "schedule.errorLoadingMembers" to "No se pudo cargar la lista de miembros.",
        "schedule.errorLoadingOverallSchedule" to "No se pudo cargar el cronograma general",
        "schedule.errorLoadingTable" to "No se pudieron cargar los datos de la tabla de clasificación de myTischtennis",
        "schedule.errorLoadingTeams" to "No se pudieron cargar los equipos",
        "schedule.errorSavingPlayerSelection" to "No se pudo guardar la selección del jugador.",
        "schedule.fetchDataFailed" to "No se pudieron recuperar los datos del equipo.",
        "schedule.fetchingTeamData" to "Atractivo…",
        "schedule.fetchStartFailed" to "No se pudo iniciar la búsqueda.",
        "schedule.fetchTeamData" to "Obtener calendario y resultados",
        "schedule.fetchTimedOut" to "Se agotó el tiempo de espera al recuperar datos.",
        "schedule.gallery" to "Galería de miembros",
        "schedule.galleryLoading" to "Cargando galería…",
        "schedule.galleryTitle" to "Galería de miembros: haga clic en una imagen para marcarla como lista",
        "schedule.gamesFor" to "Partidos para",
        "schedule.guestPin" to "PIN Ausente",
        "schedule.guestTeam" to "Equipo de fuera",
        "schedule.homePin" to "PIN de inicio",
        "schedule.homeTeam" to "Equipo local",
        "schedule.imageSize" to "Tamaño de imagen",
        "schedule.importSchedule" to "Calendario de importación",
        "schedule.leagueTable" to "tabla de liga",
        "schedule.loadingMembers" to "Cargando miembros...",
        "schedule.locationDialogTitle" to "sala de juegos",
        "schedule.locationInfo" to "Ubicación",
        "schedule.locationName" to "sala de juegos",
        "schedule.matches" to "partidos",
        "schedule.matchLabel" to "Juego",
        "schedule.matchOverviewDescription" to "Controla qué partidos de la liga seleccionada actualmente se muestran en el calendario.",
        "schedule.matchOverviewTitle" to "Resumen del partido",
        "schedule.nextMatch" to "Próximo partido",
        "schedule.noActiveMembers" to "No se encontraron miembros activos",
        "schedule.noGames" to "No hay coincidencias disponibles",
        "schedule.noLeagueForTeam" to "No hay ninguna liga asignada a este equipo. Primero asigne una liga.",
        "schedule.noMatchesForPDF" to "No se encontraron coincidencias para generar un PDF.",
        "schedule.noMatchingTeams" to "Ningún equipo coincide con la búsqueda actual.",
        "schedule.noMembersWithImages" to "No se encontraron miembros con imágenes.",
        "schedule.noSelectionMessage" to "Elige el horario general, el horario de adultos o un equipo de la izquierda.",
        "schedule.noSelectionTitle" to "Aún no hay selección activa",
        "schedule.noTableData" to "No hay datos de tabla disponibles",
        "schedule.noTeamsFound" to "No se encontraron equipos para esta temporada.",
        "schedule.openMatchReport" to "Abrir informe del partido",
        "schedule.otherTeamMatches" to "Otro equipo",
        "schedule.overallSchedule" to "Calendario general",
        "schedule.ownTeamMatches" to "Equipo propio",
        "schedule.pendingShort" to "Abierto",
        "schedule.planned" to "Planificado",
        "schedule.played" to "Jugó",
        "schedule.player" to "Jugador",
        "schedule.playerSelection" to "Selección de jugadores",
        "schedule.playerSelectionSaved" to "Selección de jugador guardada",
        "schedule.pleaseSelectGame" to "Por favor seleccione una coincidencia primero",
        "schedule.points" to "puntos",
        "schedule.position" to "Posición",
        "schedule.ready" to "Listo",
        "schedule.refreshTable" to "Actualizar tabla",
        "schedule.result" to "Resultado",
        "schedule.save" to "Ahorrar",
        "schedule.scheduleImportSuccess" to "Horario importado exitosamente.",
        "schedule.schedulePDF" to "Horarios.pdf",
        "schedule.scheduleTab" to "Cronograma",
        "schedule.searchTeams" to "Buscar equipo o liga",
        "schedule.selection" to "Selección",
        "schedule.selectOtherTeam" to "Selecciona otro equipo",
        "schedule.selectSpecificLeague" to "Seleccione una liga específica para cargar la tabla.",
        "schedule.sets" to "Conjuntos",
        "schedule.showLocation" to "Ver lugar del juego",
        "schedule.subtitle" to "Seleccione equipos, revise los partidos y mantenga a la vista las tablas de clasificación.",
        "schedule.tableDataLoaded" to "Los datos de la tabla de liga se cargaron correctamente desde myTischtennis.",
        "schedule.tableLoading" to "Cargando tabla…",
        "schedule.tableTab" to "Mesa",
        "schedule.team" to "Team",
        "schedule.teamDataFetched" to "Los datos del equipo se actualizaron correctamente.",
        "schedule.teamDataFetchedDetails" to "Equipo: {team}\nRegistros procesados: {count}",
        "schedule.teams" to "Teams",
        "schedule.time" to "Tiempo",
        "schedule.title" to "Horarios",
        "schedule.vs" to "vs",
        "schedule.workspaceScheduleDescription" to "{matches} coincide, {completed} completado y {pending} abierto.",
        "schedule.workspaceTableDescription" to "{count} filas de la tabla actualmente cargadas.",
        "seasonSelector.addSeason" to "Agregar nueva temporada",
        "seasonSelector.alreadyExists" to "¡Esta temporada ya existe!",
        "seasonSelector.cancel" to "Cancelar",
        "seasonSelector.create" to "Crear",
        "seasonSelector.errorCreating" to "Error al crear la temporada",
        "seasonSelector.errorLoading" to "Error al cargar temporadas",
        "seasonSelector.hint" to "Aviso",
        "seasonSelector.label" to "Estación:",
        "seasonSelector.loading" to "Cargando...",
        "seasonSelector.newSeason" to "Crear nueva temporada",
        "seasonSelector.placeholder" to "p.ej. 2023/2024",
        "seasonSelector.selectSeason" to "Seleccionar temporada(s)",
        "settings.language" to "Idioma",
        "settings.languageChanged" to "Idioma cambiado correctamente",
        "settings.languageDescription" to "Elige tu idioma preferido para la aplicación",
        "settings.personalSettings" to "Configuración personal",
        "settings.selectLanguage" to "Seleccionar idioma",
        "settings.title" to "Configuración",
        "tagHistory.noHistory" to "No hay historial de etiquetas disponible",
        "tagHistory.selectTags" to "Seleccionar etiquetas",
        "tagHistory.title" to "Etiqueta: Teclado tipográfico",
        "teamManagement.activeTeam" to "Equipo activo",
        "teamManagement.addPlanningTeam" to "Agregar equipo de planificación",
        "teamManagement.allMembersAssigned" to "Todos los miembros están actualmente asignados.",
        "teamManagement.assignLeagueBeforeDocuments" to "Primero asigne una liga al equipo para que se puedan procesar los documentos.",
        "teamManagement.assignLeagueBeforeParsing" to "Primero asigne una liga al equipo para analizar los archivos PDF.",
        "teamManagement.assignMemberToTeam" to "Agregar al equipo",
        "teamManagement.association" to "Asociación",
        "teamManagement.asyncJobStartFailed" to "No se pudo iniciar el trabajo asíncrono.",
        "teamManagement.autoFetchEnabled" to "La recuperación automática de datos está habilitada.",
        "teamManagement.automaticJobs" to "Trabajos automáticos",
        "teamManagement.autoSaved" to "Autoguardado",
        "teamManagement.autoSaveError" to "Error al guardar automáticamente",
        "teamManagement.availableLineupMembers" to "Jugadores disponibles",
        "teamManagement.basicSettings" to "Configuraciones básicas",
        "teamManagement.basicSettingsIntro" to "Revise y ajuste el nombre del equipo y la liga de una forma más tranquila.",
        "teamManagement.change" to "Cambiar",
        "teamManagement.clearFields" to "Borrar campos",
        "teamManagement.codeList" to "Lista de códigos",
        "teamManagement.configurationStatus" to "Estado de configuración",
        "teamManagement.configureLeagueDetails" to "Asociación: {association}\nTemporada: {season}\nLiga: {league}\nID de grupo: {groupId}\n\n¿Quieres configurar esta liga en la base de datos? Esto permite la recuperación automática de datos de la tabla.",
        "teamManagement.configureLeagueTitle" to "¿Configurar liga?",
        "teamManagement.createAndEdit" to "Crear y editar",
        "teamManagement.created" to "Creado",
        "teamManagement.createNewTeam" to "Crear nuevo equipo",
        "teamManagement.dataFetchFailed" to "No se pudieron recuperar los datos.",
        "teamManagement.delete" to "Borrar",
        "teamManagement.deleteTeamConfirm" to "¿Realmente deseas eliminar el equipo del club \"{name}\"?",
        "teamManagement.deleteTeamTitle" to "Eliminar equipo del club",
        "teamManagement.documentAvailable" to "Disponible",
        "teamManagement.documentMissing" to "Desaparecido",
        "teamManagement.documentNotFound" to "No se pudo encontrar el documento seleccionado.",
        "teamManagement.documentParsedSummary" to "{label} cargado y analizado correctamente.\n\nCoincidencias encontradas: {matchesFound}\nNuevas coincidencias creadas: {created}\nPartidos actualizados: {updated}",
        "teamManagement.documents" to "Documentos",
        "teamManagement.documentsIntro" to "Cargue, revise y vuelva a analizar listas de códigos y listas de PIN cuando sea necesario.",
        "teamManagement.documentUploaded" to "{label} \"{fileName}\" se cargó correctamente.",
        "teamManagement.edit" to "Editar",
        "teamManagement.editTeam" to "Editar equipo",
        "teamManagement.eligibility" to "Elegibilidad",
        "teamManagement.eligibilityAdultRelease" to "Autorizado para adultos",
        "teamManagement.eligibilityAdultReleaseAndReserve" to "Autorizado + reserva en adultos",
        "teamManagement.eligibilityAdultReserve" to "Reserva en adultos",
        "teamManagement.eligibilityRegular" to "Regular",
        "teamManagement.enterUrlForAutoConfig" to "Ingrese una URL myTischtennis para la configuración automática",
        "teamManagement.error" to "Error",
        "teamManagement.errorConfiguringLeague" to "No se pudo configurar la liga.",
        "teamManagement.errorConfiguringTeam" to "No se pudo configurar el equipo.",
        "teamManagement.errorDeletingTeam" to "No se pudo eliminar el equipo del club.",
        "teamManagement.errorLoadingPdf" to "No se pudo cargar el PDF.",
        "teamManagement.errorLoadingStats" to "No se pudieron cargar las estadísticas.",
        "teamManagement.errorParsingPdf" to "No se pudo analizar el archivo PDF",
        "teamManagement.errorParsingUrl" to "No se pudo analizar la URL. Por favor revisa el formato.",
        "teamManagement.errorsCount" to "Errores: {count}",
        "teamManagement.errorUploadingDocument" to "No se pudo cargar ni analizar el archivo.",
        "teamManagement.exportLineupPdf" to "Exportar alineación como PDF",
        "teamManagement.fetched" to "traído",
        "teamManagement.fetchTimedOut" to "Se agotó el tiempo de espera al recuperar datos (el trabajo asíncrono tardó demasiado).",
        "teamManagement.fetchTimeoutShort" to "Se agotó el tiempo de espera al recuperar datos.",
        "teamManagement.fileTooLarge" to "{label} no debe exceder los 10 MB.",
        "teamManagement.fileTooLargeTitle" to "Archivo demasiado grande",
        "teamManagement.filterAll" to "Todo",
        "teamManagement.filterConfigured" to "Configurado",
        "teamManagement.filterNeedsAttention" to "Necesita revisión",
        "teamManagement.filterNoLeague" to "Sin liga",
        "teamManagement.firstHalf" to "Primera vuelta",
        "teamManagement.firstHalfFull" to "Primera vuelta (julio - diciembre)",
        "teamManagement.fullyConfigured" to "Totalmente configurado",
        "teamManagement.groupId" to "ID de grupo",
        "teamManagement.groupName" to "Nombre del grupo",
        "teamManagement.invalidFileExtension" to "{label} debe tener una de las siguientes extensiones: {extensions}.",
        "teamManagement.invalidFileTypeTitle" to "Tipo de archivo no válido",
        "teamManagement.invalidMimeType" to "{label} tiene un tipo MIME inesperado: {type}.",
        "teamManagement.lastRun" to "última ejecución",
        "teamManagement.lastUpdated" to "Última actualización",
        "teamManagement.latestUpload" to "Última subida: {date}",
        "teamManagement.league" to "Liga",
        "teamManagement.leagueConfiguredDetails" to "Liga: {league}\nTemporada: {season}\nAsociación: {association}\nID de grupo: {groupId}\n\nLos datos de la tabla ahora se pueden recuperar automáticamente.",
        "teamManagement.leagueConfiguredSuccess" to "Liga configurada exitosamente. Los datos de la tabla ahora se pueden recuperar automáticamente.",
        "teamManagement.leagueFieldRequired" to "Seleccione una liga y guarde.",
        "teamManagement.lineupEmpty" to "Todavía no se ha inscrito ningún jugador para este equipo.",
        "teamManagement.lineupPdfEmpty" to "No hay jugadores en la alineación – no se puede crear el PDF.",
        "teamManagement.lineupPdfFilePrefix" to "Alineacion",
        "teamManagement.lineupProposal" to "Alineación por QTTR",
        "teamManagement.lineupSaved" to "Se guardó la alineación del equipo.",
        "teamManagement.lineupSaveError" to "No se pudo guardar la alineación del equipo.",
        "teamManagement.lineupUnsavedChanges" to "Hay cambios no guardados en la alineación del equipo.",
        "teamManagement.lineupValidationTooLargeGap" to "{higher} tiene más de 30 puntos QTTR de ventaja sobre {lower}. Corrige este orden.",
        "teamManagement.loadingStats" to "Cargando estadísticas...",
        "teamManagement.manualFetch" to "Buscar",
        "teamManagement.markAsInterested" to "Marcar como interesado",
        "teamManagement.matchesSummary" to "Coincidencias encontradas: {matchesFound}\nNuevas coincidencias creadas: {created}\nPartidos actualizados: {updated}",
        "teamManagement.matchResults" to "Resultados del partido",
        "teamManagement.missingConfigSummary" to "Información faltante:",
        "teamManagement.missingItems" to "Desaparecido: {items}",
        "teamManagement.missingLeagueForTeam" to "No se proporcionó ninguna liga para el equipo seleccionado.",
        "teamManagement.moreErrors" to "... y {count} más",
        "teamManagement.myTischtennis" to "miTischtennis",
        "teamManagement.myTischtennisIntro" to "Pegue una URL, revise la configuración y obtenga datos manualmente cuando sea necesario.",
        "teamManagement.mytischtennisLoginRequired" to "Es necesario iniciar sesión en myTischtennis",
        "teamManagement.myTischtennisUrlPlaceholder" to "URL de miTischtennis...",
        "teamManagement.myTischtennisUrlRequired" to "Pegue y analice la URL de MyTischtennis para vincular el ID del equipo y los datos de la liga.",
        "teamManagement.never" to "Nunca",
        "teamManagement.newTeam" to "Nuevo equipo",
        "teamManagement.noAssignment" to "Sin asignación",
        "teamManagement.noAutomaticUpdate" to "Aún no hay actualización automática",
        "teamManagement.noDocumentUploadYet" to "Aún no se ha subido ningún documento.",
        "teamManagement.noIssues" to "No hay problemas de configuración abiertos.",
        "teamManagement.noLeague" to "Sin liga",
        "teamManagement.noMatchesFoundDetails" to "Nota: No se detectaron coincidencias.\nLíneas en el documento: {lines}",
        "teamManagement.noMatchesFoundTitle" to "No se encontraron coincidencias",
        "teamManagement.noMatchingTeams" to "Ningún equipo coincide con la búsqueda o filtro actual.",
        "teamManagement.noMembersInPool" to "No se encontraron miembros coincidentes.",
        "teamManagement.noPlannedLeague" to "No hay liga programada",
        "teamManagement.noPlayerStats" to "No se registraron apariciones.",
        "teamManagement.notConfigured" to "No configurado",
        "teamManagement.notCreated" to "No creado",
        "teamManagement.noTeamsYet" to "Aún no hay equipos. Crea tu primer equipo.",
        "teamManagement.openDocument" to "Abierto",
        "teamManagement.openInWorkspace" to "Abrir para editar",
        "teamManagement.parseDocument" to "Analizar de nuevo",
        "teamManagement.parseUrlAction" to "Comprobar URL",
        "teamManagement.partiallyConfigured" to "Parcialmente configurado",
        "teamManagement.pdfFileNotFound" to "No se pudo encontrar el archivo PDF.",
        "teamManagement.pinList" to "lista de PIN",
        "teamManagement.plannedLeague" to "Liga prevista",
        "teamManagement.plannedLeagueHint" to "Opcional. Independiente de la liga registrada (MyTischtennis).",
        "teamManagement.plannedLeaguePlaceholder" to "p. ej. liga regional, tras la próxima inscripción …",
        "teamManagement.planningSubtitle" to "Distribuya miembros a equipos programados, establezca el orden y vea las tareas abiertas.",
        "teamManagement.planningTitle" to "Planificación del equipo",
        "teamManagement.player" to "Jugador",
        "teamManagement.playersPoolSubtitle" to "Todos los miembros activos interesados ​​en el juego.",
        "teamManagement.playerStats" to "Apariciones",
        "teamManagement.playerStatsIntro" to "Resumen rápido de las apariciones de este equipo en la temporada actual.",
        "teamManagement.playersWantToPlay" to "Queremos jugar.",
        "teamManagement.qttr" to "Clasificación (Q)TTR",
        "teamManagement.ratingUpdates" to "Actualizaciones de calificación",
        "teamManagement.refreshStats" to "Refrescar",
        "teamManagement.reuploadFile" to "Cargue el archivo nuevamente e inténtelo una vez más.",
        "teamManagement.searchMembers" to "Buscar miembro",
        "teamManagement.searchTeams" to "equipo de búsqueda",
        "teamManagement.season" to "Estación",
        "teamManagement.seasonFull" to "Temporada completa (a partir del 1 de julio)",
        "teamManagement.seasonUnknown" to "desconocido",
        "teamManagement.secondHalf" to "Segunda vuelta",
        "teamManagement.secondHalfFull" to "Segunda vuelta (desde el 1 de enero)",
        "teamManagement.selectedLineup" to "Jugadores inscritos",
        "teamManagement.selectMember" to "Seleccionar miembro",
        "teamManagement.selectTeam" to "Seleccionar equipo",
        "teamManagement.selectTeamFirst" to "Por favor seleccione un equipo primero",
        "teamManagement.selectTeamForConfiguration" to "Para activar la configuración de myTischtennis, primero debes seleccionar un equipo de la lista.",
        "teamManagement.selectTeamTitle" to "Seleccionar equipo",
        "teamManagement.showCodeList" to "Mostrar lista de códigos",
        "teamManagement.showPinList" to "Mostrar lista de PIN",
        "teamManagement.sortFirstLast" to "Clasificación: Nombre Apellido",
        "teamManagement.sortLastFirst" to "Clasificación: Apellido Nombre",
        "teamManagement.status" to "estado",
        "teamManagement.subtitle" to "Seleccione equipos, revise la configuración y mantenga los datos de la liga en un solo lugar.",
        "teamManagement.successful" to "Exitoso",
        "teamManagement.tableUpdateLabel" to "Actualización de la tabla:",
        "teamManagement.tableUrlDetected" to "URL de tabla detectada",
        "teamManagement.team" to "Team",
        "teamManagement.teamAgeGroup" to "grupo de edad",
        "teamManagement.teamConfiguredDetails" to "Liga: {league}\nTemporada: {season}\nLa recuperación automática de datos ahora está activa.",
        "teamManagement.teamConfiguredSuccess" to "Equipo configurado exitosamente. La recuperación automática de datos ahora está activa.",
        "teamManagement.teamDataFetched" to "Los datos del equipo se obtuvieron correctamente.",
        "teamManagement.teamDataFetchedDetails" to "Equipo: {team}\nRegistros recuperados: {count}",
        "teamManagement.teamGender" to "Género",
        "teamManagement.teamGenderFemale" to "Femenino",
        "teamManagement.teamGenderOpen" to "Abierto",
        "teamManagement.teamHasNoLeague" to "Este equipo no está asignado a una liga.",
        "teamManagement.teamId" to "ID del equipo",
        "teamManagement.teamName" to "Nombre del equipo",
        "teamManagement.teamNamePlaceholder" to "p.ej. Hombres 1, Mujeres 2",
        "teamManagement.teams" to "Teams",
        "teamManagement.title" to "Gestión de equipos",
        "teamManagement.unassignedMembers" to "aún no asignado",
        "teamManagement.unassignedMembersSubtitle" to "Miembros sin asignación de equipo",
        "teamManagement.unknown" to "Desconocido",
        "teamManagement.unknownTeam" to "Equipo desconocido",
        "teamManagement.updated" to "actualizado",
        "teamManagement.uploadNewVersion" to "Subir nueva versión",
        "tournament.apply" to "Aplicar cambios",
        "tournaments.action" to "Acción",
        "tournaments.add" to "Agregar",
        "tournaments.addClass" to "Agregar clase",
        "tournaments.addClubMember" to "Agregar miembro del club",
        "tournaments.addExternalParticipant" to "Agregar participante externo",
        "tournaments.addPairing" to "Agregar emparejamiento",
        "tournaments.addPoolRule" to "Añadir regla de grupos",
        "tournaments.address" to "Dirección",
        "tournaments.adjustTournamentSearch" to "Ajusta el término de búsqueda o crea un nuevo torneo.",
        "tournaments.advancersPerGroup" to "Promotores por grupo",
        "tournaments.allClasses" to "Todas las clases",
        "tournaments.allDataComplete" to "Todos los datos de los participantes están completos.",
        "tournaments.allDataCompleteTop3" to "Todos los datos de los 3 primeros clasificados están completos.",
        "tournaments.apply" to "Aplicar cambios",
        "tournaments.assignmentReviewTitle" to "Los participantes {count} necesitan elegir:",
        "tournaments.atLeastOnePoolRule" to "Añade al menos una regla de grupos para {label} (p. ej. puestos 1,2).",
        "tournaments.autoAssignableParticipantsHint" to "{count} de ellos se pueden asignar automáticamente.",
        "tournaments.autoAssignEligible" to "Asignar automáticamente",
        "tournaments.autoAssignEligibleDone" to "{count} participantes fueron asignados automáticamente.",
        "tournaments.autoAssignEligibleNone" to "Actualmente no hay participantes con una única asignación de clase automática.",
        "tournaments.autoAssignEligiblePartial" to "{successCount} participantes fueron asignados automáticamente, {errorCount} falló.",
        "tournaments.birthdate" to "Fecha de nacimiento",
        "tournaments.cancel" to "Cancelar",
        "tournaments.class" to "Clase",
        "tournaments.classes" to "Clases",
        "tournaments.className" to "Nombre de clase",
        "tournaments.cleanupOrphanedMatches" to "Limpiar juegos huérfanos",
        "tournaments.club" to "Asociación",
        "tournaments.clubMember" to "(miembro del club)",
        "tournaments.conflictSuggestionLabel" to "Sugerencias:",
        "tournaments.correctMatch" to "Corregir",
        "tournaments.create" to "Crear",
        "tournaments.createFinalFromIntermediate" to "Crear ronda final desde la intermedia",
        "tournaments.createFinalFromPreliminary" to "Crear ronda final desde la preliminar",
        "tournaments.createGroupMatches" to "Crear partidos de grupo",
        "tournaments.createGroups" to "¿Quién puede crear grupos?",
        "tournaments.createIntermediateFromPreliminary" to "Crear ronda intermedia desde la preliminar",
        "tournaments.createMatches" to "Establecer partidos",
        "tournaments.createSuggestedPairings" to "Crear parejas",
        "tournaments.currentClass" to "Clase activa",
        "tournaments.dataNotRecorded" to "Aún no registrado",
        "tournaments.date" to "Fecha",
        "tournaments.delete" to "Borrar",
        "tournaments.deleteClassConfirm" to "¿De verdad quieres eliminar la clase \"{name}\"?",
        "tournaments.deleteClassParticipantsDetached" to "Todos los participantes se desvincularán de esta clase.",
        "tournaments.deleteClassTitle" to "Eliminar clase",
        "tournaments.deleteExistingPairingsConfirm" to "Se eliminarán las parejas existentes. ¿Continuar?",
        "tournaments.deleteKORound" to "Knockear",
        "tournaments.diff" to "Diff",
        "tournaments.distributeTables" to "Distribuir mesas libres",
        "tournaments.distributeTablesResult" to "Distribución de mesas",
        "tournaments.doubles" to "Doble",
        "tournaments.doublesPairingHint" to "{count} participantes en esta clase de dobles todavía necesitan un compañero.",
        "tournaments.doublesTournament" to "Torneo de dobles",
        "tournaments.doublesTournamentHint" to "Cambia todas las clases existentes a dobles y crea nuevas clases como dobles de forma predeterminada.",
        "tournaments.edit" to "Editar",
        "tournaments.eligibleClassesHint" to "Adecuado para: {classes}",
        "tournaments.email" to "Dirección de correo electrónico",
        "tournaments.encounter" to "Reunión",
        "tournaments.enterClassName" to "Introduce un nombre de clase.",
        "tournaments.enterExternalParticipantName" to "Introduce al menos el nombre y el apellido.",
        "tournaments.enterMiniLocation" to "Introduce una ubicación.",
        "tournaments.errorCreatingGroups" to "Error al crear grupos.",
        "tournaments.errorCreatingTournament" to "Error al crear el torneo.",
        "tournaments.errorDistributingTables" to "Error al distribuir las mesas.",
        "tournaments.errorGeneratingPdf" to "Error al generar el PDF.",
        "tournaments.errorMergingClasses" to "No se pudieron fusionar clases.",
        "tournaments.errorMoreSeededThanUnseeded" to "Hay más jugadores apostados que no cabezas de serie. No se pueden crear emparejamientos aleatorios.",
        "tournaments.errorResettingKORound" to "Error al restablecer la ronda eliminatoria.",
        "tournaments.errorUpdatingTournament" to "Error al actualizar el torneo.",
        "tournaments.exportPDF" to "Exportar PDF",
        "tournaments.external" to "Externo",
        "tournaments.finalPlacements" to "Colocaciones finales",
        "tournaments.finalRound" to "Ronda final",
        "tournaments.finishMatch" to "Finalizar",
        "tournaments.firstName" to "Nombre de pila",
        "tournaments.forForwarding" to "para reenviar",
        "tournaments.gaveUp" to "Metido",
        "tournaments.gaveUpHint" to "El jugador se ha rendido: todos los juegos cuentan para el oponente (11:0) o 0:0 para ambos.",
        "tournaments.genderAll" to "Todo",
        "tournaments.genderMixed" to "Mixed",
        "tournaments.generatingPDF" to "Generando PDF...",
        "tournaments.group" to "Grupo",
        "tournaments.groupMatches" to "Partidos entre grupos",
        "tournaments.groupNumber" to "Grupo",
        "tournaments.groupPlacements" to "Colocaciones grupales",
        "tournaments.groupsLabel" to "Grupos",
        "tournaments.groupsOverview" to "Resumen de grupos",
        "tournaments.groupsPerClass" to "Clasificación de la piscina",
        "tournaments.groupsPerClassHint" to "Para cada clase, ingrese el número de grupos (0 = no hay grupos para esta clase):",
        "tournaments.index" to "Index",
        "tournaments.intermediateRound" to "Ronda intermedia (ronda 2)",
        "tournaments.internalStatsAbsoluteRank" to "Clasificación por suma",
        "tournaments.internalStatsAgeFilter" to "Edad y género (individual)",
        "tournaments.internalStatsAgeFilterAll" to "Todas las categorías",
        "tournaments.internalStatsAgeFilterNone" to "Ninguna categoría seleccionada",
        "tournaments.internalStatsAgeNoClass" to "Sin clase asignada",
        "tournaments.internalStatsAgeSelectAll" to "Todas",
        "tournaments.internalStatsAgeSelectNone" to "Ninguna",
        "tournaments.internalStatsAverageRank" to "Clasificación por media (por torneo)",
        "tournaments.internalStatsAvgPoints" to "Media",
        "tournaments.internalStatsEmpty" to "No hay datos para el periodo seleccionado.",
        "tournaments.internalStatsExportPdf" to "Exportar como PDF",
        "tournaments.internalStatsFilterAgeBands" to "Clases de edad",
        "tournaments.internalStatsFilterGenderColumn" to "Género",
        "tournaments.internalStatsGenderScopeAll" to "Todo",
        "tournaments.internalStatsGenderScopeGirls" to "solo chicas",
        "tournaments.internalStatsLast12Months" to "Últimos 12 meses",
        "tournaments.internalStatsLast3Months" to "Últimos 3 meses",
        "tournaments.internalStatsLast6Months" to "Últimos 6 meses",
        "tournaments.internalStatsOpenButton" to "Estadísticas de torneos (individual)",
        "tournaments.internalStatsPeriod" to "Periodo",
        "tournaments.internalStatsPoints" to "Total",
        "tournaments.internalStatsPointsExplain" to "Puntuación: en cada grupo la posición se expresa en porcentaje (con N clasificados: 1.º = 100 %, último = 0 %, lineal entre medias; empates = mismo valor). N cuenta a todos los clasificados del grupo (invitados incluidos). Con un solo jugador: 100 %. En KO: máximo de grupo de la clase + 1, más 1 por partido KO ganado. Solo socios en individual.",
        "tournaments.internalStatsTitle" to "Estadísticas de torneos internos (individual)",
        "tournaments.internalStatsTournamentsInPeriod" to "{count} torneo(s) en el periodo (sin minicampeonatos).",
        "tournaments.internalStatsTtAdult" to "Adultos",
        "tournaments.internalTournaments" to "Torneos internos",
        "tournaments.knockoutLabel" to "KO",
        "tournaments.koRound" to "ronda eliminatoria",
        "tournaments.lastName" to "Apellido",
        "tournaments.livePosition" to "asiento en vivo",
        "tournaments.loadFromTraining" to "Carga del día de entrenamiento",
        "tournaments.markMatchLive" to "Marcar como en vivo",
        "tournaments.maxGroupSize" to "Tamaño máximo del grupo",
        "tournaments.mergeClasses" to "Fusionar clases (fase de grupo común)",
        "tournaments.mergeDistribute" to "Distribuir jugadores de A a todos los grupos (de B)",
        "tournaments.mergeSingleGroup" to "Todos los jugadores de A en un grupo (en B)",
        "tournaments.minBirthYear" to "Nacido en el año o después",
        "tournaments.miniChampionshipLocation" to "Ubicación",
        "tournaments.miniChampionships" to "Mini campeonatos",
        "tournaments.miniChampionshipYear" to "Año",
        "tournaments.miniChampionshipYearHint" to "12 = este año 12 o 13 años, 10 = 10 u 11, 8 = 9 y menos",
        "tournaments.minimumParticipantsForPairings" to "Se requieren al menos 2 participantes para formar parejas.",
        "tournaments.missingDataPDF" to "Datos faltantes como PDF",
        "tournaments.missingDataPDFSubtitle" to "Por favor, recopile los datos faltantes (marcados con ____) de los participantes y anótelos aquí.",
        "tournaments.missingDataPDFSubtitleTop3" to "Por favor, recopile los datos faltantes de los 3 primeros (marcados con ____) y anótelos aquí.",
        "tournaments.missingDataPDFTitle" to "Datos de participantes faltantes – Mini campeonato",
        "tournaments.missingDataPDFTitleTop3" to "Datos faltantes – Top 3 Mini campeonato",
        "tournaments.name" to "nombre",
        "tournaments.newMiniChampionship" to "Nuevo Mini Campeonato",
        "tournaments.setShort" to "Set",
        "tournaments.newTournament" to "Agregar nuevo torneo",
        "tournaments.noAssignableMatches" to "No hay partidos disponibles en los que ambos jugadores estén libres.",
        "tournaments.noClassesYet" to "Aún no hay clases disponibles. Añade una nueva clase.",
        "tournaments.noEligibleClass" to "No se encontró una categoría adecuada.",
        "tournaments.noFreeTables" to "No hay mesas libres disponibles.",
        "tournaments.noMatchingTournamentsTitle" to "No hay torneos coincidentes",
        "tournaments.noOrphanedMatchesFound" to "No se encontraron partidos huérfanos.",
        "tournaments.noPlacementsYet" to "Aún no hay ubicaciones disponibles.",
        "tournaments.noPlayerDataAvailable" to "No hay datos de jugadores disponibles",
        "tournaments.noPoolRulesYet12" to "Aún no hay reglas. Ejemplo: puestos 1 y 2 -> grupos superiores de la ronda 2.",
        "tournaments.noPoolRulesYetFinal" to "Aún no hay reglas. Ejemplo: puestos 1 y 2 -> ronda final.",
        "tournaments.noTop3Yet" to "Aún no se han determinado los 3 primeros puestos.",
        "tournaments.noTournamentDate" to "No hay fecha de torneo disponible.",
        "tournaments.noTournamentsCreatedYet" to "Aún no se han creado torneos.",
        "tournaments.noTrainingOnDate" to "No se encontró ninguna sesión de entrenamiento para {date}.",
        "tournaments.noTrainingParticipants" to "No se encontraron participantes en la sesión de entrenamiento para esta fecha.",
        "tournaments.noValidTrainingParticipants" to "No se encontraron participantes válidos en la sesión de entrenamiento para esta fecha.",
        "tournaments.numberOfGroups" to "nº de grupos",
        "tournaments.numberOfTables" to "Número de mesas",
        "tournaments.openTournaments" to "Torneos abiertos",
        "tournaments.optional" to "optional",
        "tournaments.orphanedMatchesRemoved" to "Se eliminaron {count} partidos huérfanos.",
        "tournaments.outOfCompetition" to "Jugador de A fuera de competición",
        "tournaments.page" to "Página",
        "tournaments.pairingAlreadyExists" to "Esta pareja ya existe.",
        "tournaments.pairings" to "Emparejamientos dobles",
        "tournaments.pairingsCreatedWithErrors" to "Se crearon {successCount} parejas, {errorCount} errores.",
        "tournaments.participantConflicts" to "Conflictos",
        "tournaments.participantNotFound" to "Participante no encontrado.",
        "tournaments.participants" to "Participantes",
        "tournaments.participantsNeedClassAssignment" to "{count} participantes aún no están asignados a una clase. Estos deben asignarse primero.",
        "tournaments.phone" to "Teléfono",
        "tournaments.placementsPendingFinals" to "Las clasificaciones finales aparecerán una vez que existan varios grupos o una ronda final.",
        "tournaments.placementsPendingGroups" to "Las posiciones de grupo aparecerán una vez que existan coincidencias de grupo.",
        "tournaments.placementsPendingNoGroups" to "Las clasificaciones aparecerán aquí una vez que existan partidos de grupo o una ronda final.",
        "tournaments.placementsPendingSelectedClass" to "Aún no hay plazas para la clase seleccionada actualmente.",
        "tournaments.placementsPendingTitle" to "Lugares aún no disponibles",
        "tournaments.placesFromEachGroup" to "Puestos de cada grupo (p. ej. 1,2)",
        "tournaments.player" to "patinadores",
        "tournaments.playerOne" to "Jugador 1",
        "tournaments.playerTwo" to "Jugador 2",
        "tournaments.playInGroups" to "jugando en grupos",
        "tournaments.playThirdPlace" to "Jugar por el tercer puesto",
        "tournaments.pleaseEnterDate" to "Por favor ingresa una fecha",
        "tournaments.pleaseSelectParticipant" to "Por favor seleccione un estudiante.",
        "tournaments.points" to "Agujas",
        "tournaments.pointsRatio" to "Puntos de juego",
        "tournaments.poolRuleLabel" to "Regla {number}",
        "tournaments.poolRulePlacesHelp" to "Ejemplo: 1 o 1,2",
        "tournaments.poolRulePlacesLabel" to "¿Qué plazas avanzan?",
        "tournaments.poolRulePreview" to "De cada grupo, los lugares {places} avanzan a {target}.",
        "tournaments.poolRuleQuickExamples" to "Ejemplos rápidos:",
        "tournaments.poolRuleSummary" to "Los lugares {places} van a {target}",
        "tournaments.poolRuleTargetGroupsDetailed" to "{count} grupos objetivo",
        "tournaments.poolRuleTargetKnockout" to "el soporte knockout",
        "tournaments.poolRuleTargetLabel" to "¿A dónde van estos lugares?",
        "tournaments.position" to "la plaza",
        "tournaments.problemConfigDescription" to "Consulta fecha, nombre y sets ganadores.",
        "tournaments.problemConfigTitle" to "Configuración incompleta",
        "tournaments.problemConflictsDescription" to "Revise clases no válidas, datos faltantes o tareas poco claras.",
        "tournaments.problemConflictsTitle" to "{count} participantes con conflictos",
        "tournaments.problemDoublesAutoDescription" to "La clase de dobles abierta se puede emparejar automáticamente de inmediato.",
        "tournaments.problemDoublesDescription" to "Una o más clases de dobles todavía necesitan tareas de pareja.",
        "tournaments.problemDoublesTitle" to "{count} socios de dobles abiertos",
        "tournaments.problemGroupMatchesDescription" to "Los grupos están listos, pero aún no se han creado los partidos.",
        "tournaments.problemGroupMatchesTitle" to "Partidos de grupo aún no generados",
        "tournaments.problemGroupsMissingDescription" to "El torneo grupal necesita que primero se creen grupos.",
        "tournaments.problemGroupsMissingTitle" to "Grupos aún no creados",
        "tournaments.problemKnockoutReadyDescription" to "La fase de grupos está completa y ya se puede generar la ronda final.",
        "tournaments.problemKnockoutReadyTitle" to "Se puede iniciar el nocaut",
        "tournaments.problemUnassignedAutoDescription" to "{count} de ellos se pueden asignar automáticamente de inmediato.",
        "tournaments.problemUnassignedDescription" to "Estos participantes todavía necesitan una tarea de clase manual.",
        "tournaments.problemUnassignedTitle" to "{count} participantes sin clase",
        "tournaments.promotionRule12" to "Avance: ronda preliminar → ronda intermedia (1→2)",
        "tournaments.promotionRuleDescription12" to "Definir qué lugares de cada grupo preliminar avanzan a la ronda intermedia.",
        "tournaments.promotionRuleDescriptionFinalGroups" to "Definir qué lugares de la ronda anterior avanzan a los grupos de la ronda final.",
        "tournaments.promotionRuleDescriptionFinalKnockout" to "Define qué lugares de la ronda anterior avanzan al cuadro eliminatorio.",
        "tournaments.promotionRuleFinal" to "Avance: ronda {from} → ronda {to}",
        "tournaments.randomizeGroups" to "Aleatorizar",
        "tournaments.randomPairings" to "Pares dobles aleatorios",
        "tournaments.randomPairingsCreated" to "Se han creado emparejamientos aleatorios.",
        "tournaments.resetGroupMatches" to "Partidos entre grupos",
        "tournaments.resetGroups" to "Restablecer grupos",
        "tournaments.result" to "Resultado",
        "tournaments.resultsRanking" to "Clasificación",
        "tournaments.round" to "Redondo",
        "tournaments.roundGroupCount" to "Número de grupos",
        "tournaments.roundMode" to "Modo",
        "tournaments.ruleStatusBlocked" to "Obstruido",
        "tournaments.ruleStatusOk" to "se ve bien",
        "tournaments.ruleStatusOkDescription" to "Esta regla coincide con la ronda objetivo actual y se puede utilizar tal como está.",
        "tournaments.ruleStatusReview" to "Revisar",
        "tournaments.save" to "Ahorrar",
        "tournaments.saveRounds" to "Guardar rondas",
        "tournaments.seeded" to "Semilla",
        "tournaments.selectClass" to "Seleccionar clase",
        "tournaments.selectClassPrompt" to "Por favor seleccione una clase.",
        "tournaments.selectedTournament" to "Torneo activo",
        "tournaments.selectParticipant" to "Elige usuario",
        "tournaments.selectPlayer" to "Seleccionar jugadores",
        "tournaments.selectTournamentFirst" to "Selecciona primero un torneo.",
        "tournaments.selectTwoDifferentPlayers" to "Selecciona dos jugadores distintos.",
        "tournaments.setDiff" to "Diferencia de oración",
        "tournaments.sets" to "frases",
        "tournaments.showClass" to "Ver clase",
        "tournaments.showingTournamentCount" to "{visible} de {total}",
        "tournaments.showPlayerDetails" to "Ver detalles del jugador",
        "tournaments.singles" to "Soltero",
        "tournaments.sourceClass" to "Fuente",
        "tournaments.stageActionMissingRulesHint" to "Primero crea al menos una regla de avance antes de pasar a los jugadores a la siguiente ronda.",
        "tournaments.stageActionRun" to "Corre ahora",
        "tournaments.stageActionsDescription" to "Estos pasos mueven a los jugadores clasificados a la siguiente ronda.",
        "tournaments.stageActionsTitle" to "Próximas acciones",
        "tournaments.stageConfigBadServerResponse" to "Respuesta del servidor no válida.",
        "tournaments.stageConfigCurrentSetup" to "Estructura actual",
        "tournaments.stageConfigIntro" to "La ronda intermedia es opcional. Si la activas, después habrá siempre una ronda final. Una ronda final eliminatoria se crea como un único cuadro.",
        "tournaments.stageConfigLoadError" to "Error al cargar la configuración de rondas.",
        "tournaments.stageConfigLoading" to "Cargando configuración de rondas…",
        "tournaments.stageConfigMissingIds" to "No se puede guardar: falta el ID del club o del torneo.",
        "tournaments.stageConfigTitle" to "Ronda intermedia y final",
        "tournaments.stageCreated" to "Se creó la ronda {round}.",
        "tournaments.stageFinalDescription" to "Decide si la ronda final se debe jugar en grupos o directamente como grupo eliminatorio.",
        "tournaments.stageFlowBreakdownActionAddRule" to "Agregar regla",
        "tournaments.stageFlowBreakdownActionOpen" to "regla abierta",
        "tournaments.stageFlowBreakdownActionReview" to "Revisar problemas",
        "tournaments.stageFlowBreakdownErrors" to "{count} error(es) de bloqueo",
        "tournaments.stageFlowBreakdownMissingRule" to "Aún no se ha agregado ninguna regla completa",
        "tournaments.stageFlowBreakdownOk" to "La configuración se ve bien",
        "tournaments.stageFlowBreakdownWarnings" to "{count} advertencia(s) abierta(s)",
        "tournaments.stageFlowDirectFinal" to "Ronda preliminar -> ronda final ({final})",
        "tournaments.stageFlowHealthBlocked" to "La lógica redonda es contradictoria.",
        "tournaments.stageFlowHealthBlockedDescription" to "Actualmente, al menos una regla no coincide con la ronda objetivo o contiene errores de configuración de bloqueo.",
        "tournaments.stageFlowHealthIncomplete" to "La lógica redonda está incompleta.",
        "tournaments.stageFlowHealthMissingRules" to "Al menos una transición aún no tiene una regla de avance completa.",
        "tournaments.stageFlowHealthOk" to "La lógica redonda se ve bien",
        "tournaments.stageFlowHealthOkDescription" to "Las transiciones entre rondas están completamente configuradas y actualmente son coherentes.",
        "tournaments.stageFlowHealthReviewDescription" to "La lógica circular es básicamente utilizable, pero aún así debe revisarse debido a las sugerencias abiertas.",
        "tournaments.stageFlowPreviewMissing" to "Aún no se ha configurado ninguna regla.",
        "tournaments.stageFlowPreviewRule" to "Los lugares {places} van a {target}",
        "tournaments.stageFlowPreviewRuleWithCount" to "{base} (calificadores esperados: {count})",
        "tournaments.stageFlowQualifiedPreviewEntry" to "G{group} · Lugar {position} · {name}",
        "tournaments.stageFlowQualifiedPreviewTitle" to "Actualmente calificado",
        "tournaments.stageFlowReadinessIncompleteGroups" to "{count} grupo(s) aún no están completamente decididos",
        "tournaments.stageFlowReadinessNoGroups" to "Aún no existen grupos coincidentes",
        "tournaments.stageFlowReadinessReady" to "La transición está lista para comenzar",
        "tournaments.stageFlowRecommendationError" to "Primero revise el primer error de bloqueo en la lógica de la ronda.",
        "tournaments.stageFlowRecommendationFixes" to "Los problemas de configuración típicos se pueden solucionar automáticamente de inmediato.",
        "tournaments.stageFlowRecommendationMissingRule" to "Aún falta una regla completa para {label}. Ese es el mejor lugar para continuar.",
        "tournaments.stageFlowRecommendationSave" to "La lógica redonda es coherente. Puede guardar la configuración ahora.",
        "tournaments.stageFlowRecommendationTitle" to "Siguiente paso recomendado",
        "tournaments.stageFlowRecommendationWarnings" to "Todavía hay advertencias que conviene revisar antes de guardar.",
        "tournaments.stageFlowWithIntermediate" to "Ronda preliminar -> ronda intermedia ({stage2}) -> ronda final ({final})",
        "tournaments.stageParticipantsTransferred" to "Los jugadores calificados fueron trasladados a {round}.",
        "tournaments.stageStep1" to "Paso 1",
        "tournaments.stageStep1Description" to "Primero decida si debería haber una ronda adicional después de la ronda preliminar.",
        "tournaments.stageStep1Title" to "Decidir una ronda intermedia",
        "tournaments.stageStep2" to "Paso 2",
        "tournaments.stageStep2Description" to "Defina cómo debería ser la ronda intermedia y cuántos grupos necesita.",
        "tournaments.stageStep3" to "Paso 3",
        "tournaments.stageValidationApplyAllFixes" to "Aplicar {count} soluciones rápidas",
        "tournaments.stageValidationApplyFix" to "Aplicar",
        "tournaments.stageValidationApplyTargetGroupFix" to "Establecer en {count} grupos objetivo",
        "tournaments.stageValidationApplyTargetTypeFix" to "Cambiar a {target}",
        "tournaments.stageValidationDescription" to "Solucione estos puntos antes de guardar o pasar jugadores a la siguiente ronda.",
        "tournaments.stageValidationGroupCountRequired" to "Establezca al menos un recuento de grupo válido.",
        "tournaments.stageValidationKnockoutByesLikely" to "Con un esperado {count} clasificados, el cuadro eliminatorio probablemente incluirá byes.",
        "tournaments.stageValidationKnockoutNeedsTwoPlayers" to "Un cuadro eliminatorio necesita al menos 2 jugadores calificados.",
        "tournaments.stageValidationKnockoutTargetOnly" to "Para una ronda final eliminatoria, aquí solo se permite como objetivo el grupo eliminatorio.",
        "tournaments.stageValidationNoRules" to "Aún no existe una regla de avance para {stage}.",
        "tournaments.stageValidationNotEnoughQualifiersForGroups" to "Con solo {count} calificadores para {groups} grupos objetivo, se crearían grupos vacíos.",
        "tournaments.stageValidationRulePlacesDuplicate" to "Una misma regla no debe contener el mismo lugar más de una vez.",
        "tournaments.stageValidationRulePlacesGap" to "La definición del lugar tiene lagunas. Normalmente se pretende un orden continuo como 1,2 o 1,2,3.",
        "tournaments.stageValidationRulePlacesInvalid" to "La definición del lugar no es válida. Sólo se permiten números enteros positivos como 1 o 1,2.",
        "tournaments.stageValidationRulePlacesRequired" to "Ingrese al menos un lugar que debería avanzar.",
        "tournaments.stageValidationRulesOverlap" to "El lugar {place} se asigna dos veces, en la regla {first} y en la regla {second}.",
        "tournaments.stageValidationSaveBlocked" to "Primero corrija los errores de configuración resaltados.",
        "tournaments.stageValidationSuggestion" to "Sugerencia: {value}",
        "tournaments.stageValidationTargetGroupCountMismatch" to "El número de grupos objetivo debe coincidir con la ronda objetivo. Esperado: {expected}.",
        "tournaments.stageValidationTargetGroupsRequired" to "Introduzca un número válido de grupos objetivo.",
        "tournaments.stageValidationTargetTypeMismatch" to "El objetivo de esta regla debe coincidir con la ronda objetivo. Esperado: {target}.",
        "tournaments.stageValidationThinGroupsLikely" to "Con {count} calificadores en {groups} grupos objetivo, los grupos probablemente serán muy pequeños.",
        "tournaments.stageValidationTitle" to "Revisar la configuración",
        "tournaments.startKORound" to "Comienza la ronda eliminatoria",
        "tournaments.statusActionAssign" to "Asignar",
        "tournaments.statusActionCreate" to "Crear",
        "tournaments.statusActionGenerate" to "Generar",
        "tournaments.statusActionPair" to "Par",
        "tournaments.statusActionReview" to "Revisar",
        "tournaments.statusActionStart" to "Comenzar",
        "tournaments.statusConfigIncomplete" to "Configuración incompleta",
        "tournaments.statusConfigReady" to "Configuración lista",
        "tournaments.statusFinished" to "Terminado",
        "tournaments.statusGroupsMissing" to "Grupos aún no creados",
        "tournaments.statusGroupsReady" to "Grupos listos",
        "tournaments.statusGroupsRunning" to "Fase de grupos en marcha",
        "tournaments.statusKnockoutReady" to "Eliminatoria lista para comenzar",
        "tournaments.statusKnockoutRunning" to "Nocaut en progreso",
        "tournaments.statusLive" to "En juego",
        "tournaments.statusOpen" to "Abierto",
        "tournaments.statusParticipantsConflicts" to "{count} participantes con conflictos",
        "tournaments.statusParticipantsReady" to "{count} participantes sin conflictos",
        "tournaments.statusParticipantsUnassigned" to "{count} sin clase",
        "tournaments.statusTournamentCompleted" to "Torneo completado",
        "tournaments.statusUnpairedDoubles" to "{count} se dobla sin pareja",
        "tournaments.strategy" to "Estrategia",
        "tournaments.tabConfig" to "Configuración",
        "tournaments.tabGroups" to "Clasificación de la piscina",
        "tournaments.table" to "Mesa",
        "tournaments.tablesDistributed" to "Las mesas han sido distribuidas.",
        "tournaments.tabParticipants" to "Participantes",
        "tournaments.tabPlacements" to "Colocaciones",
        "tournaments.tabResults" to "Resultados",
        "tournaments.target" to "Destino",
        "tournaments.targetClass" to "Objetivo",
        "tournaments.targetGroupCount" to "Número de grupos destino",
        "tournaments.targetGroupsLabel" to "{count} grupos",
        "tournaments.tournamentClassGenderFemale" to "Femenino",
        "tournaments.tournamentClassGenderOpen" to "Abierta (todos)",
        "tournaments.tournamentName" to "Nombre del torneo",
        "tournaments.tournamentParticipations" to "Torneos y entradas oficiales",
        "tournaments.transferQualifiedToFinalFromIntermediate" to "Mover a los jugadores clasificados a la ronda final",
        "tournaments.transferQualifiedToFinalFromIntermediateDesc" to "Utiliza las reglas de la ronda intermedia a la ronda final y mueve a los jugadores calificados.",
        "tournaments.transferQualifiedToFinalFromPreliminary" to "Mueve a los jugadores clasificados directamente a la ronda final.",
        "tournaments.transferQualifiedToFinalFromPreliminaryDesc" to "Utiliza las reglas de la ronda preliminar a la ronda final y crea los jugadores calificados directamente allí.",
        "tournaments.transferQualifiedToIntermediate" to "Mover a los jugadores clasificados a la ronda intermedia",
        "tournaments.transferQualifiedToIntermediateDesc" to "Utiliza las reglas de la ronda preliminar a la ronda intermedia y mueve a los jugadores calificados.",
        "tournaments.unknown" to "Desconocido",
        "tournaments.unknownDate" to "Fecha desconocida",
        "tournaments.unmarkMatchLive" to "Quitar marca en vivo",
        "tournaments.unpairedDoubles" to "Dobles sin pareja",
        "tournaments.useIntermediateStage" to "Usar ronda intermedia",
        "tournaments.warningBirthDateMissing" to "Falta la fecha de nacimiento para esta categoría",
        "tournaments.warningClassMissing" to "Categoría no encontrada",
        "tournaments.warningGenderMismatch" to "El género no coincide con la categoría",
        "tournaments.warningGenderMissing" to "Falta el género para esta categoría",
        "tournaments.warningMissingPairing" to "Falta la pareja de dobles",
        "tournaments.warningTooOldForClass" to "Demasiado mayor para esta categoría",
        "tournaments.warningTooYoungForClass" to "Demasiado joven para esta categoría",
        "tournaments.winningSets" to "Tasas ganadoras",
        "tournaments.withoutClass" to "sin clase",
        "tournaments.workspaceProblemsTitle" to "{count} problemas abiertos",
        "trainingDetails.birthdate" to "Fecha de nacimiento",
        "trainingDetails.birthYear" to "año de nacimiento",
        "trainingDetails.last12Months" to "últimos 12 meses",
        "trainingDetails.last3Months" to "últimos 3 meses",
        "trainingDetails.maxBirthYear" to "Nacido ≤ año",
        "trainingDetails.noTrainings" to "No hay asistencia a entrenamiento disponible",
        "trainingDetails.title" to "Detalles del entrenamiento",
        "trainingDetails.total" to "Total",
        "trainingDetails.trainingParticipations" to "Participaciones en formación (ordenadas en orden descendente)",
        "trainingGroupsTab.addMember" to "Agregar miembro...",
        "trainingGroupsTab.cancel" to "Cancelar",
        "trainingGroupsTab.create" to "Crear",
        "trainingGroupsTab.delete" to "Borrar",
        "trainingGroupsTab.edit" to "Editar",
        "trainingGroupsTab.editGroup" to "Editar grupo",
        "trainingGroupsTab.groupName" to "Nombre del grupo",
        "trainingGroupsTab.groups" to "Clasificación de la piscina",
        "trainingGroupsTab.members" to "Miembros",
        "trainingGroupsTab.newGroup" to "+ Nuevo grupo",
        "trainingGroupsTab.noMembersAvailable" to "No hay socios afiliados disponibles",
        "trainingGroupsTab.remove" to "Eliminar",
        "trainingStats.actions" to "Acciones",
        "trainingStats.activeMembers" to "Miembros activos",
        "trainingStats.allTrainingDays" to "Todos los días de entrenamiento",
        "trainingStats.attendingMembers" to "Miembros presentes",
        "trainingStats.averageParticipationCurrentMonth" to "Participación media (mes actual)",
        "trainingStats.averageParticipationHalfYear" to "Participación media (semestre)",
        "trainingStats.averageParticipationLastMonth" to "Participación media (mes anterior)",
        "trainingStats.averageParticipationQuarter" to "Participación media (trimestre)",
        "trainingStats.averageParticipationYear" to "Participación media (año)",
        "trainingStats.birthdate" to "Fecha de nacimiento",
        "trainingStats.date" to "Fecha",
        "trainingStats.lastTraining" to "Último entrenamiento",
        "trainingStats.memberParticipations" to "Participaciones de los miembros",
        "trainingStats.name" to "nombre",
        "trainingStats.noParticipants" to "Sin participantes",
        "trainingStats.panelAgeGroups" to "Asistencia por categoría de edad",
        "trainingStats.panelBestDay" to "Día de entreno con más asistencia",
        "trainingStats.panelGroupPerformance" to "Evolución por grupo",
        "trainingStats.panelMemberStructure" to "Estructura de miembros",
        "trainingStats.panelMonthlyTrend" to "Tendencia mensual",
        "trainingStats.panelSummary" to "Cifras clave (filtro)",
        "trainingStats.panelWeekdayStats" to "Días de entreno por día de la semana",
        "trainingStats.participants" to "Participantes",
        "trainingStats.participations12Months" to "Participaciones (12 meses)",
        "trainingStats.participations3Months" to "Participaciones (3 meses)",
        "trainingStats.participationsTotal" to "Participaciones (total)",
        "trainingStats.qttr" to "QTTR",
        "trainingStats.showDetails" to "Mostrar detalles",
        "trainingStats.title" to "Estadísticas de entrenamiento",
        "trainingStats.trainingDayFilter" to "Día de entrenamiento",
        "trainingStats.trainingDays" to "Días de entrenamiento (últimos 12 meses)",
        "trainingStats.ttr" to "TTR",
        "trainingStats.weekday" to "Día de la semana",
        "trainingTimesTab.addTime" to "Agregar tiempo",
        "trainingTimesTab.cancel" to "Cancelar",
        "trainingTimesTab.create" to "Crear",
        "trainingTimesTab.delete" to "Borrar",
        "trainingTimesTab.edit" to "Editar",
        "trainingTimesTab.editTime" to "Editar tiempo de entrenamiento",
        "trainingTimesTab.excludeFromQuickDiaryCreate" to "Excluir de la creación rápida (diario)",
        "trainingTimesTab.excludeFromQuickDiarySaveError" to "No se pudo guardar la configuración.",
        "trainingTimesTab.friday" to "Viernes",
        "trainingTimesTab.from" to "De:",
        "trainingTimesTab.loading" to "Cargando tiempos de entrenamiento...",
        "trainingTimesTab.monday" to "Lunes",
        "trainingTimesTab.noTimes" to "No hay tiempos de entrenamiento definidos",
        "trainingTimesTab.saturday" to "Sábado",
        "trainingTimesTab.save" to "Ahorrar",
        "trainingTimesTab.saveError" to "Error al guardar el tiempo de entrenamiento",
        "trainingTimesTab.sunday" to "Domingo",
        "trainingTimesTab.thursday" to "Jueves",
        "trainingTimesTab.to" to "A:",
        "trainingTimesTab.tuesday" to "Martes",
        "trainingTimesTab.wednesday" to "Miércoles",
        "trainingTimesTab.weekday" to "Días laborables:",
        "unknown" to "Desconocido",
    ) }

    private val fil: Map<String, String> by lazy { mapOf(
        "accident.accident" to "Aksidente",
        "accident.accidentDescription" to "Paglalarawan ng aksidente...",
        "accident.close" to "Isara",
        "accident.member" to "Miyembro",
        "accident.pleaseSelect" to "Mangyaring pumili",
        "accident.reportAccident" to "Mag-ulat ng mga aksidente",
        "accident.reportedAccidents" to "Naiulat na Aksidente",
        "accident.submit" to "Isumite",
        "activityStats.activityStatistics" to "Mga istatistika ng ehersisyo",
        "activityStats.last3Participations" to "Huling 3 Entries",
        "activityStats.noParticipations" to "Walang magagamit na mga entry",
        "activityStats.noStatistics" to "Walang available na istatistika",
        "activityStats.title" to "Istatistika ng Pagsasanay",
        "app.name" to "Talaarawan sa Pagsasanay",
        "app.title" to "Talaarawan sa Pagsasanay",
        "auth.accountActivated" to "Na-activate ang account! Maaari ka nang mag-log in.",
        "auth.activate" to "I-activate",
        "auth.activateAccount" to "I-activate ang account",
        "auth.activationFailed" to "Nabigo ang activation. Suriin ang link.",
        "auth.confirmPassword" to "Kumpirmahin ang password",
        "auth.email" to "Email",
        "auth.forgotPassword" to "Nakalimutan ang password?",
        "auth.forgotPasswordDescription" to "Ilagay ang iyong email address. Makakatanggap ka ng link para i-reset ang password.",
        "auth.hasAccount" to "Mayroon ka nang account?",
        "auth.login" to "Mag-login",
        "auth.loginFailed" to "Nabigo ang pag-login. Suriin ang iyong credentials.",
        "auth.loginSuccess" to "Matagumpay na nag-login",
        "auth.logout" to "Mag-logout",
        "auth.logoutSuccess" to "Matagumpay na nag-logout",
        "auth.newPassword" to "Bagong password",
        "auth.noAccount" to "Wala pang account?",
        "auth.password" to "Password",
        "auth.passwordResetSuccess" to "Matagumpay na nabago ang password. Maaari ka nang mag-login.",
        "auth.passwordsDoNotMatch" to "Hindi magkatugma ang mga password.",
        "auth.passwordTooShort" to "Ang password ay dapat hindi bababa sa 6 na character.",
        "auth.register" to "Magrehistro",
        "auth.registerFailed" to "Nabigo ang pagpaparehistro. Pakisubukang muli.",
        "auth.registerSuccess" to "Matagumpay ang pagpaparehistro! Mangyaring suriin ang iyong email upang i-activate ang iyong account.",
        "auth.rememberMe" to "Tandaan ako",
        "auth.resetEmailSent" to "Kung may account sa email na ito, ipinadala na ang reset link. Suriin ang inbox (at spam folder).",
        "auth.resetFailed" to "Hindi nabago ang password. Maaaring nag-expire na ang link.",
        "auth.resetPassword" to "Magtakda ng bagong password",
        "auth.resetRequestFailed" to "Nabigo ang request. Subukan ulit.",
        "auth.saveNewPassword" to "I-save ang password",
        "auth.saving" to "Sine-save...",
        "auth.sending" to "Ipinapadala...",
        "auth.sendResetLink" to "Ipadala ang link",
        "auth.sessionExpired" to "Nag-expire na ang iyong session. Ikaw ay ma-logout.",
        "auth.toLogin" to "Pumunta sa login",
        "baseDialog.close" to "Isara",
        "baseDialog.minimize" to "i-minimize",
        "baseDialog.resize" to "Baguhin ang laki",
        "billing.autoSuggestMapping" to "Mga mungkahi sa kotse",
        "billing.deleteBilling" to "Tanggalin",
        "billing.deleteConfirm" to "Talagang tanggalin ang nabuong pahayag na ito?",
        "billing.deleteError" to "Hindi matanggal ang pagsingil.",
        "billing.deleteSuccess" to "Ang pagsingil ay tinanggal.",
        "billing.deleteTemplate" to "Tanggalin ang template",
        "billing.deleteTemplateConfirm" to "Talagang tanggalin ang template na ito?",
        "billing.deleteTemplateError" to "Hindi matanggal ang template.",
        "billing.deleteTemplateSuccess" to "Ang template ay tinanggal.",
        "billing.documentDate" to "Petsa",
        "billing.downloadError" to "Hindi ma-download ang PDF.",
        "billing.downloadPdf" to "Mag-download ng PDF",
        "billing.generateAndDownloadPdf" to "Bumuo + mag-download ng PDF",
        "billing.generateError" to "Hindi magawa ang PDF.",
        "billing.generateOwnBilling" to "Bumuo ng sarili mong pagsingil",
        "billing.generatePdf" to "Bumuo ng PDF",
        "billing.generateSuccess" to "Nagawa na ang PDF.",
        "billing.generatingPdf" to "Gumawa ng PDF...",
        "billing.hourlyRate" to "Oras na suweldo",
        "billing.hoursAutoHint" to "Bilang ng mga oras ay awtomatikong kinakalkula mula sa mga araw ng pagsasanay: {hours} h ({count} unit).",
        "billing.hoursTotal" to "Bilang ng oras",
        "billing.iban" to "IBAN",
        "billing.ibanBoxesReset" to "Na-reset ang mga kahon ng IBAN.",
        "billing.ibanLearnCancel" to "Kanselahin ang pag-aaral ng IBAN",
        "billing.ibanLearnDone" to "Ang mga kahon ng IBAN ay itinalaga mula sa napiling lugar.",
        "billing.ibanLearnStart" to "Matuto ng IBAN",
        "billing.ibanLearnStep1" to "Pag-aaral ng IBAN: mangyaring mag-click sa unang kahon ng IBAN na gagamitin.",
        "billing.ibanLearnStep2" to "Pag-aaral ng IBAN: mangyaring mag-click sa huling kahon ng IBAN na gagamitin.",
        "billing.ibanWithoutCountry" to "walang country code",
        "billing.locationText" to "Lokasyon",
        "billing.mappingEditorHint" to "Piliin ang field, pagkatapos ay mag-click sa PDF. Aagawin kaagad ang posisyon.",
        "billing.mappingEditorTitle" to "Magtalaga ng mga patlang sa PDF sa isang pag-click",
        "billing.mappingField" to "Patlang",
        "billing.mappingHint" to "Ayusin at i-save ang mga coordinate nang isang beses para sa bawat field. Ang mga posisyon na ito ay ginagamit sa \"Gumawa ng PDF\".",
        "billing.mappingPreviewError" to "Hindi ma-load ang preview ng PDF para sa pagmamapa.",
        "billing.mappingSaved" to "Nai-save na ang pagmamapa.",
        "billing.mappingSaveError" to "Hindi ma-save ang pagmamapa.",
        "billing.mappingSuggested" to "Ang mga mungkahi sa kotse ay ipinasok. Mangyaring suriin at ayusin.",
        "billing.mappingSuggestError" to "Hindi matukoy ang mga awtomatikong suhestyon.",
        "billing.mappingTitle" to "Pagmamapa ng posisyon",
        "billing.monthFrom" to "buwan ng",
        "billing.monthTo" to "buwan hanggang",
        "billing.noRuns" to "Wala pang available na mga invoice.",
        "billing.noSessionsInRange" to "Walang nakitang mga sesyon ng pagsasanay sa napiling panahon.",
        "billing.noTemplates" to "Wala pang available na template.",
        "billing.omitField" to "huwag tukuyin",
        "billing.openMappingEditor" to "Pagma-map sa isang pag-click",
        "billing.resetIbanBoxes" to "Na-reset ang mga kahon ng IBAN",
        "billing.runSection" to "Tumatakbo sa pagsingil",
        "billing.runsTitle" to "Mga nakaraang pagsingil",
        "billing.sameAccountCheckbox" to "Parehong account tulad ng huling pahayag",
        "billing.saveMapping" to "I-save ang pagmamapa",
        "billing.selfRecipientName" to "Sariling pangalan",
        "billing.sessionHours" to "Oras",
        "billing.sessionLabel" to "Identifier",
        "billing.sessionTime" to "Oras",
        "billing.step1" to "Hakbang 1: Template ng tindahan",
        "billing.step2" to "Hakbang 2: Gumawa ng billing run",
        "billing.step3" to "Hakbang 3: Bumuo at mag-download ng PDF",
        "billing.subtitle" to "Lumikha ng iyong sariling buwanang bill ng pagsasanay sa aralin.",
        "billing.template" to "Template",
        "billing.templateDescription" to "Paglalarawan",
        "billing.templateName" to "Pangalan ng template",
        "billing.templatePdf" to "PDF template",
        "billing.templateSection" to "Mag-upload ng template",
        "billing.title" to "Invoice",
        "billing.uploadTemplate" to "I-save ang Template",
        "calendar.agendaEmpty" to "Walang event ngayong buwan.",
        "calendar.agendaTitle" to "Mga event ngayong buwan",
        "calendar.cancelCancellation.confirm" to "Bawiin ang pagkansela",
        "calendar.cancelCancellation.message" to "Bawiin talaga ang pagkansela ng training “{title}” sa {date}?",
        "calendar.cancelCancellation.title" to "Bawiin ang pagkansela ng training",
        "calendar.cancellation.date" to "Petsa",
        "calendar.cancellation.description" to "Itinatago ang mga regular na oras ng pagsasanay.",
        "calendar.cancellation.fallbackTitle" to "Kinansela ang pagsasanay",
        "calendar.cancellation.reasonPlaceholder" to "Dahilan (opsyonal)",
        "calendar.cancellation.saving" to "Nagse-save...",
        "calendar.cancellation.submit" to "Idagdag",
        "calendar.cancellation.subtitle" to "Pagkansela ng pagsasanay",
        "calendar.cancellation.title" to "Kinansela ang pagsasanay",
        "calendar.cancellation.trainingGroups" to "Mga pangkat ng pagsasanay",
        "calendar.cancellation.untilOptional" to "Hanggang opsyonal",
        "calendar.customEvent.categoryPlaceholder" to "Kategorya (opsyonal)",
        "calendar.customEvent.description" to "Mga pulong ng distrito, sesyon, panloob na pagpupulong, ...",
        "calendar.customEvent.saving" to "Nagse-save...",
        "calendar.customEvent.submit" to "Lumikha",
        "calendar.customEvent.subtitleFallback" to "Sariling kaganapan",
        "calendar.customEvent.title" to "Sariling kaganapan",
        "calendar.customEvent.titlePlaceholder" to "Pamagat",
        "calendar.description" to "Mga araw ng pagsasanay, mga paligsahan sa club at mga laban sa liga sa buwanang view.",
        "calendar.eventTitles.match" to "Ligal na laban",
        "calendar.eventTitles.officialTournament" to "Paglahok sa tournament",
        "calendar.eventTitles.tournament" to "Tournament",
        "calendar.eventTitles.training" to "pagsasanay",
        "calendar.eyebrow" to "Kalendaryo ng club",
        "calendar.holidayTypes.holiday" to "Holiday",
        "calendar.holidayTypes.schoolHoliday" to "Mga bakasyon sa paaralan",
        "calendar.legend.customEvent" to "Kaganapan",
        "calendar.legend.holiday" to "Holiday",
        "calendar.legend.match" to "Ligal na laban",
        "calendar.legend.officialTournament" to "Pakikilahok",
        "calendar.legend.schoolHoliday" to "Mga bakasyon sa paaralan",
        "calendar.legend.tournament" to "Tournament",
        "calendar.legend.training" to "pagsasanay",
        "calendar.legend.trainingCancellation" to "Kinansela",
        "calendar.loadError" to "Hindi ma-load ang data ng kalendaryo.",
        "calendar.loading" to "Nilo-load ang datos ng kalendaryo...",
        "calendar.match.guest" to "Malayo",
        "calendar.match.home" to "Bahay",
        "calendar.noClub" to "Pumili muna ng club.",
        "calendar.options.subtitle" to "Mga pagkansela at sariling kaganapan",
        "calendar.options.title" to "Mga pagpipilian",
        "calendar.participants" to "{count} kalahok",
        "calendar.quickCancellation.confirm" to "Magdagdag ng pagkansela",
        "calendar.quickCancellation.message" to "Markahan ang \"{title}\" bilang pagkansela ng pagsasanay?",
        "calendar.quickCancellation.noGroups" to "Walang magagamit na mga grupo ng pagsasanay na may mga oras ng pagsasanay.",
        "calendar.quickCancellation.title" to "Pagkansela ng pagsasanay",
        "calendar.quickCancellation.trainingGroups" to "Mga apektadong grupo ng pagsasanay",
        "calendar.quickCancellation.useWholeRange" to "Mag-apply sa buong panahon ({start} hanggang {end})",
        "calendar.recurringTrainingTime" to "Regular na oras ng pagsasanay",
        "calendar.sources.customEvents" to "Sariling kaganapan",
        "calendar.sources.holidays" to "Holidays/school holidays",
        "calendar.sources.matches" to "Mga laban sa liga",
        "calendar.sources.officialTournaments" to "Mga paglahok sa tournament",
        "calendar.sources.tournaments" to "Mga paligsahan",
        "calendar.sources.trainingCancellations" to "Pagkansela ng pagsasanay",
        "calendar.sources.trainingDays" to "Mga araw ng pagsasanay",
        "calendar.sources.trainingTimes" to "Mga oras ng pagsasanay",
        "calendar.sourceWarning" to "Hindi ma-load ang {source}",
        "calendar.starts" to "Magsisimula ang {count}",
        "calendar.title" to "Kalendaryo",
        "calendar.today" to "Ngayon",
        "calendar.tournament.club" to "Club tournament",
        "calendar.tournament.open" to "Buksan ang paligsahan",
        "calendar.weekdays.friday" to "Biy",
        "calendar.weekdays.monday" to "Lun",
        "calendar.weekdays.saturday" to "Sab",
        "calendar.weekdays.sunday" to "Lin",
        "calendar.weekdays.thursday" to "Huw",
        "calendar.weekdays.tuesday" to "Mar",
        "calendar.weekdays.wednesday" to "Miy",
        "club.accessDenied" to "Hindi pinapayagan ang access sa club na ito.",
        "club.accessRequested" to "Naipadala na ang hiling sa access.",
        "club.accessRequestFailed" to "Hindi naipadala ang hiling sa access.",
        "club.accessRequestPending" to "Humiling ka na ng access sa club na ito. Maghintay lamang.",
        "club.create" to "Gumawa ng club",
        "club.createTitle" to "Gumawa ng club",
        "club.diary" to "Talaarawan ng pagsasanay",
        "club.errorLoadingRequests" to "Error sa pag-load ng mga nakabinbing hiling",
        "club.load" to "I-load",
        "club.members" to "Mga miyembro",
        "club.mobileSelectHint" to "Pumili muna ng club para magamit ang app sa smartphone.",
        "club.name" to "Pangalan ng club",
        "club.new" to "Bagong club",
        "club.noAccess" to "Wala ka pang pahintulot na ma-access ang club na ito.",
        "club.openAccessRequests" to "Mga nakabinbing hiling sa access",
        "club.openRequests" to "Mga nakabinbing hiling sa access",
        "club.requestAccess" to "Humiling ng access",
        "club.select" to "Pumili ng club",
        "club.selectPlaceholder" to "Pumili ng club...",
        "club.title" to "Klub",
        "club.trainingDiary" to "Talaarawan ng pagsasanay",
        "clubSettings.associationMemberNumber" to "Numero ng pagiging kasapi ng asosasyon",
        "clubSettings.associationMemberNumberPlaceholder" to "hal. SN-12-3456.",
        "clubSettings.autoFetchRankings" to "Awtomatikong bawiin ang mga ranggo",
        "clubSettings.greetingHint" to "Lumalabas ang text na ito sa tab na \"Welcome\" ng sheet ng ulat ng laro.",
        "clubSettings.greetingPlaceholder" to "Welcome text para sa mga laro sa bahay...",
        "clubSettings.greetingText" to "Text ng pagbati",
        "clubSettings.guestPlayers" to "Manlalaro at Doubles Guest Team",
        "clubSettings.guestTeam" to "Pangalan ng Guest Team",
        "clubSettings.homePlayers" to "Doble ang mga manlalaro at home team",
        "clubSettings.homeTeam" to "Pangalan ng Home Team",
        "clubSettings.loadFailed" to "Hindi ma-load ang mga setting",
        "clubSettings.memberDataQuality" to "Mga miyembro ng kalidad ng data",
        "clubSettings.memberDataQualityHint" to "Ang mga field na ito ay binibilang kung kinakailangan sa pahina ng miyembro. Maaari pa ring ilagay ang lahat ng mga patlang.",
        "clubSettings.myTischtennisFedNickname" to "Pagpapaikli ng asosasyon",
        "clubSettings.myTischtennisFedNicknamePlaceholder" to "hal. HeTTV",
        "clubSettings.myTischtennisRankings" to "myTischtennis TTR/QTTR ranggo",
        "clubSettings.myTischtennisRankingsHint" to "Awtomatikong pagbawi ng ranggo ng club para sa mga update sa TTR at QTTR ng mga miyembro.",
        "clubSettings.noClubSelected" to "Mangyaring pumili muna ng doktor.",
        "clubSettings.placeholders" to "Spacer",
        "clubSettings.rankingsUsesAssociationNumber" to "Ang numero ng club para sa pagkuha ng listahan ng ranggo ay tumutugma sa numero ng pagiging miyembro ng asosasyon sa itaas.",
        "clubSettings.requireCity" to "Kinakailangan ang Lokasyon",
        "clubSettings.requireEmail" to "Kinakailangan ang Email",
        "clubSettings.requirePhone" to "Kinakailangan ang Numero ng Telepono",
        "clubSettings.requirePostalCode" to "Kinakailangan ang zip code",
        "clubSettings.requireStreet" to "Kinakailangan ang Daan",
        "clubSettings.save" to "I-save",
        "clubSettings.saved" to "Nakaimbak",
        "clubSettings.saveFailed" to "Hindi ma-save",
        "clubSettings.settings" to "Mga setting",
        "clubSettings.title" to "Mga Setting ng Club",
        "clubSettings.trainingGroups" to "Mga pangkat ng pagsasanay.",
        "clubSettings.trainingTimes" to "Iskedyul ng pagsasanay",
        "common.actions" to "Mga aksyon",
        "common.active" to "Aktibo",
        "common.add" to "Magdagdag",
        "common.all" to "Lahat",
        "common.apply" to "Ilapat",
        "common.back" to "Bumalik",
        "common.cancel" to "Kanselahin",
        "common.choose" to "Pumili",
        "common.clear" to "Burahin",
        "common.close" to "Isara",
        "common.confirm" to "Kumpirmahin",
        "common.create" to "Lumikha",
        "common.date" to "Petsa",
        "common.days" to "Araw",
        "common.delete" to "Tanggalin",
        "common.description" to "Paglalarawan",
        "common.details" to "Details",
        "common.disabled" to "Hindi pinagana",
        "common.download" to "I-download",
        "common.edit" to "I-edit",
        "common.enabled" to "Pinagana",
        "common.filter" to "salain",
        "common.hours" to "Oras",
        "common.in" to "in",
        "common.inactive" to "Hindi aktibo",
        "common.loading" to "Naglo-load...",
        "common.min" to "min",
        "common.minutes" to "Minuto",
        "common.months" to "Buwan",
        "common.move" to "Ilipat",
        "common.name" to "pangalan",
        "common.new" to "Bago",
        "common.next" to "Susunod",
        "common.no" to "Hindi",
        "common.ok" to "OK",
        "common.optional" to "Optional",
        "common.period" to "Panahon",
        "common.previous" to "Nakaraan",
        "common.refresh" to "I-reload",
        "common.remove" to "Alisin",
        "common.required" to "Kinakailangan",
        "common.reset" to "I-reset",
        "common.save" to "I-save",
        "common.saved" to "Na-save",
        "common.saving" to "Sine-save...",
        "common.search" to "Maghanap",
        "common.select" to "Pumili",
        "common.status" to "katayuan",
        "common.submit" to "Ipasa",
        "common.time" to "Oras",
        "common.today" to "Ngayon",
        "common.type" to "Uri",
        "common.update" to "I-update",
        "common.view" to "Tingnan",
        "common.weeks" to "Linggo",
        "common.years" to "Taon",
        "common.yes" to "Oo",
        "courtDrawing.cancel" to "Kanselahin",
        "courtDrawing.durationMinutes" to "Tagal (minuto)",
        "courtDrawing.durationText" to "Tagal (teksto)",
        "courtDrawing.durationTextPlaceholder" to "hal. 2x5",
        "courtDrawing.group" to "Grupo",
        "courtDrawing.ok" to "OK",
        "courtDrawing.selectGroup" to "Pumili ng pangkat...",
        "courtDrawing.title" to "I-configure ang ehersisyo ng table tennis",
        "courtDrawingRender.animationRunning" to "Kasalukuyang ginagawa ang animation...",
        "courtDrawingRender.startAnimation" to "Simulan ang animation",
        "courtDrawingTool.addStroke" to "Magdagdag ng palo",
        "courtDrawingTool.backhand" to "Backhand",
        "courtDrawingTool.codeLabel" to "Code",
        "courtDrawingTool.completeFirstStroke" to "Tapusin ang unang palo",
        "courtDrawingTool.completeFirstStrokeHint" to "Piliin ang panimulang posisyon, side, spin at target. Pagkatapos ay lalabas ang graphic.",
        "courtDrawingTool.configureExercise" to "I-configure ang ehersisyo",
        "courtDrawingTool.counterSpin" to "Counter spin",
        "courtDrawingTool.forehand" to "Forehand",
        "courtDrawingTool.noAdditionalStrokes" to "Wala pang mga kasunod na palo.",
        "courtDrawingTool.preview" to "Silipin",
        "courtDrawingTool.previewHint" to "Lilitaw ang graphic kapag kumpleto na ang unang palo.",
        "courtDrawingTool.service" to "ihain:",
        "courtDrawingTool.serviceTitle" to "maglingkod",
        "courtDrawingTool.sidespin" to "Sidespin",
        "courtDrawingTool.sideUnderspin" to "Side underspin",
        "courtDrawingTool.spin" to "Iikot:",
        "courtDrawingTool.startLeft" to "kaliwa",
        "courtDrawingTool.startMiddle" to "gitna",
        "courtDrawingTool.startRight" to "kanan",
        "courtDrawingTool.stepAdditionalStrokes" to "4. Mga kasunod na palo",
        "courtDrawingTool.stepAdditionalStrokesHint" to "Opsyonal na magdagdag pa ng mga bola bilang listahan.",
        "courtDrawingTool.stepFirstStroke" to "2. Unang palo",
        "courtDrawingTool.stepFirstStrokeHint" to "Itakda ang side at spin para sa unang bola.",
        "courtDrawingTool.stepStartPosition" to "1. Panimulang posisyon",
        "courtDrawingTool.stepStartPositionHint" to "Saang posisyon ng serve magsisimula ang ehersisyo?",
        "courtDrawingTool.stepTarget" to "3. Target",
        "courtDrawingTool.stepTargetHint" to "Pumili ng target zone para sa unang palo.",
        "courtDrawingTool.strokeSide" to "Gilid",
        "courtDrawingTool.strokeTypeBlock" to "Block",
        "courtDrawingTool.strokeTypeChopDefense" to "Chop defense",
        "courtDrawingTool.strokeTypeCounter" to "Kontra",
        "courtDrawingTool.strokeTypeFlip" to "pitik",
        "courtDrawingTool.strokeTypeLabel" to "Uri ng palo",
        "courtDrawingTool.strokeTypeLobDefense" to "Lob defense",
        "courtDrawingTool.strokeTypePush" to "Itulak",
        "courtDrawingTool.strokeTypeSmash" to "Basagin",
        "courtDrawingTool.strokeTypeTopspin" to "Top spin",
        "courtDrawingTool.targetBackhandHalfLong" to "backhand half-long",
        "courtDrawingTool.targetBackhandLong" to "backhand long",
        "courtDrawingTool.targetBackhandShort" to "backhand short",
        "courtDrawingTool.targetForehandHalfLong" to "forehand half-long",
        "courtDrawingTool.targetForehandLong" to "forehand long",
        "courtDrawingTool.targetForehandShort" to "forehand short",
        "courtDrawingTool.targetMiddleHalfLong" to "middle half-long",
        "courtDrawingTool.targetMiddleLong" to "middle long",
        "courtDrawingTool.targetMiddleShort" to "middle short",
        "courtDrawingTool.targetPosition" to "Posisyon ng target:",
        "courtDrawingTool.targetPositionLabel" to "Posisyon ng target",
        "courtDrawingTool.title" to "Guhit ng ehersisyo sa table tennis",
        "courtDrawingTool.titleLabel" to "Pamagat",
        "courtDrawingTool.topspin" to "Topspin",
        "courtDrawingTool.toTarget" to "papunta sa",
        "courtDrawingTool.underspin" to "Underspin",
        "createClub.clubExists" to "Umiiral na ang asosasyon.",
        "createClub.clubName" to "pangalan ng club",
        "createClub.create" to "Gumawa ng club",
        "createClub.nameRequired" to "Mangyaring bigyan ang asosasyon ng isang makabuluhang pangalan.",
        "createClub.title" to "Gumawa ng club",
        "createClub.unknownError" to "May naganap na hindi kilalang error, subukang muli",
        "csvImport.cancel" to "Kanselahin",
        "csvImport.import" to "Ini-import",
        "csvImport.title" to "Iskedyul ng Pag-import",
        "csvImport.uploadCsvFile" to "Mag-upload ng CSV file",
        "dialogExamples.composableConfirmDetails" to "Ito ay isang halimbawa ng useConfirm Composable.",
        "dialogExamples.composableConfirmMessage" to "Gusto mo bang magpatuloy?",
        "dialogExamples.composableConfirmTitle" to "gamitinConfirm halimbawa",
        "dialogExamples.composableDialogText" to "Ginagamit ng dialog na ito ang useDialog Composable.",
        "dialogExamples.composableDialogText2" to "Ginagawa nitong mas madaling pamahalaan!",
        "dialogExamples.composableDialogTitle" to "Dialogue na may useDialog Composable",
        "dialogExamples.composableUsage" to "Composable na Paggamit",
        "dialogExamples.confirmDeleteMessage" to "Sigurado ka bang gusto mong tanggalin ang gift card na ito?",
        "dialogExamples.confirmDeleteTitle" to "Kumpirmahin ang Tanggalin",
        "dialogExamples.confirmDialogs" to "Mga dialog ng kumpirmasyon",
        "dialogExamples.confirmWarningDetails" to "Ang pagkilos na ito ay hindi maaaring i-undo.",
        "dialogExamples.confirmWarningMessage" to "Sigurado ka bang gusto mong magpatuloy?",
        "dialogExamples.error" to "Error",
        "dialogExamples.errorDetails" to "Pakisubukang muli mamaya.",
        "dialogExamples.errorMessage" to "May naganap na error.",
        "dialogExamples.fullscreenModal" to "Fullscreen Modal",
        "dialogExamples.fullscreenModalText" to "Ito ay isang fullscreen na dialog.",
        "dialogExamples.fullscreenModalText2" to "Sinasakop nito ang halos buong screen (90vw x 90vh).",
        "dialogExamples.fullscreenModalTitle" to "Fullscreen Modal Dialog",
        "dialogExamples.info" to "Impormasyon",
        "dialogExamples.infoDialogs" to "Mga diyalogo ng impormasyon",
        "dialogExamples.infoMessage" to "Ito ay isang mensahe ng impormasyon.",
        "dialogExamples.information" to "impormasyon",
        "dialogExamples.largeModal" to "Malaking Modal",
        "dialogExamples.largeModalText" to "Ito ay isang mahusay na modal dialogue.",
        "dialogExamples.largeModalText2" to "Nag-aalok ito ng mas maraming espasyo para sa nilalaman.",
        "dialogExamples.largeModalTitle" to "Malaking Modal Dialogue",
        "dialogExamples.minimizedDialogs" to "Mga pinaliit na dialog:",
        "dialogExamples.modalDialogs" to "Mga Modal na Dialogue",
        "dialogExamples.multipleDialogs" to "Maramihang Dialog",
        "dialogExamples.nonModalDialog" to "Di-modal na diyalogo",
        "dialogExamples.nonModalDialogs" to "Mga di-modal na diyalogo",
        "dialogExamples.nonModalText" to "Ito ay isang non-modal na dialogue.",
        "dialogExamples.nonModalText2" to "Maaari mo itong ilipat at buksan ang ilan nang sabay-sabay!",
        "dialogExamples.nonModalTitle" to "Di-modal na diyalogo",
        "dialogExamples.scrollArea" to "Mag-scroll area para sa maraming content...",
        "dialogExamples.secondNonModalText" to "Isa pang non-modal na dialogue!",
        "dialogExamples.secondNonModalTitle" to "Pangalawang di-modal na diyalogo",
        "dialogExamples.simpleModal" to "Simpleng Modal",
        "dialogExamples.simpleModalText" to "Ito ay isang simpleng modal dialog na may katamtamang laki.",
        "dialogExamples.simpleModalText2" to "Mag-click sa labas o sa X para isara.",
        "dialogExamples.simpleModalTitle" to "Simpleng modal dialogue",
        "dialogExamples.success" to "Achievement",
        "dialogExamples.successDetails" to "Nai-save na ang lahat ng pagbabago.",
        "dialogExamples.successMessage" to "Matagumpay na nakumpleto ang operasyon!",
        "dialogExamples.title" to "Mga halimbawa ng diyalogo",
        "dialogExamples.useConfirmExample" to "gamitinConfirm halimbawa",
        "dialogExamples.useDialogExample" to "useDialog halimbawa",
        "dialogExamples.warning" to "Mga pag-iingat",
        "dialogExamples.warningDetails" to "Ang ilang mga patlang ay maaaring hindi ganap na punan.",
        "dialogExamples.warningMessage" to "Maaaring makatulong sa iyo ang mga sumusunod na link:",
        "dialogManager.close" to "Isara",
        "dialogManager.minimize" to "i-minimize",
        "dialogManager.noMinimizedDialogs" to "Walang pinaliit na dialog",
        "dialogs.confirm.cancel" to "Kanselahin",
        "dialogs.confirm.ok" to "OK",
        "dialogs.confirm.title" to "Kumpirmasyon",
        "dialogs.info.ok" to "OK",
        "dialogs.info.title" to "impormasyon",
        "diary.activeTrainingDay" to "Aktibong araw ng pagsasanay",
        "diary.activities" to "Mga aktibidad",
        "diary.activity" to "Aktibidad",
        "diary.activityDrawing" to "Guhit ng aktibidad",
        "diary.activityImage" to "Larawan ng aktibidad",
        "diary.activityNotFound" to "Hindi nahanap ang aktibidad. Mangyaring pumili mula sa listahan.",
        "diary.activityOrTimeblock" to "Aktibidad / time block",
        "diary.activityPlaceholder" to "Aktibidad",
        "diary.activityRequired" to "Mangyaring maglagay ng aktibidad.",
        "diary.addActivity" to "Magdagdag ng aktibidad",
        "diary.addGroup" to "Magdagdag ng grupo",
        "diary.addGroupActivity" to "Magdagdag ng aktibidad ng grupo",
        "diary.addGroupButton" to "+ Grupo",
        "diary.addTimeblock" to "Time block",
        "diary.all" to "Lahat",
        "diary.applySuggestion" to "Ilapat ang mungkahi",
        "diary.assignParticipants" to "Magtalaga ng mga kalahok",
        "diary.assignParticipantsForGroupActivity" to "Magtalaga ng mga kalahok para sa aktibidad ng grupo",
        "diary.assignShort" to "Italaga",
        "diary.bookAccident" to "Magtala ng aksidente",
        "diary.confirmDelete" to "Kumpirmahin ang pagbura",
        "diary.confirmDeleteDate" to "Sigurado ka bang buburahin ang petsang ito?",
        "diary.confirmDeleteDateDetails" to "Mabubura rin ang lahat ng kaugnay na datos.",
        "diary.confirmDeleteGroup" to "Sigurado ka bang buburahin ang grupong \"{name}\"?",
        "diary.createDate" to "Lumikha ng petsa",
        "diary.createDrawing" to "Gumawa ng guhit ng ehersisyo",
        "diary.createGroups" to "Lumikha ng mga grupo",
        "diary.createNew" to "Lumikha ng bago",
        "diary.createNewDate" to "Lumikha ng bagong petsa",
        "diary.date" to "Petsa",
        "diary.dateCannotBeDeleted" to "Hindi mabubura ang petsa",
        "diary.dateCannotBeDeletedDetails" to "May laman pa (plano ng pagsasanay, mga kalahok, aktibidad, aksidente o mga tala).",
        "diary.dateNoLongerCurrent" to "Hindi na kasalukuyan ang napiling petsa. Pakisubukan muli.",
        "diary.delete" to "Burahin",
        "diary.deleteDate" to "Burahin ang petsa",
        "diary.deleteGroup" to "Burahin ang grupo",
        "diary.duration" to "Tagal",
        "diary.durationExampleLong" to "hal. 2x7 o 3*5",
        "diary.durationExampleShort" to "hal. 2x7",
        "diary.durationMinutes" to "Tagal (min)",
        "diary.editActivity" to "I-edit ang aktibidad",
        "diary.editGroupActivity" to "I-edit ang aktibidad ng grupo",
        "diary.editTrainingTimes" to "I-edit ang oras ng pagsasanay",
        "diary.errorCreatingActivity" to "Error sa paggawa ng aktibidad",
        "diary.errorCreatingGroups" to "Error sa paggawa ng mga grupo",
        "diary.errorDeletingGroup" to "Error sa pagbura ng grupo",
        "diary.errorLoadingPredefinedActivities" to "Error sa pag-load ng paunang natukoy na mga aktibidad",
        "diary.errorMarkingForm" to "Error sa pagmamarka ng pormularyo ng kasapi",
        "diary.errorOccurred" to "May naganap na error. Pakisubukang muli.",
        "diary.existingGroups" to "Mga kasalukuyang grupo",
        "diary.filterAbsent" to "Liban",
        "diary.filterAll" to "Lahat",
        "diary.filterExcused" to "May paalam",
        "diary.filterPresent" to "Dumalo",
        "diary.filterTest" to "Pagsubok",
        "diary.formHandedOver" to "Naibigay na ang pormularyo ng kasapi",
        "diary.formMarkedAsHandedOver" to "Namarkahan bilang naibigay na ang pormularyo ng kasapi",
        "diary.freeActivities" to "Libreng aktibidad",
        "diary.gallery" to "Gallery ng mga kasapi",
        "diary.galleryCreating" to "Ginagawa ang gallery…",
        "diary.group" to "Grupo...",
        "diary.groupDeletedSuccessfully" to "Matagumpay na nabura ang grupo!",
        "diary.groupManagement" to "Pamamahala ng grupo",
        "diary.groupsCreated" to "Matagumpay na nalikha ang {count} grupo!",
        "diary.groupsLabel" to "Mga grupo",
        "diary.groupsSection" to "Mga grupo",
        "diary.leader" to "Tagapanguna",
        "diary.min" to "Min",
        "diary.minutes" to "Minuto",
        "diary.mustCreateAtLeastTwoGroups" to "Sa unang paggawa, kailangan ng hindi bababa sa 2 grupo!",
        "diary.nextAppointment" to "Susunod na schedule",
        "diary.noActiveTrainingDay" to "Walang napiling araw ng pagsasanay.",
        "diary.noEntries" to "Walang entry",
        "diary.noFreeActivitiesYet" to "Wala pang naitalang libreng aktibidad.",
        "diary.noParticipants" to "Walang kalahok para sa araw ng pagsasanay na ito.",
        "diary.numberOfGroups" to "Bilang ng grupo",
        "diary.oneGroupAdded" to "Matagumpay na naidagdag ang 1 grupo!",
        "diary.openPlanItems" to "{count} bukas",
        "diary.openPlanItemsLabel" to "Katayuan ng plano",
        "diary.overallActivity" to "Kabuuang aktibidad",
        "diary.participants" to "Mga kalahok",
        "diary.participantStatusCancelled" to "Kinansela",
        "diary.participantStatusExcused" to "May paalam",
        "diary.participantStatusNone" to "Walang katayuan",
        "diary.planActivitiesCount" to "Mga aktibidad sa plano",
        "diary.planAddHint" to "Magdagdag ng bagong item sa plano gamit ang mga aksyon sa itaas.",
        "diary.planEmptyState" to "Wala pang nakalagay sa plano ng pagsasanay.",
        "diary.quickAdd" to "+ Mabilis na idagdag",
        "diary.quickCreate" to "Mabilis na idagdag",
        "diary.quickCreateFailed" to "Hindi malikha ang araw ng training.",
        "diary.quickCreateNoSlot" to "Walang nahanap na libreng araw ng training (ayon sa iskedyul ng grupo, isang taon pasulong).",
        "diary.searchParticipants" to "Maghanap ng kalahok",
        "diary.selectGroup" to "Pumili ng grupo...",
        "diary.selectGroupAndActivity" to "Mangyaring pumili ng grupo at maglagay ng aktibidad.",
        "diary.selectParticipantAndNote" to "Mangyaring pumili ng kalahok at maglagay ng tala.",
        "diary.selectTags" to "Pumili ng mga tag",
        "diary.selectTrainingGroup" to "Pumili ng grupo ng pagsasanay",
        "diary.selectTrainingGroupPlaceholder" to "Mangyaring pumili...",
        "diary.showImage" to "Ipakita ang larawan/guhit",
        "diary.skipSuggestion" to "Magpatuloy nang walang mungkahi",
        "diary.standardActivities" to "Mga karaniwang aktibidad",
        "diary.standardActivityAddError" to "Hindi maidagdag ang karaniwang aktibidad.",
        "diary.standardDurationShort" to "Min",
        "diary.startTime" to "Oras ng simula",
        "diary.statusEmpty" to "Wala pang laman ang araw ng pagsasanay na ito.",
        "diary.statusInProgress" to "Bahagyang naihanda ang araw ng pagsasanay na ito.",
        "diary.statusOpenShort" to "Bukas",
        "diary.statusReady" to "Naayos na ang oras at plano ng pagsasanay.",
        "diary.statusReadyShort" to "Handa",
        "diary.suggestion" to "Mungkahi",
        "diary.timeblock" to "Time block",
        "diary.timeblocksCount" to "Mga time block",
        "diary.title" to "Talaarawan ng pagsasanay",
        "diary.today" to "Ngayon",
        "diary.trainingDayAsPDF" to "I-download ang araw ng pagsasanay bilang PDF",
        "diary.trainingDayAsPDFShort" to "Araw ng pagsasanay PDF",
        "diary.trainingDayChecklist" to "Checklist ng pagkumpleto",
        "diary.trainingDaySection" to "Araw ng pagsasanay",
        "diary.trainingDaySummaryPdfShort" to "Buod ng kalahok bilang PDF",
        "diary.trainingEnd" to "Pagtatapos ng pagsasanay",
        "diary.trainingPlan" to "Plano ng pagsasanay",
        "diary.trainingPlanAsPDF" to "Plano ng pagsasanay bilang PDF",
        "diary.trainingPlanPdfShort" to "Flow plan bilang PDF",
        "diary.trainingStart" to "Simula ng pagsasanay",
        "diary.trainingTimesUpdated" to "Matagumpay na na-update ang oras ng pagsasanay.",
        "diary.trainingWindow" to "Oras ng pagsasanay",
        "diary.trainingWindowUnset" to "Hindi pa naitakda",
        "diary.unassignedPlanItems" to "{count} hindi nakatalaga",
        "diary.updateTimes" to "I-update ang oras",
        "errors.ERROR_ACTIVITY_IMAGE_DELETE_FAILED" to "Error sa pagtanggal ng larawan.",
        "errors.ERROR_BAD_REQUEST" to "Di-wastong kahilingan.",
        "errors.ERROR_CLUB_ALREADY_EXISTS" to "Umiiral na ang asosasyon.",
        "errors.ERROR_CLUB_NAME_REQUIRED" to "Mangyaring bigyan ang asosasyon ng isang makabuluhang pangalan.",
        "errors.ERROR_CLUB_NAME_TOO_SHORT" to "Mangyaring bigyan ang asosasyon ng isang makabuluhang pangalan.",
        "errors.ERROR_CLUB_NOT_FOUND" to "Hindi nahanap ang club.",
        "errors.ERROR_DIARY_ACTIVITY_PARTICIPANTS_UPDATE_FAILED" to "Error sa pag-update ng mga kalahok sa aktibidad",
        "errors.ERROR_DIARY_ASSIGN_ALL_PARTICIPANTS_FAILED" to "Error sa pagtatalaga ng lahat ng kalahok",
        "errors.ERROR_DIARY_ASSIGN_GROUP_FAILED" to "Error sa pagmamapa ng pangkat",
        "errors.ERROR_DIARY_DATE_NOT_FOUND" to "Hindi nahanap ang petsa",
        "errors.ERROR_DIARY_DATE_UPDATED" to "Hindi (hindi na) available ang petsa. Na-update ang tagapili ng petsa. Pakisubukang muli.",
        "errors.ERROR_DIARY_GROUP_ASSIGNMENT_UPDATE_FAILED" to "Error sa pag-update ng assignment ng pangkat",
        "errors.ERROR_DIARY_IMAGE_LOAD_FAILED" to "NABIGO MAGLOAD NG LARAWAN",
        "errors.ERROR_DIARY_MEMBER_CREATE_FAILED" to "Error sa paggawa ng miyembro",
        "errors.ERROR_DIARY_NO_EXERCISE_DATA" to "Walang natanggap na data ng ehersisyo",
        "errors.ERROR_DIARY_NO_PARTICIPANTS" to "Walang available na kalahok para sa araw ng pagsasanay na ito.",
        "errors.ERROR_DIARY_PARTICIPANT_ASSIGN_FAILED" to "Hindi maitalaga ang mga kalahok.",
        "errors.ERROR_DIARY_PARTICIPANT_GROUP_ASSIGNMENT_UPDATE_FAILED" to "Error sa pag-update ng assignment ng pangkat ng kalahok",
        "errors.ERROR_DIARY_PDF_GENERATION_FAILED" to "Error sa pagbuo ng PDF.",
        "errors.ERROR_DIARY_STATS_LOAD_FAILED" to "Nabigong i-load ang mga istatistika.",
        "errors.ERROR_FORBIDDEN" to "Tinanggihan ang pahintulot.",
        "errors.ERROR_GROUP_ALREADY_EXISTS" to "Umiiral na ang isang pangkat na may ganitong pangalan.",
        "errors.ERROR_GROUP_CANNOT_RENAME_PRESET" to "Hindi mapapalitan ng pangalan ang mga default na grupo.",
        "errors.ERROR_GROUP_INVALID_PRESET_TYPE" to "Di-wastong uri ng preset.",
        "errors.ERROR_GROUP_NAME_REQUIRED" to "Mangyaring magpasok ng pangalan ng pangkat.",
        "errors.ERROR_GROUP_NOT_FOUND" to "Hindi nahanap ang grupo.",
        "errors.ERROR_INTERNAL_SERVER_ERROR" to "May naganap na panloob na error sa server.",
        "errors.ERROR_INVALID_PASSWORD" to "Maling password.",
        "errors.ERROR_LOG_NOT_FOUND" to "Hindi nahanap ang log entry",
        "errors.ERROR_LOGIN_FAILED" to "Nabigo ang pag-login.",
        "errors.ERROR_MEMBER_ALREADY_EXISTS" to "Umiiral na ang miyembro",
        "errors.ERROR_MEMBER_FIRSTNAME_REQUIRED" to "Kinakailangan ang pangalan.",
        "errors.ERROR_MEMBER_LASTNAME_REQUIRED" to "Kinakailangan ang apelyido.",
        "errors.ERROR_MEMBER_NOT_FOUND" to "Hindi nahanap ang mga miyembro",
        "errors.ERROR_MEMBER_TRANSFER_BULK_FAILED" to "Error sa maramihang paglilipat: {message}",
        "errors.ERROR_MYTISCHTENNIS_ACCOUNT_NOT_LINKED" to "Walang myTischtennis account na naka-link.",
        "errors.ERROR_MYTISCHTENNIS_CAPTCHA_REQUIRED" to "Kinakailangan ang CAPTCHA. Gumagamit na ngayon ang MyTischtennis ng CAPTCHA kapag nagla-log in. Mangyaring mag-log in nang direkta sa mytischtennis.de upang malutas ang CAPTCHA, o makipag-ugnayan sa suporta.",
        "errors.ERROR_MYTISCHTENNIS_INVALID_PASSWORD" to "Di-wastong myTischtennis password.",
        "errors.ERROR_MYTISCHTENNIS_LOGIN_FAILED" to "Nabigo ang pag-login. Pakisuri ang iyong mga kredensyal.",
        "errors.ERROR_MYTISCHTENNIS_NO_PASSWORD_SAVED" to "Walang na-save na password at nag-expire ang session. Mangyaring ipasok ang iyong password.",
        "errors.ERROR_MYTISCHTENNIS_PASSWORD_NOT_SAVED" to "Walang na-save na password. Mangyaring ipasok ang iyong password.",
        "errors.ERROR_MYTISCHTENNIS_SESSION_EXPIRED" to "Nag-expire na ang session. Mangyaring mag-log in muli.",
        "errors.ERROR_MYTISCHTENNIS_USER_NOT_FOUND" to "myTischtennis user ay hindi nahanap.",
        "errors.ERROR_NOT_FOUND" to "Hindi nahanap.",
        "errors.ERROR_OFFICIAL_TOURNAMENT_PDF_UPLOAD" to "Error sa pag-upload ng PDF.",
        "errors.ERROR_SESSION_EXPIRED" to "Nag-expire na ang session.",
        "errors.ERROR_TEAM_LINK_TO_LEAGUE_REQUIRED" to "Mangyaring magtalaga muna ng liga sa koponan upang maproseso ang mga dokumento.",
        "errors.ERROR_TEAM_NOT_LINKED_TO_LEAGUE" to "Ang pangkat na ito ay hindi nakatalaga sa anumang liga.",
        "errors.ERROR_TEAM_PDF_LOAD_FAILED" to "Nabigong i-load ang PDF",
        "errors.ERROR_TEAM_STATS_LOAD_FAILED" to "Hindi ma-load ang mga istatistika",
        "errors.ERROR_TOURNAMENT_CLASS_NAME_REQUIRED" to "Mangyaring magpasok ng pangalan ng klase!",
        "errors.ERROR_TOURNAMENT_NO_DATE" to "Walang available na petsa ng tournament!",
        "errors.ERROR_TOURNAMENT_NO_PARTICIPANTS" to "Walang nahanap na kalahok sa araw ng pagsasanay para sa petsang ito!",
        "errors.ERROR_TOURNAMENT_NO_TRAINING_DAY" to "Walang nahanap na araw ng pagsasanay para kay {date}!",
        "errors.ERROR_TOURNAMENT_NO_VALID_PARTICIPANTS" to "Walang nakitang valid na kalahok sa araw ng pagsasanay para sa petsang ito!",
        "errors.ERROR_TOURNAMENT_NOT_FOUND" to "Hindi nahanap ang tournament",
        "errors.ERROR_TOURNAMENT_PDF_GENERATION_FAILED" to "Error sa Pagbuo ng PDF",
        "errors.ERROR_TOURNAMENT_SELECT_FIRST" to "Mangyaring pumili muna ng paligsahan.",
        "errors.ERROR_TRAINING_STATS_LOAD_FAILED" to "Error sa paglo-load ng mga istatistika ng pagsasanay",
        "errors.ERROR_UNAUTHORIZED" to "Hindi awtorisado.",
        "errors.ERROR_UNKNOWN_ERROR" to "May naganap na hindi kilalang error.",
        "errors.ERROR_USER_NOT_FOUND" to "Hindi Nahanap ang User.",
        "errors.ERROR_VALIDATION_FAILED" to "Nabigong pagpapatunay",
        "errors.SUCCESS_DIARY_GROUP_ASSIGNMENT_UPDATED" to "Na-update ang Group Mapping",
        "errors.SUCCESS_DIARY_MEMBER_CREATED" to "Ang miyembrong \"{name}\" ay matagumpay na nagawa at naidagdag!",
        "errors.SUCCESS_OFFICIAL_TOURNAMENT_PDF_UPLOAD" to "Matagumpay ang pag-upload.",
        "home.authenticatedFeatures.keepDiary" to "Panatilihin ang isang talaarawan sa pagsasanay",
        "home.authenticatedFeatures.keepDiaryDesc" to "Idokumento ang mga aktibidad sa pagsasanay, mga kalahok, mga aktibidad at mga tala para sa bawat araw ng pagsasanay.",
        "home.authenticatedFeatures.manageMembers" to "Pamahalaan ang mga miyembro",
        "home.authenticatedFeatures.manageMembersDesc" to "Pamahalaan ang iyong mga miyembro ng club, lumikha ng mga grupo ng pagsasanay at subaybayan ang lahat ng mga kalahok.",
        "home.authenticatedFeatures.manageTournaments" to "Pamahalaan ang mga paligsahan",
        "home.authenticatedFeatures.manageTournamentsDesc" to "Lumikha ng panloob at bukas na mga paligsahan, mag-import ng mga opisyal na paligsahan at pamahalaan ang mga entry.",
        "home.authenticatedFeatures.myTischtennisIntegration" to "Pagsasama ng MyTable Tennis",
        "home.authenticatedFeatures.myTischtennisIntegrationDesc" to "Awtomatikong i-synchronize ang mga resulta at istatistika ng laro sa MyTischtennis.de.",
        "home.authenticatedFeatures.pdfExport" to "Pag-export ng PDF",
        "home.authenticatedFeatures.pdfExportDesc" to "I-export ang mga araw ng pagsasanay bilang PDF kasama ng mga kalahok, aktibidad at istatistika.",
        "home.authenticatedFeatures.statistics" to "Mga istatistika at pagsusuri",
        "home.authenticatedFeatures.statisticsDesc" to "Kumuha ng detalyadong pagsasanay at mga pangkalahatang-ideya sa pakikilahok pati na rin ang mga istatistika ng aktibidad.",
        "home.authenticatedFeatures.teamManagement" to "Pamamahala ng pangkat",
        "home.authenticatedFeatures.teamManagementDesc" to "Pamahalaan ang mga koponan, liga, fixture at mga resulta para sa iyong club.",
        "home.authenticatedFeatures.trainingGroups" to "Mga pangkat at oras ng pagsasanay",
        "home.authenticatedFeatures.trainingGroupsDesc" to "Ayusin ang mga pangkat ng pagsasanay, tukuyin ang mga oras ng pagsasanay at pamahalaan ang mga takdang-aralin ng grupo.",
        "home.faq" to "Mga madalas itanong",
        "home.faqFree.answer" to "Oo, maaari kang magsimula nang libre. Maaaring sumunod ang mga extension sa ibang pagkakataon.",
        "home.faqFree.question" to "Libre ba itong gamitin?",
        "home.faqInstallation.answer" to "Hindi, ito ay isang web application. Direkta mong ginagamit ito sa browser – sa desktop, tablet at smartphone.",
        "home.faqInstallation.question" to "Kailangan ko ba ng pag-install?",
        "home.faqMyTischtennis.answer" to "Oo, pagkatapos ng setup, awtomatikong nagsi-synchronize ang application sa MyTischtennis.de at nag-import ng mga resulta at istatistika ng laro.",
        "home.faqMyTischtennis.question" to "Awtomatikong gumagana ba ang MyTischtennis integration?",
        "home.faqPermissions.answer" to "May apat na tungkulin: Admin, Coach, Team Leader at Miyembro. Ang bawat tungkulin ay may mga partikular na pahintulot na maaaring i-customize.",
        "home.faqPermissions.question" to "Paano gumagana ang sistema ng awtorisasyon?",
        "home.faqPrivacy.answer" to "Umaasa kami sa ekonomiya ng data, mga transparent na pag-apruba, pag-access na nakabatay sa tungkulin at kumpletong log ng aktibidad. Ang application ay sumusunod sa GDPR.",
        "home.faqPrivacy.question" to "Paano ang tungkol sa proteksyon ng data?",
        "home.faqTournaments.answer" to "Maaari mong pamahalaan ang mga panloob na paligsahan, bukas na mga paligsahan at mga opisyal na paligsahan (hal. mula sa mga asosasyon). Maaaring ma-import ang mga opisyal na paligsahan.",
        "home.faqTournaments.question" to "Aling mga uri ng tournament ang sinusuportahan?",
        "home.faqTrainingGroups.answer" to "Oo, maaari kang lumikha ng mga grupo ng pagsasanay, tukuyin ang mga oras ng pagsasanay at magtalaga ng mga miyembro sa mga grupo. Ang talaarawan sa pagsasanay ay awtomatikong nagmumungkahi ng mga angkop na grupo at oras.",
        "home.faqTrainingGroups.question" to "Maaari ko bang pamahalaan ang mga pangkat at oras ng pagsasanay?",
        "home.features.activityLog" to "Log ng aktibidad",
        "home.features.activityLogDesc" to "Kumpletuhin ang pag-log ng lahat ng mga aksyon para sa transparency at traceability.",
        "home.features.keepDiary" to "Panatilihin ang isang talaarawan sa pagsasanay",
        "home.features.keepDiaryDesc" to "Idokumento ang nilalaman, saklaw at pagdalo ng bawat yunit – naiintindihan at nakabalangkas.",
        "home.features.manageMembers" to "Pamahalaan ang mga miyembro",
        "home.features.manageMembersDesc" to "Lumikha ng mga profile ng miyembro, bumuo ng mga grupo at panatilihing napapanahon ang mga katayuan sa pakikipag-ugnayan at pag-apruba.",
        "home.features.myTischtennisIntegration" to "Pagsasama ng MyTable Tennis",
        "home.features.myTischtennisIntegrationDesc" to "Awtomatikong pag-synchronize sa MyTischtennis.de para sa mga resulta at istatistika ng laro.",
        "home.features.officialTournaments" to "Mga opisyal na paligsahan",
        "home.features.officialTournamentsDesc" to "Mag-import at pamahalaan ang mga opisyal na paligsahan, pamahalaan ang mga entry at resulta.",
        "home.features.organizeSchedules" to "Ayusin ang mga plano sa laro",
        "home.features.organizeSchedulesDesc" to "Magplano ng mga laro, paligsahan at kaganapan kabilang ang mga grupo, round at resulta.",
        "home.features.pdfExport" to "Pag-export ng PDF",
        "home.features.pdfExportDesc" to "I-export ang mga araw ng pagsasanay bilang PDF kasama ng mga kalahok, aktibidad at istatistika.",
        "home.features.permissionSystem" to "Sistema ng awtorisasyon",
        "home.features.permissionSystemDesc" to "Pag-access na nakabatay sa tungkulin (admin, coach, team captain, miyembro) na may mga indibidwal na pahintulot.",
        "home.features.predefinedActivities" to "Mga paunang natukoy na aktibidad",
        "home.features.predefinedActivitiesDesc" to "Gumamit ng mga template para sa mga paulit-ulit na pagsasanay at pabilisin ang iyong dokumentasyon.",
        "home.features.security" to "Seguridad at GDPR",
        "home.features.securityDesc" to "Ang arkitektura na angkop sa proteksyon ng data, mga pag-apruba ng miyembro at transparent na pag-access.",
        "home.features.statistics" to "Mga istatistika at pagsusuri",
        "home.features.statisticsDesc" to "Tumanggap ng mga pangkalahatang-ideya ng pagsasanay at pakikilahok, kilalanin ang pag-unlad at partikular na magplano.",
        "home.features.teamManagement" to "Pamamahala ng pangkat",
        "home.features.teamManagementDesc" to "Pamahalaan ang mga koponan, liga, fixture at mga resulta para sa iyong club.",
        "home.features.trainingGroups" to "Mga pangkat at oras ng pagsasanay",
        "home.features.trainingGroupsDesc" to "Ayusin ang mga pangkat ng pagsasanay, tukuyin ang mga oras ng pagsasanay at pamahalaan ang mga takdang-aralin ng grupo.",
        "home.forWhom" to "Para kanino ang training diary?",
        "home.forWhomText" to "Ang TrainingDiary ay ang komprehensibong platform para sa mga club, departamento at coaching team. Pinagsasama nito ang pamamahala ng miyembro sa mga grupo at oras ng pagsasanay, detalyadong talaarawan sa pagsasanay, komprehensibong organisasyon ng paligsahan (panloob, bukas at opisyal na mga torneo), pamamahala ng koponan na may pagsasama-sama ng liga, pag-synchronize ng MyTischtennis, makabuluhang istatistika at pagsusuri pati na rin ang isang flexible na sistema ng awtorisasyon sa isang modernong web application. Sa pamamagitan ng malinaw na mga tungkulin (admin, tagapagsanay, pinuno ng pangkat, miyembro) at mga indibidwal na awtorisasyon, ang mga responsable ay nagpapanatili ng kontrol, habang ang mga miyembro ay maaaring lumahok sa isang self-determinadong paraan. Tamang-tama para sa koponan, raketa at indibidwal na sports - mula junior hanggang advanced na antas. Sumusunod ang GDPR sa mga transparent na pag-apruba at buong log ng aktibidad.",
        "home.haveAccount" to "May account na ako",
        "home.heroFeatures.memberManagement" to "Pamamahala ng miyembro at pangkat",
        "home.heroFeatures.myTischtennis" to "Pagsasama ng MyTable Tennis",
        "home.heroFeatures.statistics" to "Mga istatistika at pagsusuri",
        "home.heroFeatures.teamManagement" to "Pamamahala ng Koponan at Mga Liga",
        "home.heroFeatures.tournaments" to "Mga paligsahan (panloob, bukas, opisyal)",
        "home.heroFeatures.trainingDiary" to "Diary ng pagsasanay at dokumentasyon",
        "home.heroFeatures.trainingGroups" to "Mga grupo ng pagsasanay at oras ng pagsasanay",
        "home.heroSubtitle" to "Ang TrainingDiary ay ang komprehensibong solusyon para sa mga club: pamamahala ng miyembro, mga grupo ng pagsasanay, mga oras ng pagsasanay, talaarawan ng pagsasanay, organisasyon ng paligsahan, pamamahala ng koponan, pagsasama ng MyTable Tennis, mga istatistika at higit pa - sumusunod sa GDPR at madaling gamitin.",
        "home.heroTitle" to "Pamamahala ng club, pagpaplano ng pagsasanay at mga paligsahan - lahat sa isang lugar",
        "home.howItWorks" to "Ito ay kung paano ito gumagana",
        "home.registerNow" to "Magrehistro ngayon nang libre",
        "home.rolesAndPrivacy" to "Mga tungkulin, pahintulot, at GDPR",
        "home.startFree" to "Magsimula nang libre",
        "home.step1.description" to "Lumikha ng isang account nang libre at i-activate ito sa pamamagitan ng email.",
        "home.step1.title" to "Magrehistro",
        "home.step2.description" to "Lumikha ng iyong club, mag-imbita ng mga miyembro at mag-set up ng mga grupo.",
        "home.step2.title" to "Gumawa ng club",
        "home.step3.description" to "Magplano ng mga appointment, magdokumento ng pagsasanay at subaybayan ang pag-unlad.",
        "home.step3.title" to "Plano at dokumento",
        "home.welcome" to "Maligayang pagdating sa talaarawan ng pagsasanay",
        "home.welcomeBack" to "Maligayang pagbabalik! Matagumpay kang naka-log in.",
        "home.whatCanYouDo" to "Ano ang maaari mong gawin sa talaarawan ng pagsasanay?",
        "imageDialog.close" to "Isara",
        "imageDialog.noImageAvailable" to "Walang available na larawan",
        "imageDialog.title" to "Screen",
        "imageViewer.camera" to "Camera",
        "imageViewer.delete" to "Tanggalin",
        "imageViewer.deleteImage" to "Tanggalin ang larawan",
        "imageViewer.nextImage" to "Susunod na larawan",
        "imageViewer.noImageAvailable" to "Walang available na larawan",
        "imageViewer.previousImage" to "nakaraang larawan",
        "imageViewer.rotateLeft" to "I-rotate 90° Kaliwa",
        "imageViewer.rotateRight" to "I-rotate 90° Pakanan",
        "imageViewer.selectFiles" to "Piliin ang Mga File",
        "imageViewer.setAsPrimary" to "itakda bilang pangunahing imahe",
        "imageViewer.setAsPrimaryButton" to "Itakda ang itinatampok na larawan",
        "imprint.contact" to "Makipag-ugnayan",
        "imprint.serviceProvider" to "Pangalan ng service provider",
        "imprint.title" to "Legal na paunawa",
        "languages.de" to "Deutsch (Aleman)",
        "languages.de-CH" to "Schwiizerdütsch (Swiss Aleman)",
        "languages.en-AU" to "English (Ingles (AU))",
        "languages.en-GB" to "English (Ingles (GB))",
        "languages.en-US" to "English (Ingles (US))",
        "languages.es" to "Español (Espanyol)",
        "languages.fil" to "Filipino",
        "languages.fr" to "Français (Pranses)",
        "languages.it" to "Italiano (Italyano)",
        "languages.ja" to "日本語 (Hapones)",
        "languages.pl" to "Polski (Polako)",
        "languages.th" to "Thai (ไทย)",
        "languages.tl" to "Tagalog",
        "languages.zh" to "中文 (Intsik)",
        "legal.backToHome" to "Bumalik sa homepage",
        "legal.imprint" to "Legal na paunawa",
        "legal.privacyPolicy" to "Patakaran sa privacy",
        "logs.actions" to "Mga aksyon",
        "logs.all" to "Lahat",
        "logs.apiRequests" to "Mga Kahilingan sa API",
        "logs.applyFilters" to "Ilapat ang filter",
        "logs.backend" to "Mga Setting ng Backend",
        "logs.clearFilters" to "Ibalik",
        "logs.cronJobs" to "Mga Trabaho sa Cron",
        "logs.details" to "Details",
        "logs.displayed" to "ipinapakita",
        "logs.displayedLabel" to "Tiningnan",
        "logs.error" to "Error",
        "logs.errorLabel" to "Error",
        "logs.errorLoading" to "Error sa paglo-load ng mga log",
        "logs.executionTime" to "Oras ng pagpapatupad",
        "logs.from" to "Mula sa",
        "logs.httpMethod" to "Paraan ng HTTP",
        "logs.justNow" to "ngayon lang",
        "logs.loadingLogs" to "Naglo-load ng mga log...",
        "logs.logDetails" to "Detalye ng Log",
        "logs.logDetailsLabels.error" to "Error",
        "logs.logDetailsLabels.executionTime" to "Oras ng pagpapatupad",
        "logs.logDetailsLabels.ip" to "IP",
        "logs.logDetailsLabels.method" to "Pamamaraan",
        "logs.logDetailsLabels.path" to "landas",
        "logs.logDetailsLabels.requestBody" to "Request Body",
        "logs.logDetailsLabels.responseBody" to "Response Body",
        "logs.logDetailsLabels.schedulerJob" to "Trabaho ng Scheduler",
        "logs.logDetailsLabels.status" to "katayuan",
        "logs.logDetailsLabels.time" to "Oras",
        "logs.logDetailsLabels.type" to "Uri",
        "logs.logType" to "Uri ng Log",
        "logs.logTypeLabels.api_request" to "Kahilingan sa API",
        "logs.logTypeLabels.cron_job" to "Cron Job",
        "logs.logTypeLabels.manual" to "Manwal",
        "logs.logTypeLabels.scheduler" to "scheduler",
        "logs.manual" to "Mga Manu-manong Pagpapatupad",
        "logs.method" to "Pamamaraan",
        "logs.minutesAgo" to "{n} minuto ang nakalipas",
        "logs.mytischtennis" to "myTischtennis",
        "logs.next" to "Susunod",
        "logs.of" to "sa pamamagitan ng",
        "logs.ownBackend" to "Sariling backend",
        "logs.page" to "Pahina",
        "logs.path" to "landas",
        "logs.pathPlaceholder" to "hal. /api/diary",
        "logs.previous" to "Nakaraang",
        "logs.recordsFound" to "Nahanap ang mga tala",
        "logs.scheduler" to "scheduler",
        "logs.secondsAgo" to "{n} segundo ang nakalipas",
        "logs.status" to "katayuan",
        "logs.subtitle" to "Pangkalahatang-ideya ng lahat ng kahilingan, tugon at pagpapatupad ng API",
        "logs.successfullyLoaded" to "Matagumpay na na-load",
        "logs.time" to "Oras",
        "logs.title" to "Mga Log ng System",
        "logs.to" to "Upang",
        "logs.total" to "Kabuuan",
        "logs.type" to "Uri",
        "matchReport.analyzeNuscore" to "pagsusuri ng nuscore",
        "matchReport.createLocalCopy" to "Lumikha ng lokal na kopya",
        "matchReport.hideAnalyzer" to "Itago ang Analyzer",
        "matchReportApi.availablePlayers" to "Mga Magagamit na Manlalaro",
        "matchReportApi.bothTeamsAppeared" to "Ang dalawang koponan ay naglaban-laban",
        "matchReportApi.clickToRemove" to "I-click upang alisin",
        "matchReportApi.completed" to "sarado",
        "matchReportApi.completion" to "Pagkumpleto",
        "matchReportApi.endTime" to "oras ng pagtatapos",
        "matchReportApi.errorLoading" to "Error sa paglo-load ng data",
        "matchReportApi.general" to "Heneral",
        "matchReportApi.greeting" to "Pagtanggap",
        "matchReportApi.guestLineup" to "Setup ng bisita",
        "matchReportApi.guestPin" to "PIN Guest Club",
        "matchReportApi.guestTeamNotAppeared" to "Hindi nakipagkumpitensya ang guest team na si {team}",
        "matchReportApi.homeLineup" to "Pag-install sa bahay",
        "matchReportApi.homePin" to "PIN Home Club",
        "matchReportApi.homeTeamNotAppeared" to "Ang home team {team} ay hindi lumaban",
        "matchReportApi.loading" to "Nilo-load ang data ng ulat ng pagtutugma...",
        "matchReportApi.noLineupData" to "Walang available na data sa pag-install",
        "matchReportApi.notAppeared" to "Hindi lumahok para sa lahat",
        "matchReportApi.pending" to "Nakabinbin",
        "matchReportApi.pinInput" to "PIN input",
        "matchReportApi.playSystem" to "Sistema ng paglalaro",
        "matchReportApi.rank" to "Bilog",
        "matchReportApi.result" to "Pagpasok ng mga resulta",
        "matchReportApi.retry" to "Subukan muli",
        "matchReportApi.selectedPlayers" to "Napiling Manlalaro",
        "matchReportApi.setCurrentTime" to "Itakda ang kasalukuyang oras",
        "matchReportApi.signLineup" to "Pag-install ng sign",
        "matchReportApi.startTime" to "oras ng pagsisimula",
        "matchReportApi.status" to "katayuan",
        "matchReportApi.vs" to "vs",
        "matchReportHeaderActions.copied" to "Kinopya!",
        "matchReportHeaderActions.copyError" to "Error sa pagkopya ng pin",
        "matchReportHeaderActions.copyPin" to "Kopyahin ang PIN",
        "matchReportHeaderActions.copyPinTitle" to "Kopyahin sa clipboard",
        "matchReportHeaderActions.insertPin" to "INSERT IYONG PIN",
        "matchReportHeaderActions.insertPinTitle" to "Auto insert",
        "matchReportHeaderActions.noPinAvailable" to "Walang PIN na AVAILABLE",
        "memberActivities.activity" to "Mag-ehersisyo",
        "memberActivities.all" to "Lahat",
        "memberActivities.close" to "Isara",
        "memberActivities.dates" to "Data",
        "memberActivities.frequency" to "Dalas",
        "memberActivities.last3Months" to "Huling 3 buwan",
        "memberActivities.last4Weeks" to "huling 2 buwan",
        "memberActivities.last6Months" to "noong nakaraang kalahating taon",
        "memberActivities.lastYear" to "Noong nakaraang taon",
        "memberActivities.loading" to "Naglo-load ng mga ehersisyo...",
        "memberActivities.more" to "iba pa",
        "memberActivities.noActivities" to "Walang nakitang ehersisyo sa napiling panahon.",
        "memberActivities.period" to "tagal ng panahon",
        "memberActivities.showLess" to "magpakita ng mas kaunti",
        "memberActivities.title" to "Mga ehersisyo ni",
        "memberGallery.imageSize" to "Laki ng Larawan",
        "memberGallery.loading" to "Nilo-load ang gallery...",
        "memberGallery.noImage" to "Walang Imahe",
        "memberGallery.noMembersWithImages" to "Walang nakitang miyembro na may mga larawan.",
        "memberGallery.title" to "Gallery ng mga Miyembro",
        "memberGallery.titleWithDate" to "Gallery ng Miyembro - Mag-click sa isang imahe upang idagdag bilang isang kalahok",
        "memberNotes.add" to "Idagdag",
        "memberNotes.memberImage" to "Miyembro ng Larawan",
        "memberNotes.newNote" to "Bagong tala",
        "memberNotes.notes" to "Mga Tala",
        "memberNotes.phone" to "Telepono no.",
        "memberNotes.selectTags" to "Piliin ang Mga Tag",
        "memberNotes.tags" to "Tags",
        "memberNotes.title" to "Mga tala para sa",
        "members.actions" to "Mga aksyon",
        "members.active" to "Aktibo",
        "members.activeMembers" to "Mga aktibong kasapi",
        "members.addEmail" to "Magdagdag ng email address",
        "members.addGroup" to "Magdagdag ng grupo...",
        "members.addPhone" to "Magdagdag ng numero ng telepono",
        "members.address" to "Address",
        "members.adultReleaseApproved" to "Aprubado para sa matatanda",
        "members.adultReserveApproved" to "Pang-adultong reserba",
        "members.adults" to "Adulto (20+)",
        "members.age" to "Edad",
        "members.ageFromPlaceholder" to "mula",
        "members.ageGroup" to "Pangkat ng edad",
        "members.ageRange" to "Edad mula - hanggang",
        "members.ageToPlaceholder" to "hanggang",
        "members.batchFormsMarkedEmpty" to "Walang mga hindi na-verify na form sa kasalukuyang pagpili.",
        "members.batchFormsMarkedSuccess" to "Minarkahan ang {count} (mga) form bilang na-verify.",
        "members.batchMarkedRegularEmpty" to "Walang trial na miyembro sa kasalukuyang pagpili.",
        "members.batchMarkedRegularSuccess" to "Minarkahan ang {count} (mga) miyembro ng pagsubok bilang regular.",
        "members.batchPartialFailure" to "{success} ay nagtagumpay, {failed} ay nabigo.",
        "members.birthdate" to "Petsa ng kapanganakan",
        "members.bulkActions" to "Mga bulk action",
        "members.camera" to "Camera",
        "members.change" to "Baguhin",
        "members.city" to "Lungsod",
        "members.clearFields" to "Burahin ang mga field",
        "members.clearFilters" to "I-reset ang mga filter",
        "members.clickTtRequestAction" to "Humiling ng pagiging kwalipikado ng click-TT",
        "members.clickTtRequestConfirm" to "Simulan ang awtomatikong Click-TT na kahilingan para sa {name}?",
        "members.clickTtRequestError" to "Hindi maisumite ang kahilingan sa Click-TT.",
        "members.clickTtRequestFailedLog" to "Nabigo ang kahilingan sa Click-TT",
        "members.clickTtRequestHint" to "Ang kahilingan ay awtomatikong pinoproseso ng backend Click-TT workflow.",
        "members.clickTtRequestPending" to "Kasalukuyang isinasagawa ang kahilingan sa Click-TT",
        "members.clickTtRequestPendingShort" to "Nakabinbin...",
        "members.clickTtRequestShort" to "I-click ang TT",
        "members.clickTtRequestSuccess" to "Mangyaring mag-sign in sa click-tt at isumite ang kahilingan doon.",
        "members.clickTtRequestTitle" to "Simulan ang kahilingan sa Click-TT",
        "members.clickTtSubmitted" to "Naisumite ang Click-TT",
        "members.closeEditor" to "Isara ang editor",
        "members.composeEmail" to "Gumawa ng email",
        "members.contact" to "Makipag-ugnayan",
        "members.copyContactSummary" to "Kopyahin ang buod ng contact",
        "members.copyContactSummarySuccess" to "Nakopya ang buod ng contact sa clipboard.",
        "members.copyEmails" to "Kopyahin ang mga email",
        "members.copyEmailsEmpty" to "Walang mga email address sa kasalukuyang pagpili.",
        "members.copyEmailsSuccess" to "Nakopya ang listahan ng email sa clipboard.",
        "members.copyPhones" to "Kopyahin ang mga telepono",
        "members.copyPhonesEmpty" to "Walang mga numero ng telepono sa kasalukuyang pagpili.",
        "members.copyPhonesSuccess" to "Nakopya ang listahan ng telepono sa clipboard.",
        "members.create" to "Lumikha",
        "members.createNewMember" to "Lumikha ng bagong kasapi",
        "members.dataIssueAddress" to "Kulang ang address",
        "members.dataIssueBirthdate" to "Kulang ang petsa ng kapanganakan",
        "members.dataIssueCity" to "Kulang ang lungsod",
        "members.dataIssueEmail" to "Kulang ang email",
        "members.dataIssueGender" to "Hindi malinaw ang kasarian",
        "members.dataIssuePhone" to "Kulang ang telepono",
        "members.dataIssuePostalCode" to "Kulang ang postal code",
        "members.dataIssueStreet" to "Kulang ang kalye",
        "members.dataIssueTrainingGroup" to "Kulang ang grupo ng pagsasanay",
        "members.dataQuality" to "Kalidad ng datos",
        "members.dataQualityComplete" to "Kumpleto ang datos",
        "members.deactivateMember" to "I-deactivate ang kasapi",
        "members.deactivateMemberConfirm" to "Sigurado ka bang ide-deactivate si \"{name}\"?",
        "members.deactivateMemberTitle" to "I-deactivate ang kasapi",
        "members.deleteImageConfirm" to "Gusto mo ba talagang tanggalin ang larawang ito?",
        "members.deleteImageTitle" to "Tanggalin ang larawan",
        "members.editHint" to "Mag-click sa isang row para buksan ang editor.",
        "members.editMember" to "I-edit ang kasapi",
        "members.editorAssignTrainingGroupHint" to "Mangyaring magtalaga ng kahit isang grupo ng pagsasanay.",
        "members.editorCreateHint" to "Lumikha ng bagong miyembro at direktang kumuha ng mga detalye ng contact.",
        "members.editorEditHint" to "I-edit ang mga detalye para sa {name}.",
        "members.editorRecommendedEntry" to "Inirerekomendang entry",
        "members.emailAddress" to "Email address",
        "members.emailAddressShort" to "Email",
        "members.emails" to "Mga email address",
        "members.errorAddingToGroup" to "Error sa pagdagdag sa grupo",
        "members.errorDeactivatingMember" to "Error sa pag-deactivate ng miyembro",
        "members.errorDeletingImage" to "Hindi mabura ang larawan",
        "members.errorLoadingImage" to "Error sa pag-load ng larawan",
        "members.errorLoadingMembers" to "Nabigong i-load ang listahan ng miyembro.",
        "members.errorLoadingTrainingParticipations" to "Error sa pag-load ng paglahok sa pagsasanay",
        "members.errorMarkingForm" to "Error sa pagmamarka ng form.",
        "members.errorRemovingFromGroup" to "Error sa pag-alis mula sa grupo",
        "members.errorRemovingTestMembership" to "Error sa pag-alis ng trial membership.",
        "members.errorRotatingImage" to "Error sa pag-ikot ng larawan",
        "members.errorSavingMember" to "Error sa pag-save ng miyembro",
        "members.errorSettingPrimaryImage" to "Hindi maitakda ang pangunahing larawan",
        "members.errorTransfer" to "Error sa paglipat",
        "members.errorUpdatingRatings" to "Error sa pag-update ng mga TTR/QTTR value",
        "members.errorUploadingImage" to "Hindi ma-upload ang larawan",
        "members.exercises" to "Mga ehersisyo",
        "members.exportCsv" to "I-export ang CSV",
        "members.exportCsvFile" to "member-selection.csv",
        "members.exportEmails" to "Email",
        "members.exportMembersSelected" to "mga miyembro na kasalukuyang napili",
        "members.exportPhones" to "Telepono",
        "members.exportPreview" to "I-export ang preview",
        "members.exportPreviewEmpty" to "Walang miyembro sa kasalukuyang pagpili",
        "members.exportPreviewNames" to "Silipin",
        "members.exportReachableByEmail" to "na may email address",
        "members.exportReachableByPhone" to "na may numero ng telepono",
        "members.firstName" to "Pangalan",
        "members.formHandedOver" to "Naibigay na ang pormularyo ng kasapi",
        "members.formMarkedAsHandedOver" to "Namarkahan bilang naibigay na ang pormularyo ng kasapi.",
        "members.gender" to "Kasarian",
        "members.genderDiverse" to "Iba pa",
        "members.genderFemale" to "Babae",
        "members.genderMale" to "Lalaki",
        "members.genderUnknown" to "Hindi alam",
        "members.generatePhoneList" to "Gumawa ng listahan ng telepono",
        "members.groupPhotoCrop" to "Iproseso ang group photo",
        "members.groupPhotoCropSaved" to "Na-save ang larawan ng miyembro mula sa group photo.",
        "members.image" to "Larawan",
        "members.imageDeleted" to "Nabura na ang larawan.",
        "members.imageInternet" to "Larawan (net?)",
        "members.imagePreview" to "Preview ng larawan ng miyembro",
        "members.imageUpdated" to "Na-update na ang larawan",
        "members.inactive" to "hindi aktibo",
        "members.inactiveMembers" to "Mga hindi aktibong kasapi",
        "members.j11" to "U11",
        "members.j13" to "U13",
        "members.j15" to "U15",
        "members.j17" to "J17 (17 pababa)",
        "members.j19" to "U19",
        "members.j9" to "U9",
        "members.lastName" to "Apelyido",
        "members.lastTrainingFilter" to "Huling training",
        "members.lastTrainingFilterHasDate" to "May petsa",
        "members.lastTrainingFilterHint" to "Table: kasalukuyang season sa AK. Buong detalye (dalawang season, huling training, participations) kapag-hover sa hilera.",
        "members.lastTrainingFilterNoDate" to "Walang huling training",
        "members.lastTrainingFilterNotInTraining" to "Flag na “hindi na nagte-training”",
        "members.loadingMembers" to "Nilo-load ang mga miyembro...",
        "members.m11" to "G11",
        "members.m13" to "G13",
        "members.m15" to "G15",
        "members.m19" to "G19",
        "members.m9" to "G9",
        "members.markFormReceived" to "Markahan ang form na na-verify",
        "members.markFormsForSelection" to "I-verify ang mga form para sa pagpili",
        "members.markRegular" to "Markahang regular",
        "members.markRegularForSelection" to "Markahan ang pagpili ng regular",
        "members.memberDeactivated" to "Na-deactivate na ang kasapi",
        "members.memberDetails" to "Mga detalye ng miyembro",
        "members.memberFormHandedOver" to "Naibigay na ang pormularyo ng kasapi",
        "members.memberImage" to "Larawan ng kasapi",
        "members.memberImages" to "Mga larawan ng miyembro",
        "members.memberInfo" to "Impormasyon ng kasapi",
        "members.memberScope" to "Saklaw ng miyembro",
        "members.missingTtrHistoryId" to "Walang naka-save na myTischtennis ID",
        "members.name" to "Apelyido, Pangalan",
        "members.newMember" to "Bagong kasapi",
        "members.noAddressShort" to "Walang address",
        "members.noEmailShort" to "Walang email",
        "members.noGroupsAssigned" to "Walang grupong nakatalaga",
        "members.noGroupsAvailable" to "Walang available na grupo",
        "members.noOpenTasks" to "Walang bukas na gawain",
        "members.noPhoneShort" to "Walang phone",
        "members.notes" to "Mga tala",
        "members.noTestMembership" to "Hindi na trial member",
        "members.notInTrainingTooltip" to "Walang paglahok para sa {weeks} na linggo ng pagsasanay",
        "members.onlyActiveMembers" to "Tanging mga aktibong miyembro lamang ang ilalabas",
        "members.openTasks" to "Buksan ang mga gawain",
        "members.parent" to "Magulang",
        "members.parentFallback" to "Magulang",
        "members.parentName" to "Pangalan (hal. ina, ama)",
        "members.phoneList" to "ListahanNgTelepono.pdf",
        "members.phoneListForSelection" to "Listahan ng telepono para sa pagpili",
        "members.phoneListSelectionFile" to "phone-list-selection.pdf",
        "members.phoneNumber" to "Numero ng telepono",
        "members.phoneNumberShort" to "Telepono",
        "members.phones" to "Mga numero ng telepono",
        "members.picsInInternetAllowed" to "Pinapayagan ang larawan sa internet",
        "members.postalCode" to "Postal code",
        "members.previewLastTraining" to "Huling pagsasanay",
        "members.previewNoLastTraining" to "Wala pang partisipasyon",
        "members.primary" to "Pangunahin",
        "members.primaryImageUpdated" to "Na-update na ang pangunahing larawan.",
        "members.remove" to "Alisin",
        "members.resultsVisible" to "nakikita ang mga miyembro",
        "members.rowTooltipSeparator" to "·",
        "members.scopeActive" to "Aktibo",
        "members.scopeActiveDataIncomplete" to "Aktibo + hindi kumpleto ang datos",
        "members.scopeActiveTest" to "Aktibo + pagsubok",
        "members.scopeAll" to "Lahat",
        "members.scopeDataIncomplete" to "Hindi kumpleto ang datos",
        "members.scopeInactive" to "Hindi aktibo",
        "members.scopeNeedsForm" to "Hindi na-verify ang form",
        "members.scopeNotTraining" to "Hindi na training",
        "members.scopeTest" to "Pagsubok",
        "members.search" to "Maghanap",
        "members.searchAndFilter" to "Paghahanap at mga filter",
        "members.searchPlaceholder" to "Maghanap ayon sa pangalan, lungsod, telepono o email",
        "members.selectFile" to "Pumili ng file",
        "members.showInactiveMembers" to "Ipakita ang mga hindi aktibong miyembro",
        "members.showTrainingParticipationsColumn" to "Ipakita ang column na « Training participations »",
        "members.showTtrHistory" to "Ipakita ang TTR history",
        "members.sixOrMoreParticipations" to "6 o higit pang paglahok sa pagsasanay",
        "members.sortAge" to "Edad",
        "members.sortBirthday" to "Birthday",
        "members.sortBy" to "Pagbukud-bukurin ayon sa",
        "members.sortFirstName" to "Pangalan",
        "members.sortLastName" to "Apelyido",
        "members.sortLastTraining" to "Huling pagsasanay",
        "members.sortOpenTasks" to "Buksan ang mga gawain",
        "members.sortQttr" to "Halaga ng QTTR",
        "members.status" to "katayuan",
        "members.street" to "Kalye",
        "members.subtitle" to "Direktang maghanap, mag-filter at mag-edit ng mga miyembro.",
        "members.taskActionMarkRegular" to "Markahang regular",
        "members.taskActionRequest" to "Kahilingan",
        "members.taskActionReview" to "Buksan",
        "members.taskActionVerify" to "I-verify",
        "members.taskAssignTrainingGroup" to "Magtalaga ng grupo ng pagsasanay",
        "members.taskCheckClickTt" to "Suriin ang pagiging karapat-dapat sa Click-TT",
        "members.taskCheckDataQuality" to "Suriin ang kalidad ng datos",
        "members.taskCheckTrainingStatus" to "Suriin ang katayuan ng pagsasanay",
        "members.taskReviewTrialStatus" to "Suriin ang katayuan ng pagsubok",
        "members.taskVerifyForm" to "I-verify ang form",
        "members.testMember" to "Pagsubok",
        "members.testMembers" to "Mga kasaping pansubok",
        "members.testMembership" to "Trial membership",
        "members.testMembershipRemoved" to "Inalis na ang trial membership.",
        "members.threeOrMoreParticipations" to "3 o higit pang paglahok sa pagsasanay",
        "members.title" to "Mga kasapi",
        "members.toggleSortDirection" to "I-toggle ang direksyon ng pag-uuri",
        "members.trainingGroups" to "Mga grupo ng pagsasanay",
        "members.trainingParticipations" to "Paglahok sa pagsasanay",
        "members.transferErrorTitle" to "Error sa paglilipat",
        "members.transferMembers" to "Ilipat ang mga miyembro",
        "members.transferSuccessTitle" to "Matagumpay ang paglipat",
        "members.ttAdult" to "Adulto (hindi youth sa cutoff)",
        "members.ttAgeClassCol" to "Edad (TT)",
        "members.ttFilterGroupJ" to "Babae at lalaki (halo)",
        "members.ttFilterGroupM" to "Babae lamang",
        "members.ttrQttr" to "TTR/QTTR",
        "members.ttSeasonCurrentTag" to "kasalukuyan",
        "members.ttSeasonFilter" to "Season (cutoff)",
        "members.ttSeasonNextTag" to "susunod",
        "members.ttStichtagHint" to "Cutoff Enero 1 (DTTB). Lalaki: J lang. Babae: J at M.",
        "members.updateRatings" to "I-update ang TTR/QTTR mula sa myTischtennis",
        "members.updating" to "Nag-a-update...",
        "members.visibleMembers" to "Mga nakikitang miyembro",
        "members.wantsToPlay" to "Gustong maglaro",
        "memberSelection.close" to "Isara",
        "memberSelection.deselectAll" to "Alisin sa pagkakapili ang lahat",
        "memberSelection.generatePdf" to "Bumuo ng PDF",
        "memberSelection.members" to "Mga miyembro",
        "memberSelection.noRecommendations" to "Walang nakitang katugmang rekomendasyon.",
        "memberSelection.recommendations" to "Mga rekomendasyon",
        "memberSelection.selectAll" to "Piliin ang Lahat",
        "memberSelection.title" to "Pumili ng Mga Miyembro",
        "memberTransfer.additionalField" to "Dagdag na field",
        "memberTransfer.additionalFieldExample1" to "Karagdagang field (hal. client_id)",
        "memberTransfer.additionalFieldExample2" to "Karagdagang field (hal. client_secret)",
        "memberTransfer.analyzeAndImport" to "Pag-aralan at Pag-import ng Template",
        "memberTransfer.availablePlaceholders" to "Magagamit na mga placeholder",
        "memberTransfer.bulkMode" to "Bulk import mode (ilipat ang lahat ng miyembro nang sabay-sabay)",
        "memberTransfer.bulkModeActive" to "Aktibo ang mode",
        "memberTransfer.bulkModeActiveDescription" to "Tinutukoy ng template ang format para sa isang miyembro. Ang mga miyembro ay awtomatikong nakabalot sa isang array. Maaari mong opsyonal na tukuyin ang panlabas na istraktura sa \"template ng bulk wrapper\" (tingnan sa ibaba).",
        "memberTransfer.bulkModeHint" to "Kung pinagana, ang lahat ng miyembro sa isang kahilingan ay ililipat bilang isang array.",
        "memberTransfer.bulkWrapperDescription" to "Opsyonal, maaari mong tukuyin ang panlabas na istraktura kung saan ilalagay ang array ng miyembro. Gamitin ang PLACEHOLDER_MEMBERS bilang mga placeholder para sa hanay ng mga miyembro.",
        "memberTransfer.bulkWrapperNote" to "Tandaan: Kung walang tinukoy na template ng wrapper, awtomatikong ginagamit ang array ng mga miyembro.",
        "memberTransfer.bulkWrapperTemplate" to "Bulk wrapper template (opsyonal)",
        "memberTransfer.bulkWrapperWhat" to "Ano ang template ng bulk wrapper?",
        "memberTransfer.configDeleted" to "Matagumpay na natanggal ang configuration!",
        "memberTransfer.configInfo" to "I-configure ang mga setting para sa paglilipat ng mga miyembro sa mga external na system dito. Ang mga setting na ito ay nai-save sa isang batayan na partikular sa club.",
        "memberTransfer.configSaved" to "Matagumpay na na-save ang configuration",
        "memberTransfer.confirmDelete" to "Tanggalin ang configuration",
        "memberTransfer.confirmDeleteMessage" to "Sigurado ka bang gusto mong i-refund ang transaksyong ito?",
        "memberTransfer.deleteConfig" to "Tanggalin ang configuration",
        "memberTransfer.deleting" to "paglilinis...",
        "memberTransfer.errorDeleting" to "Error sa pag-clear",
        "memberTransfer.errorLoading" to "Error sa Paglo-load ng Config",
        "memberTransfer.errorParsingTemplate" to "Error sa pag-parse ng template",
        "memberTransfer.errorSaving" to "Error habang nagse-save",
        "memberTransfer.example" to "Halimbawa",
        "memberTransfer.exampleFormData" to "Halimbawa ng format ng data ng form",
        "memberTransfer.exampleJson" to "Halimbawa ng JSON format (inirerekomenda)",
        "memberTransfer.exampleXml" to "Halimbawa ng XML format",
        "memberTransfer.formDataHint" to "Para sa data ng form, gumamit ng simpleng text template na may mga linya sa format na feldname=placeholder:",
        "memberTransfer.httpMethod" to "Paraan ng HTTP",
        "memberTransfer.importTemplate" to "Mag-import ng template mula sa buong halimbawa",
        "memberTransfer.importTemplateHint" to "Isama ang isang buong sample na template (na may mga sample na miyembro). Awtomatikong makikita ng system ang template ng miyembro at template ng bulk wrapper.",
        "memberTransfer.importTemplatePlaceholder" to "Maglagay ng buong halimbawang template dito, hal.:\nLBRACE\n  Disyembre: [\n    LBRACE\n      D .firstNameD.: D .MaxD.,\n      D. ApelyidoD.: D. MustermannD.,\n      DMail: DMaxATexample.comMail: DMaxATexample.com\n    RBRACE\n  ]\nRBRACE",
        "memberTransfer.invalidJson" to "Pakitiyak na wastong JSON ang ginagamit.",
        "memberTransfer.invalidTemplateFormat" to "Di-wastong format ng template",
        "memberTransfer.loadingConfig" to "Nilo-load ang configuration...",
        "memberTransfer.loginConfiguration" to "Pag-login Configuration",
        "memberTransfer.loginData" to "Data ng pag-login",
        "memberTransfer.loginEndpointHint" to "Opsyonal: Kaugnay na landas sa pag-login endpoint (hal. /api/auth/login)",
        "memberTransfer.loginEndpointPath" to "Path ng Endpoint sa Pag-login",
        "memberTransfer.loginEndpointPlaceholder" to "/api/auth/login",
        "memberTransfer.loginFormat" to "Format ng Pag-login",
        "memberTransfer.membersArray" to "Array ng Miyembro",
        "memberTransfer.password" to "Password",
        "memberTransfer.passwordEncrypted" to "Ang mga password ay naka-imbak na naka-encrypt.",
        "memberTransfer.placeholderHint" to "Mag-click sa isang placeholder upang ipasok ito sa kasalukuyang posisyon ng cursor:",
        "memberTransfer.placeholders.address" to "Pinagsamang Address",
        "memberTransfer.placeholders.addressDesc" to "Pinagsamang kalye at bayan",
        "memberTransfer.placeholders.birthDate" to "Petsa ng kapanganakan",
        "memberTransfer.placeholders.birthDateAlt" to "Petsa ng kapanganakan (luma)",
        "memberTransfer.placeholders.birthDateAltDesc" to "Petsa ng kapanganakan sa format na YYYY-MM-DD (alternatibong pangalan)",
        "memberTransfer.placeholders.birthDateDesc" to "sa format na YYYY-MM-DD",
        "memberTransfer.placeholders.city" to "Lokasyon",
        "memberTransfer.placeholders.cityDesc" to "Lugar ng Paninirahan",
        "memberTransfer.placeholders.email" to "Email Address",
        "memberTransfer.placeholders.emailDesc" to "Email address ng miyembro",
        "memberTransfer.placeholders.firstName" to "Pangalan",
        "memberTransfer.placeholders.firstNameDesc" to "Pangalan ng Miyembro",
        "memberTransfer.placeholders.fullName" to "Buong pangalan",
        "memberTransfer.placeholders.fullNameDesc" to "Pinagsama ang pangalan at apelyido",
        "memberTransfer.placeholders.gender" to "kasarian",
        "memberTransfer.placeholders.genderDesc" to "Kasarian ng miyembro",
        "memberTransfer.placeholders.lastName" to "Apelyido",
        "memberTransfer.placeholders.lastNameDesc" to "Apelyido ng Miyembro",
        "memberTransfer.placeholders.phone" to "Numero ng Telepono",
        "memberTransfer.placeholders.phoneDesc" to "Telepono ng Miyembro ng Staff",
        "memberTransfer.placeholders.qttr" to "halaga ng QTTR",
        "memberTransfer.placeholders.qttrDesc" to "Halaga ng QTTR ng Miyembro",
        "memberTransfer.placeholders.street" to "kalye",
        "memberTransfer.placeholders.streetDesc" to "Numero ng kalye at bahay",
        "memberTransfer.placeholders.ttr" to "halaga ng TTR",
        "memberTransfer.placeholders.ttrDesc" to "Halaga ng TTR ng Miyembro",
        "memberTransfer.save" to "I-save",
        "memberTransfer.saving" to "Nagse-save...",
        "memberTransfer.serverBaseUrl" to "URL ng Server Base",
        "memberTransfer.serverBaseUrlHint" to "Base URL ng server (hal. https://example.com)",
        "memberTransfer.serverBaseUrlPlaceholder" to "https://example.com",
        "memberTransfer.serverConfiguration" to "Server-configuration",
        "memberTransfer.templateDescription" to "Tinutukoy ng template ang format kung saan inililipat ang data ng miyembro sa panlabas na sistema. Gumamit ng mga placeholder gaya ng PLACEHOLDER_FIRSTNAME upang awtomatikong palitan ang data.",
        "memberTransfer.templateImported" to "Matagumpay na na-import ang template.",
        "memberTransfer.templateImportedBulk" to "May nakitang template ng miyembro, pinagana ang bulk mode.",
        "memberTransfer.templateImportedDetails" to "Ang mga template ng miyembro at bulk wrapper ay nakita at nakumpleto.",
        "memberTransfer.templateImportedSingle" to "May nakitang template ng isang miyembro.",
        "memberTransfer.templateTip" to "Tip: Ilagay ang cursor sa gustong lugar sa template at mag-click sa isang placeholder para ipasok ito. Ang mga placeholder ay awtomatikong pinapalitan ng aktwal na data ng miyembro kapag inilipat ang mga ito.",
        "memberTransfer.templateWhat" to "Ano ang isang template?",
        "memberTransfer.title" to "Paglipat ng Miyembro - Mga Setting",
        "memberTransfer.transferConfiguration" to "Configuration ng Transmission",
        "memberTransfer.transferConfigurationTitle" to "Configuration ng Transmission",
        "memberTransfer.transferEndpointHint" to "Relatibong path sa transmission endpoint (hal. /api/members/bulk)",
        "memberTransfer.transferEndpointPath" to "Landas ng Endpoint ng Transmission",
        "memberTransfer.transferEndpointPlaceholder" to "/api/members/bulk",
        "memberTransfer.transferFormat" to "Format ng paghahatid",
        "memberTransfer.transferTemplate" to "Template ng Paglipat",
        "memberTransfer.usernameEmail" to "Username / email",
        "memberTransferDialog.additionalErrors" to "karagdagang mga pagkakamali",
        "memberTransferDialog.additionalFieldPlaceholder" to "Karagdagang field (hal. client_id)",
        "memberTransferDialog.additionalFieldPlaceholderForm" to "Pangalan ng field: Value (hal. client_id: abc123)",
        "memberTransferDialog.bulkImport" to "Bultuhang Pag-import",
        "memberTransferDialog.cancel" to "Kanselahin",
        "memberTransferDialog.editConfig" to "I-edit ang configuration.",
        "memberTransferDialog.endpoint" to "Endpoint",
        "memberTransferDialog.excludedMembers" to "Mga ibinukod na miyembro (nawawalang mandatoryong field)",
        "memberTransferDialog.format" to "Format",
        "memberTransferDialog.goToSettings" to "Mga Setting Saan pupunta?",
        "memberTransferDialog.loadingConfig" to "Nilo-load ang naka-save na configuration",
        "memberTransferDialog.loginData" to "Data ng pag-login",
        "memberTransferDialog.loginDataHint" to "Ang mga detalye sa pag-log in ay ginagamit mula sa mga setting. Maaari mong i-overwrite ang mga ito dito kung kinakailangan.",
        "memberTransferDialog.loginDataOverride" to "Mga detalye sa pag-login (opsyonal na overwrite)",
        "memberTransferDialog.loginDataOverrideHint" to "Punan lamang kung gusto mong i-overwrite ang naka-save na data sa pag-log in. Ang mga walang laman na field ay gumagamit ng mga nakaimbak na halaga.",
        "memberTransferDialog.method" to "Pamamaraan",
        "memberTransferDialog.mode" to "mode",
        "memberTransferDialog.noConfigFound" to "Walang nahanap na configuration",
        "memberTransferDialog.noConfigMessage" to "Mangyaring i-configure muna ang paglipat ng miyembro sa mga setting.",
        "memberTransferDialog.passwordPlaceholder" to "Password (iwang blangko para sa nai-save)",
        "memberTransferDialog.server" to "Server",
        "memberTransferDialog.single" to "Walang asawa",
        "memberTransferDialog.title" to "Maglipat ng mga Miyembro",
        "memberTransferDialog.transfer" to "Inilipat",
        "memberTransferDialog.transferConfiguration" to "Configuration ng Transmission",
        "memberTransferDialog.transferError" to "Error sa panahon ng paghahatid",
        "memberTransferDialog.transferFailed" to "Nabigo ang paglipat",
        "memberTransferDialog.transferring" to "Nakikipag-usap...",
        "memberTransferDialog.transferSuccess" to "Matagumpay na nailipat ng {total} na miyembro ang {transferred}.",
        "memberTransferDialog.usernameEmail" to "Username / email",
        "messages.cancel" to "Kanselahin",
        "messages.confirm" to "Kumpirmahin",
        "messages.error" to "Error",
        "messages.fileTooLarge" to "Masyadong malaki ang file",
        "messages.imageMaxSize" to "Ang larawan ay dapat na isang maximum na 5 MB.",
        "messages.info" to "Impormasyon",
        "messages.invalidFile" to "Di-wastong file",
        "messages.note" to "Pansinin",
        "messages.pleaseSelectImageFile" to "Mangyaring pumili ng file ng imahe.",
        "messages.recordsDisplayed" to "ipinapakita",
        "messages.recordsFound" to "Nahanap ang mga tala",
        "messages.success" to "Tagumpay",
        "messages.successfullyLoaded" to "Matagumpay na na-load",
        "messages.warning" to "Babala",
        "mobile.active" to "Aktiv",
        "mobile.add" to "Hinzufügen",
        "mobile.appLoading" to "App wird geladen",
        "mobile.calendarAgendaEmpty" to "Walang appointment sa buwang ito.",
        "mobile.calendarAgendaTitle" to "Mga appointment sa buwan",
        "mobile.calendarAllSourcesFailed" to "Hindi ma-load ang kalendaryo.",
        "mobile.calendarCancellationEnd" to "Hanggang (opsyonal)",
        "mobile.calendarCancellationHint" to "Itinatago ang paulit-ulit na oras sa mga araw na iyon.",
        "mobile.calendarCancellationInMonth" to "Mga kansela ngayong buwan",
        "mobile.calendarCancellationReason" to "Dahilan",
        "mobile.calendarCancellationSave" to "I-save",
        "mobile.calendarCancellationStart" to "Petsa (YYYY-MM-DD)",
        "mobile.calendarCancellationTitle" to "Kinanselang pagsasanay",
        "mobile.calendarGridTitle" to "Buwan",
        "mobile.calendarLegend" to "Ipakita",
        "mobile.calendarLegendCancellation" to "Kansela",
        "mobile.calendarLegendHoliday" to "Holiday",
        "mobile.calendarLegendMatch" to "Laban",
        "mobile.calendarLegendOfficial" to "Pakikilahok",
        "mobile.calendarLegendSchool" to "Bakasyon sa paaralan",
        "mobile.calendarLegendTournament" to "Torneo",
        "mobile.calendarLegendTraining" to "Pagsasanay",
        "mobile.calendarSourceCancellations" to "Mga pagkansela",
        "mobile.calendarSourceDiary" to "Tala-arawan",
        "mobile.calendarSourceFailed" to "hindi na-load",
        "mobile.calendarSourceHolidays" to "Holiday / bakasyon",
        "mobile.calendarSourceMatches" to "Mga laban sa liga",
        "mobile.calendarSourceOfficial" to "Opisyal na pakikilahok",
        "mobile.calendarSourceTournaments" to "Mga torneo",
        "mobile.calendarSourceTrainingTimes" to "Mga oras ng pagsasanay",
        "mobile.calendarSubtitle" to "Pagsasanay, torneo, liga at holiday sa buwan.",
        "mobile.calendarTitle" to "Kalendaryo",
        "mobile.calendarToday" to "Ngayon",
        "mobile.cancel" to "Abbrechen",
        "mobile.clubRequest" to "Zugriff anfragen",
        "mobile.clubRequested" to "Angefragt",
        "mobile.createDiaryEntry" to "Eintrag erstellen",
        "mobile.deleteNote" to "Notiz löschen",
        "mobile.deleteTag" to "Tag entfernen",
        "mobile.editTimes" to "Zeiten bearbeiten",
        "mobile.emailAndPasswordRequired" to "E-Mail und Passwort sind erforderlich",
        "mobile.entry" to "Eintrag",
        "mobile.inactive" to "Inaktiv",
        "mobile.language" to "Sprache",
        "mobile.lastTraining" to "Letztes Training",
        "mobile.loginFailed" to "Login fehlgeschlagen",
        "mobile.loginInProgress" to "Anmelden...",
        "mobile.more" to "Mehr",
        "mobile.new" to "Neu",
        "mobile.newNote" to "Neue Notiz",
        "mobile.newTag" to "Neuer Tag",
        "mobile.noDiaryEntries" to "Noch keine Tagebuch-Einträge",
        "mobile.noMembers" to "Keine Mitglieder gefunden",
        "mobile.noResults" to "Keine Treffer",
        "mobile.noTimes" to "Keine Zeiten",
        "mobile.offlineCacheHint" to "Walang koneksyon – ipinapakita ang huling na-load na datos.",
        "mobile.participationTop" to "Top Teilnahmen",
        "mobile.refresh" to "Aktualisieren",
        "mobile.requestedAccess" to "Angefragt",
        "mobile.role" to "Rolle",
        "mobile.saveEntry" to "Speichern",
        "mobile.search" to "Suche",
        "mobile.select" to "Auswählen",
        "mobile.sessionCheck" to "Session prüfen",
        "mobile.sessionCheckFailed" to "Session check fehlgeschlagen",
        "mobile.sessionInvalid" to "Session ungültig",
        "mobile.sessionValid" to "Session gültig",
        "mobile.status" to "Status",
        "mobile.user" to "Benutzer",
        "myTischtennis.about" to "Tungkol sa myTischtennis",
        "myTischtennis.aboutFeatures.fetch" to "Direktang kunin ang data ng kumpetisyon",
        "myTischtennis.aboutFeatures.import" to "Awtomatikong mag-import ng data ng tournament",
        "myTischtennis.aboutFeatures.sync" to "I-sync ang Mga Resulta ng Player",
        "myTischtennis.aboutText" to "Sa pamamagitan ng pag-link ng iyong myTischtennis account, maaari mong:",
        "myTischtennis.autoUpdates" to "Auto Update",
        "myTischtennis.club" to "Association (myTischtennis)",
        "myTischtennis.deleteAccount" to "Idiskonekta ang account",
        "myTischtennis.disabled" to "Hindi naka-check",
        "myTischtennis.editAccount" to "I-edit ang account",
        "myTischtennis.enabled" to "NAKA-ON",
        "myTischtennis.fetchStatistics" to "Mga Istatistika sa Pagkuha ng Data",
        "myTischtennis.lastFetch" to "Huling Nakuha:",
        "myTischtennis.lastLoginAttempt" to "Huling pagtatangka sa pag-log in",
        "myTischtennis.lastSuccessfulLogin" to "Huling matagumpay na pag-log in",
        "myTischtennis.leagueTables" to "JoomSport Standings",
        "myTischtennis.linkAccount" to "I-link ang account",
        "myTischtennis.linkedAccount" to "Naka-link na Account",
        "myTischtennis.loadingStats" to "Naglo-load ng mga istatistika",
        "myTischtennis.matchResults" to "Mga Resulta ng Kaganapan",
        "myTischtennis.neverFetched" to "Never Retrieved",
        "myTischtennis.no" to "Hindi",
        "myTischtennis.noAccount" to "Walang myTischtennis account na naka-link.",
        "myTischtennis.passwordNote" to "Tandaan: Ang pag-save ng password ay opsyonal. Kung hindi mo ito nai-save, hihilingin sa iyo ang password sa tuwing magsi-synchronize ka.",
        "myTischtennis.passwordSaved" to "Na-save ang password",
        "myTischtennis.passwordsEncrypted" to "Ang mga password ay naka-imbak na naka-encrypt.",
        "myTischtennis.playerRatings" to "Mga Rating ng Manlalaro",
        "myTischtennis.refreshStats" to "I-reload ang Stats",
        "myTischtennis.testLogin" to "Muling pag-login",
        "myTischtennis.title" to "myTischtennis-Account",
        "myTischtennis.updateHistory" to "I-update ang Kasaysayan",
        "myTischtennis.yes" to "Oo",
        "myTischtennisAccount.aboutDescription" to "Sa pamamagitan ng pag-link ng iyong myTischtennis account, maaari mong:",
        "myTischtennisAccount.aboutFeature1" to "Awtomatikong mag-import ng data ng tournament",
        "myTischtennisAccount.aboutFeature2" to "I-sync ang Mga Resulta ng Player",
        "myTischtennisAccount.aboutFeature3" to "Direktang kunin ang data ng kumpetisyon",
        "myTischtennisAccount.aboutHint" to "Ang pag-save ng password ay opsyonal. Kung hindi mo ito nai-save, hihilingin sa iyo ang password sa tuwing magsi-synchronize ka.",
        "myTischtennisAccount.aboutMyTischtennis" to "Tungkol sa myTischtennis",
        "myTischtennisAccount.accountSaved" to "myTischtennis-Account ay matagumpay na na-save",
        "myTischtennisAccount.accountUnlinked" to "Matagumpay na nadiskonekta ang myTischtennis account",
        "myTischtennisAccount.autoUpdates" to "Mga awtomatikong pag-update:",
        "myTischtennisAccount.club" to "Association (myTischtennis):",
        "myTischtennisAccount.daysAgo" to "{count} araw ang nakalipas",
        "myTischtennisAccount.disabled" to "Hindi naka-check",
        "myTischtennisAccount.editAccount" to "I-edit ang account",
        "myTischtennisAccount.email" to "E-mail:",
        "myTischtennisAccount.enabled" to "NAKA-ON",
        "myTischtennisAccount.errorLoadingAccount" to "Error sa paglo-load ng myTischtennis account",
        "myTischtennisAccount.errorLoadingStatistics" to "Error sa paglo-load ng mga istatistika ng pagkuha",
        "myTischtennisAccount.errorUnlinking" to "Error sa pagdiskonekta ng account",
        "myTischtennisAccount.fetchStatistics" to "Mga Istatistika sa Pagkuha ng Data",
        "myTischtennisAccount.hoursAgo" to "{count} h ang nakalipas",
        "myTischtennisAccount.justNow" to "ngayon lang",
        "myTischtennisAccount.lastFetch" to "Huling Nakuha:",
        "myTischtennisAccount.lastLoginAttempt" to "Huling pagtatangka sa pag-log in:",
        "myTischtennisAccount.lastSuccessfulLogin" to "Huling matagumpay na pag-log in:",
        "myTischtennisAccount.leagueTables" to "JoomSport Standings",
        "myTischtennisAccount.linkAccount" to "I-link ang account",
        "myTischtennisAccount.linkedAccount" to "Naka-link na Account",
        "myTischtennisAccount.loading" to "Naglo-load...",
        "myTischtennisAccount.loadingStatistics" to "Naglo-load ng mga istatistika",
        "myTischtennisAccount.loginAgain" to "Muling pag-login",
        "myTischtennisAccount.loginFailed" to "Nabigo ang pag-login",
        "myTischtennisAccount.loginSuccessful" to "Matagumpay ang pag-login! Na-update ang mga detalye ng koneksyon.",
        "myTischtennisAccount.matchResults" to "Mga Resulta ng Kaganapan",
        "myTischtennisAccount.minutesAgo" to "{count} min ang nakalipas",
        "myTischtennisAccount.never" to "Hindi kailanman",
        "myTischtennisAccount.neverFetched" to "Never Retrieved",
        "myTischtennisAccount.no" to "Hindi",
        "myTischtennisAccount.noAccountLinked" to "Walang myTischtennis account na naka-link.",
        "myTischtennisAccount.passwordRequired" to "Kinakailangan ang password",
        "myTischtennisAccount.passwordSaved" to "Na-save ang password",
        "myTischtennisAccount.playerRatings" to "Mga Rating ng Manlalaro",
        "myTischtennisAccount.playersUpdated" to "Na-update ang Manlalaro",
        "myTischtennisAccount.refreshStatistics" to "I-reload ang Stats",
        "myTischtennisAccount.results" to "Mga resulta",
        "myTischtennisAccount.teams" to "Teams",
        "myTischtennisAccount.title" to "myTischtennis Account",
        "myTischtennisAccount.unlinkAccount" to "Idiskonekta ang account",
        "myTischtennisAccount.unlinkAccountConfirm" to "Sigurado ka bang gusto mong i-unlink ang myTischtennis account?",
        "myTischtennisAccount.unlinkAccountTitle" to "Idiskonekta ang account",
        "myTischtennisAccount.updateHistory" to "I-update ang Kasaysayan",
        "myTischtennisAccount.yes" to "Oo",
        "myTischtennisAccount.yesterday" to "kahapon",
        "myTischtennisDialog.appPassword" to "Ang password ng iyong app para kumpirmahin",
        "myTischtennisDialog.appPasswordHint" to "Para sa mga kadahilanang pangseguridad, kailangan namin ang password ng iyong app para i-save ang myTischtennis password.",
        "myTischtennisDialog.appPasswordPlaceholder" to "Ang iyong password para sa app na ito",
        "myTischtennisDialog.autoUpdateRatings" to "Paganahin ang awtomatikong pag-update ng mga rating",
        "myTischtennisDialog.autoUpdateRatingsHint" to "Ang pinakabagong mga rating mula sa myTischtennis ay awtomatikong kinukuha araw-araw sa 6:00 am. Nangangailangan ng naka-save na password.",
        "myTischtennisDialog.autoUpdateWarning" to "Para sa mga awtomatikong pag-update, dapat na i-save ang myTischtennis password.",
        "myTischtennisDialog.cancel" to "Kanselahin",
        "myTischtennisDialog.editAccount" to "i-edit ang myTischtennis-Account",
        "myTischtennisDialog.email" to "myTischtennis-Email",
        "myTischtennisDialog.emailPlaceholder" to "Ang iyong myTischtennis email address",
        "myTischtennisDialog.errorLogin" to "Error sa pag-login.",
        "myTischtennisDialog.errorSaving" to "Error sa pag-save ng Account",
        "myTischtennisDialog.linkAccount" to "link myTischtennis account",
        "myTischtennisDialog.loadingLoginForm" to "Nilo-load ang Form sa Pag-login...",
        "myTischtennisDialog.loggingIn" to "mag-log in...",
        "myTischtennisDialog.login" to "Mag-log in",
        "myTischtennisDialog.password" to "myTischtennis-Password",
        "myTischtennisDialog.passwordPlaceholder" to "Ang iyong myTischtennis password",
        "myTischtennisDialog.passwordPlaceholderKeep" to "Iwanang blangko upang panatilihin",
        "myTischtennisDialog.save" to "I-save",
        "myTischtennisDialog.savePassword" to "i-save ang mytabletennis-password",
        "myTischtennisDialog.savePasswordHint" to "Kung pinagana, ang iyong myTischtennis password ay maiimbak na naka-encrypt upang ang mga awtomatikong pag-synchronize ay posible.",
        "myTischtennisDialog.saving" to "Nagse-save...",
        "myTischtennisHistory.close" to "Isara",
        "myTischtennisHistory.failed" to "Hindi iyon gumana.",
        "myTischtennisHistory.loading" to "Nilo-load ang history...",
        "myTischtennisHistory.noHistory" to "Wala pang awtomatikong pag-update na ginawa.",
        "myTischtennisHistory.ratingsUpdated" to "Na-update ang mga rating",
        "myTischtennisHistory.successful" to "Matagumpay",
        "myTischtennisHistory.title" to "I-update ang Kasaysayan ng Mga Rating",
        "navigation.approvals" to "Mga pag-apruba",
        "navigation.backToHome" to "Bumalik sa home",
        "navigation.billing" to "Pagsingil",
        "navigation.clickTtAccount" to "HTTV / click-TT account",
        "navigation.clickTtBrowser" to "HTTV / click-TT",
        "navigation.clubSettings" to "Mga setting ng club",
        "navigation.clubTournaments" to "Mga paligsahan ng club",
        "navigation.competitions" to "Mga kompetisyon",
        "navigation.dailyBusiness" to "Araw-araw na negosyo",
        "navigation.diary" to "Talaarawan",
        "navigation.home" to "Bahay",
        "navigation.login" to "Mag-login",
        "navigation.logout" to "Mag-logout",
        "navigation.logs" to "Mga system log",
        "navigation.members" to "Mga miyembro",
        "navigation.memberTransfer" to "Paglipat ng miyembro",
        "navigation.myTischtennisAccount" to "myTischtennis Account",
        "navigation.orders" to "Mga order",
        "navigation.permissions" to "Mga pahintulot",
        "navigation.personalSettings" to "Mga personal na setting",
        "navigation.predefinedActivities" to "Mga paunang natukoy na aktibidad",
        "navigation.register" to "Magrehistro",
        "navigation.schedule" to "Mga iskedyul",
        "navigation.settings" to "Mga setting",
        "navigation.statistics" to "Istatistika ng pagsasanay",
        "navigation.teamManagement" to "Pamamahala ng team",
        "navigation.tournamentParticipations" to "Mga paglahok sa paligsahan",
        "navigation.tournaments" to "Mga paligsahan",
        "nuscoreAnalyzer.analysisComplete" to "✅ Nakumpleto ang pagsusuri: {count} na mapagkukunan ang nakita",
        "nuscoreAnalyzer.analyze" to "🔍 nuscore analysis",
        "nuscoreAnalyzer.analyzing" to "Sinusuri...",
        "nuscoreAnalyzer.createLocalCopy" to "Gumawa ng 🏗️ lokal na kopya",
        "nuscoreAnalyzer.creating" to "🏗️ Ginagawa...",
        "nuscoreAnalyzer.description" to "Sinusuri at dina-download ang mga mapagkukunan ng nuscore para sa lokal na paggamit",
        "nuscoreAnalyzer.downloading" to "⬇️ Dina-download...",
        "nuscoreAnalyzer.downloadResources" to "Mag-download ng mga mapagkukunan",
        "nuscoreAnalyzer.foundResources" to "📋 Nahanap na mga mapagkukunan:",
        "nuscoreAnalyzer.log" to "Log",
        "nuscoreAnalyzer.pageLoaded" to "✅ na-load ang nuscore page",
        "nuscoreAnalyzer.startAnalysis" to "🔍 Sinisimulan ang nuscore analysis...",
        "nuscoreAnalyzer.title" to "🔍 nuscore Analyzer",
        "officialTournaments.action" to "Aksyon",
        "officialTournaments.age" to "Edad",
        "officialTournaments.ageClassCompetition" to "Pangkat ng Edad/Kumpetisyon",
        "officialTournaments.ageClasses" to "Mga klase sa edad",
        "officialTournaments.all" to "Lahat",
        "officialTournaments.birthDate" to "Petsa ng kapanganakan",
        "officialTournaments.checkBoxToActivate" to "Paganahin ang checkbox",
        "officialTournaments.competition" to "Katunggali",
        "officialTournaments.competitions" to "Mga kumpetisyon",
        "officialTournaments.competitionTypes" to "Mga Uri ng Kumpetisyon:",
        "officialTournaments.cutoffDate" to "Petsa ng bisa:",
        "officialTournaments.date" to "Petsa",
        "officialTournaments.dateTime" to "Petsa:",
        "officialTournaments.deadlineDate" to "Deadline ng pagpaparehistro (petsa):",
        "officialTournaments.deadlineOnline" to "Deadline ng pagpaparehistro (online):",
        "officialTournaments.deadlines" to "Mga deadline ng pagpaparehistro:",
        "officialTournaments.deadlinesByAgeClass" to "Mga deadline ng pagpaparehistro para sa bawat AK:",
        "officialTournaments.delete" to "Tanggalin",
        "officialTournaments.editTitle" to "I-edit ang Pamagat",
        "officialTournaments.eligible" to "Kwalipikadong Makilahok",
        "officialTournaments.entryFee" to "panimulang cash",
        "officialTournaments.entryFees" to "Mga bayad sa pagdalo:",
        "officialTournaments.events" to "Mga pangyayari",
        "officialTournaments.finalRound" to "Finals Competition",
        "officialTournaments.hasPlayed" to "Naglaro si {0} sa kanilang turn.",
        "officialTournaments.last12Months" to "Huling 12 buwan",
        "officialTournaments.last2Years" to "Nakalipas na 2 Taon",
        "officialTournaments.last3Months" to "Huling 3 buwan",
        "officialTournaments.last6Months" to "Nakalipas na 6 na buwan",
        "officialTournaments.markAsParticipated" to "Mark bilang dumalo",
        "officialTournaments.markAsRegistered" to "Markahan bilang naka-log in",
        "officialTournaments.member" to "Miyembro",
        "officialTournaments.name" to "pangalan",
        "officialTournaments.noEvents" to "Wala pang available na event. Mag-upload ng PDF para makapagsimula.",
        "officialTournaments.notInterested" to "Hindi interesado",
        "officialTournaments.openTo" to "Bukas sa",
        "officialTournaments.participants" to "Mga kalahok",
        "officialTournaments.participantsPdf" to "PDF ng kalahok",
        "officialTournaments.participated" to "Nakilahok",
        "officialTournaments.participations" to "Mga Paglahok sa Tournament",
        "officialTournaments.pdfForSelectedMembers" to "PDF para sa mga na-flag na miyembro",
        "officialTournaments.placement" to "Paglalagay",
        "officialTournaments.preliminaryRound" to "Unang Yugto:",
        "officialTournaments.previousSeason" to "Nakaraang Season",
        "officialTournaments.registered" to "Naka-log-In",
        "officialTournaments.resetStatus" to "I-reset ang Katayuan",
        "officialTournaments.results" to "Mga resulta",
        "officialTournaments.savedEvents" to "Naka-save na Mga Kaganapan",
        "officialTournaments.selectMembers" to "Pumili ng Mga Miyembro",
        "officialTournaments.showCompetitions" to "Tingnan ang mga Kumpetisyon",
        "officialTournaments.showEvents" to "Tingnan ang Mga Nai-save na Kaganapan",
        "officialTournaments.showParticipants" to "Tingnan ang Kalahok",
        "officialTournaments.showParticipations" to "Tingnan ang Mga Pagbabahagi ng Tournament",
        "officialTournaments.showResults" to "Tingnan ang mga Resulta",
        "officialTournaments.startTime" to "oras ng pagsisimula",
        "officialTournaments.startTimes" to "Mga oras ng pagsisimula:",
        "officialTournaments.status" to "katayuan",
        "officialTournaments.timeRange" to "Panahon:",
        "officialTournaments.title" to "Pamagat:",
        "officialTournaments.tournament" to "Tournament",
        "officialTournaments.updatePlacementError" to "Error sa pag-update ng placement",
        "officialTournaments.updateStatusError" to "Nabigong i-update ang estado",
        "officialTournaments.updateTitleError" to "Hindi ito nai-save.",
        "officialTournaments.uploadError" to "Error sa pag-upload ng PDF.",
        "officialTournaments.uploadPdf" to "Mag-upload ng PDF",
        "officialTournaments.venues" to "Mga lugar",
        "officialTournaments.wantsToParticipate" to "Gustong sumali",
        "orders.addOrder" to "Gumawa ng order",
        "orders.budget" to "badyet",
        "orders.club" to "Club",
        "orders.cost" to "Halaga",
        "orders.dateAutoHint" to "Awtomatikong itinatakda ang petsa at bawat pagbabago ay sine-save kasama ang petsa.",
        "orders.errorLoading" to "Hindi ma-load ang mga order.",
        "orders.errorSaving" to "Hindi ma-save ang order.",
        "orders.filterAllClubs" to "Lahat ng club",
        "orders.filterAllCompletionStates" to "Lahat ng degree",
        "orders.filterAllStatuses" to "Lahat ng status",
        "orders.filterHandedOver" to "Naibigay ang item",
        "orders.filterPaid" to "Binayaran",
        "orders.globalSubtitle" to "Dito makikita at mapapamahalaan ang lahat ng order mula sa lahat ng club.",
        "orders.globalTitle" to "Mga order ng lahat ng club",
        "orders.history" to "Kasaysayan",
        "orders.item" to "item",
        "orders.itemPlaceholder" to "hal. jersey, hoodie, o lagayan ng raketa",
        "orders.loading" to "Nilo-load ang mga order...",
        "orders.member" to "Miyembro",
        "orders.memberTitle" to "Mga order: {name}",
        "orders.noOrdersGlobal" to "Wala pang mga order sa ngayon.",
        "orders.noOrdersMember" to "Wala pang order para sa miyembrong ito.",
        "orders.open" to "Natitira",
        "orders.orderDate" to "Ginawa noong",
        "orders.paid" to "Bayad",
        "orders.paidConfirmed" to "Binayaran",
        "orders.searchPlaceholder" to "Maghanap ayon sa club, miyembro, o item",
        "orders.showCompleted" to "Ipakita ang mga natapos",
        "orders.status" to "katayuan",
        "orders.statusArrived" to "dumating na ang item",
        "orders.statusDate" to "Huling pagbabago",
        "orders.statusHandedOver" to "naibigay na ang item",
        "orders.statusOrdered" to "na-order na",
        "orders.statusRequested" to "ninanais",
        "orders.title" to "Mga order",
        "pdfGenerator.activityTimeBlock" to "Aktibidad / Time Block",
        "pdfGenerator.allGames" to "Lahat ng Lungsod",
        "pdfGenerator.alsoPlayable" to "Mapaglaro din",
        "pdfGenerator.birthDate" to "Petsa ng kapanganakan",
        "pdfGenerator.clubLabel" to "Club:",
        "pdfGenerator.competition" to "Kaganapan",
        "pdfGenerator.competitionName" to "Katunggali",
        "pdfGenerator.date" to "Petsa:",
        "pdfGenerator.diff" to "Diff",
        "pdfGenerator.duration" to "Mga minuto bago mag-lockout",
        "pdfGenerator.fee" to "Bayad",
        "pdfGenerator.generatedAt" to "Nilikha:",
        "pdfGenerator.group" to "Grupo",
        "pdfGenerator.groupLabel" to "Grupo",
        "pdfGenerator.groupMatrices" to "Mga matrice ng pangkat",
        "pdfGenerator.hallShoes" to "Panloob na sapatos (hindi dapat matuyo sa sahig)",
        "pdfGenerator.hints" to "Mga Tala:",
        "pdfGenerator.informTrainer" to "Dahil gusto ng club na kunin ang pagpaparehistro, ipaalam sa mga coach ang hindi bababa sa isang linggo bago ang paligsahan tungkol sa paglahok",
        "pdfGenerator.leagueLabel" to "Liga:",
        "pdfGenerator.lineupQttr" to "(Q)TTR",
        "pdfGenerator.member" to "Mga miyembro:",
        "pdfGenerator.nameFirstName" to "Apelyido, unang pangalan",
        "pdfGenerator.noActivities" to "Walang naitala na aktibidad para sa araw ng pagsasanay na ito.",
        "pdfGenerator.noWhiteJersey" to "Walang puting jersey",
        "pdfGenerator.officialTournament" to "Opisyal na Tournament",
        "pdfGenerator.oneHourBefore" to "Maging sa bulwagan isang oras bago magsimula ang kumpetisyon",
        "pdfGenerator.overallRanking" to "Pangkalahatang ranking (knockout rounds)",
        "pdfGenerator.periodLabel" to "Registration para sa:",
        "pdfGenerator.phoneList" to "Listahan ng Telepono - Mga Aktibong Miyembro",
        "pdfGenerator.phoneNumber" to "Telepono no.",
        "pdfGenerator.place" to "Ang parisukat",
        "pdfGenerator.placement" to "Paglalagay",
        "pdfGenerator.plannedLeagueLabel" to "Plano na liga:",
        "pdfGenerator.player" to "Mga skater",
        "pdfGenerator.player1" to "Manlalaro 1",
        "pdfGenerator.player2" to "4 1/2 minuto",
        "pdfGenerator.points" to "Mga puntos",
        "pdfGenerator.recommendations" to "Mga rekomendasyon",
        "pdfGenerator.result" to "Resulta",
        "pdfGenerator.round" to "Bilog",
        "pdfGenerator.seasonLabel" to "season:",
        "pdfGenerator.sets" to "mga parirala",
        "pdfGenerator.sportShorts" to "Sports shorts (o sports skirts), mas mabuti na hindi rin puti",
        "pdfGenerator.startTime" to "oras ng pagsisimula",
        "pdfGenerator.status" to "katayuan",
        "pdfGenerator.teamAgeGroupLabel" to "Age group ng koponan:",
        "pdfGenerator.teamGenderLabel" to "Kasarian ng koponan:",
        "pdfGenerator.teamLineupTitle" to "Line-up ng koponan",
        "pdfGenerator.teamNameLabel" to "Koponan:",
        "pdfGenerator.time" to "Oras:",
        "pdfGenerator.timeBlock" to "Time block",
        "pdfGenerator.tournament" to "Tournament",
        "pdfGenerator.trainersPresent" to "Sinisikap ng mga coach na dumalo sa lahat ng mga paligsahan.",
        "pdfGenerator.trainingPlan" to "Plano ng pagsasanay",
        "pdfGenerator.venue" to "Lokasyon",
        "pdfGenerator.venues" to "Mga lugar",
        "pdfGenerator.waterBottle" to "Magdala ng isang bote ng tubig",
        "pendingApprovals.actions" to "Mga aksyon",
        "pendingApprovals.approve" to "Aprubahan",
        "pendingApprovals.email" to "Email",
        "pendingApprovals.errorApproving" to "Error sa pag-apruba ng user",
        "pendingApprovals.errorLoadingRequests" to "nabigong i-load ang mga nakabinbing para sa %<%E%s%E%>",
        "pendingApprovals.errorRejecting" to "Error sa Pagtanggi sa User",
        "pendingApprovals.firstName" to "Pangalan",
        "pendingApprovals.lastName" to "Apelyido",
        "pendingApprovals.noPendingRequests" to "Walang nakabinbing kahilingan ng user.",
        "pendingApprovals.noPermission" to "Walang pahintulot",
        "pendingApprovals.noPermissionDetails" to "Ang mga admin lang ang makakapag-edit ng mga kahilingan sa miyembro.",
        "pendingApprovals.noPermissionMessage" to "Wala kang pahintulot na pamahalaan ang mga pagbabahagi.",
        "pendingApprovals.reject" to "I-dismiss",
        "pendingApprovals.title" to "Nakabinbing Mga Kahilingan ng User",
        "permissions.actions" to "Mga aksyon",
        "permissions.active" to "Aktibo",
        "permissions.availableRoles" to "Mga Magagamit na Tungkulin",
        "permissions.baseRole" to "Batayang Tungkulin",
        "permissions.cancel" to "Kanselahin",
        "permissions.clickToActivate" to "I-click para i-activate.",
        "permissions.clickToDeactivate" to "I-click upang huwag paganahin",
        "permissions.clubMembers" to "Mga miyembro ng club",
        "permissions.creator" to "Tagapaglikha",
        "permissions.customize" to "I-customize",
        "permissions.customizeInfo" to "Dito maaari kang gumawa ng mga indibidwal na pagsasaayos.",
        "permissions.email" to "Email",
        "permissions.errorLoadingData" to "Error sa paglo-load ng data",
        "permissions.errorSavingPermissions" to "Error sa pag-save ng mga pahintulot",
        "permissions.errorUpdatingRole" to "Nabigong i-update ang tungkulin",
        "permissions.inactive" to "Hindi naka-check",
        "permissions.loadingMembers" to "Iniimbitahan ang mga miyembro...",
        "permissions.permissionsFor" to "Mga pahintulot para sa",
        "permissions.reset" to "Ibalik",
        "permissions.resetAll" to "I-reset Lahat",
        "permissions.role" to "Tungkulin",
        "permissions.save" to "I-save",
        "permissions.status" to "katayuan",
        "permissions.subtitle" to "Pamahalaan ang mga karapatan sa pag-access para sa mga miyembro ng club",
        "permissions.title" to "Pamamahala ng kredensyal",
        "predefinedActivities.addImage" to "Magdagdag ng larawan",
        "predefinedActivities.cancel" to "Kanselahin",
        "predefinedActivities.code" to "Pagpapaikli",
        "predefinedActivities.createDrawing" to "Gumawa ng Exercise Drawing",
        "predefinedActivities.deduplicate" to "Pagsamahin ang mga Duplicate",
        "predefinedActivities.delete" to "Tanggalin",
        "predefinedActivities.description" to "Paglalarawan",
        "predefinedActivities.duration" to "Tagal ng minuto",
        "predefinedActivities.durationText" to "Tagal (Text)",
        "predefinedActivities.durationTextPlaceholder" to "hal. 2x7",
        "predefinedActivities.editActivity" to "I-edit ang Aktibidad",
        "predefinedActivities.editDrawing" to "I-edit ang Exercise Drawing",
        "predefinedActivities.excludeFromStats" to "Ibukod mula sa mga istatistika",
        "predefinedActivities.filterAll" to "Lahat",
        "predefinedActivities.filterCustom" to "Custom",
        "predefinedActivities.filterStandard" to "Mga karaniwang gawain",
        "predefinedActivities.imageHelp" to "Maaari kang maglagay ng link sa isang larawan o mag-upload ng larawan:",
        "predefinedActivities.imageLink" to "Link ng larawan (opsyonal)",
        "predefinedActivities.imageLinkPlaceholder" to "hal. https://example.com/bild.jpg o /api/predefined-activities/:id/image/:imageId",
        "predefinedActivities.merge" to "Pagsamahin",
        "predefinedActivities.min" to "min",
        "predefinedActivities.name" to "pangalan",
        "predefinedActivities.new" to "Bago",
        "predefinedActivities.newActivity" to "Bagong Aktibidad",
        "predefinedActivities.orUploadImage" to "O mag-upload ng larawan:",
        "predefinedActivities.reload" to "Muling Mag-load",
        "predefinedActivities.searchPlaceholder" to "Maghanap ng mga pagdadaglat (hal. 'as vh us' o 'vh as us')...",
        "predefinedActivities.selectSource" to "Piliin ang pinagmulan",
        "predefinedActivities.selectTarget" to "Pumili ng patutunguhan",
        "predefinedActivities.title" to "Mga paunang natukoy na aktibidad",
        "predefinedActivities.upload" to "Mag-upload",
        "predefinedActivities.uploadAfterSave" to "Mag-upload pagkatapos i-save",
        "predefinedActivities.uploadedImages" to "Na-upload na (mga) video:",
        "predefinedActivities.uploadNote" to "Tandaan: Hindi maa-upload ang larawan hanggang sa nai-save ang aktibidad.",
        "privacy.clubData" to "Data ng Club/Aktibidad",
        "privacy.consent" to "Mga operasyong nakabatay sa pahintulot",
        "privacy.cookies" to "Cookies/Local Storage",
        "privacy.dataCategories" to "Mga kategorya ng personal na data",
        "privacy.logData" to "Mga logfile",
        "privacy.memberData" to "Mga detalye ng miyembro",
        "privacy.myTischtennisData" to "Data ng MyTischtennis",
        "privacy.purposes" to "Mga layunin at legal na batayan ng pagproseso",
        "privacy.recipients" to "tatanggap",
        "privacy.registrationData" to "Data ng Pagrehistro/Profile",
        "privacy.responsible" to "Controller ng Data",
        "privacy.title" to "Patakaran sa privacy",
        "privacy.tournamentData" to "Data ng Tournament",
        "privacy.trainingData" to "Data ng pagsasanay",
        "privacy.usage" to "Paggamit ng talaarawan sa pagsasanay",
        "privacy.usageData" to "Data ng paggamit",
        "privacy.website" to "Paghahanda ng website",
        "quickAddMember.birthDate" to "Petsa ng kapanganakan (opsyonal)",
        "quickAddMember.cancel" to "Kanselahin",
        "quickAddMember.createAndAdd" to "Gumawa at magdagdag ng bago",
        "quickAddMember.firstName" to "Pangalan",
        "quickAddMember.gender" to "kasarian",
        "quickAddMember.lastName" to "Apelyido (opsyonal)",
        "quickAddMember.pleaseSelect" to "Mangyaring pumili",
        "quickAddMember.title" to "Magdagdag ng bagong miyembro",
        "schedule.activeSelection" to "Aktibong pagpili",
        "schedule.addressLabel" to "Address",
        "schedule.adultSchedule" to "Pang-adultong iskedyul",
        "schedule.ageClass" to "pangkat ng edad",
        "schedule.allLeagueMatches" to "Lahat ng tugma",
        "schedule.balls" to "Mga bola",
        "schedule.cancel" to "Kanselahin",
        "schedule.cityLabel" to "Postcode/lungsod",
        "schedule.code" to "Code",
        "schedule.completedShort" to "Nakumpleto",
        "schedule.copyCode" to "Kopyahin ang code",
        "schedule.copyGuestPin" to "Kopyahin ang PIN",
        "schedule.copyHomePin" to "Kopyahin ang home PIN",
        "schedule.date" to "Petsa",
        "schedule.downloadPDF" to "Download PDF",
        "schedule.errorCopying" to "Error habang kumukopya",
        "schedule.errorImportingCSV" to "Nabigong i-import ang CSV file",
        "schedule.errorLoadingAdultSchedule" to "Nabigong i-load ang iskedyul ng pang-adulto",
        "schedule.errorLoadingGallery" to "Hindi ma-load ang gallery.",
        "schedule.errorLoadingMatches" to "Nabigong i-load ang mga tugma",
        "schedule.errorLoadingMembers" to "Nabigong i-load ang listahan ng miyembro.",
        "schedule.errorLoadingOverallSchedule" to "Nabigong i-load ang pangkalahatang iskedyul",
        "schedule.errorLoadingTable" to "Nabigong i-load ang data ng talahanayan ng liga mula sa myTischtennis",
        "schedule.errorLoadingTeams" to "Nabigong i-load ang mga team",
        "schedule.errorSavingPlayerSelection" to "Nabigong i-save ang pagpili ng player",
        "schedule.fetchDataFailed" to "Hindi makuha ang data ng koponan.",
        "schedule.fetchingTeamData" to "Kinukuha…",
        "schedule.fetchStartFailed" to "Hindi masimulan ang pagkuha.",
        "schedule.fetchTeamData" to "Kunin ang iskedyul at mga resulta",
        "schedule.fetchTimedOut" to "Nag-time out habang kumukuha ng data.",
        "schedule.gallery" to "Gallery ng miyembro",
        "schedule.galleryLoading" to "Nilo-load ang gallery…",
        "schedule.galleryTitle" to "Gallery ng miyembro - i-click ang isang imahe upang markahan bilang handa na",
        "schedule.gamesFor" to "Mga tugma para sa",
        "schedule.guestPin" to "Away PIN",
        "schedule.guestTeam" to "Ang away team",
        "schedule.homePin" to "PIN ng tahanan",
        "schedule.homeTeam" to "Home team",
        "schedule.imageSize" to "Laki ng larawan",
        "schedule.importSchedule" to "Iskedyul ng pag-import",
        "schedule.leagueTable" to "Mesa ng liga",
        "schedule.loadingMembers" to "Nilo-load ang mga miyembro...",
        "schedule.locationDialogTitle" to "Game room",
        "schedule.locationInfo" to "Lokasyon",
        "schedule.locationName" to "Game room",
        "schedule.matches" to "mga posporo",
        "schedule.matchLabel" to "Laro",
        "schedule.matchOverviewDescription" to "Ang mga kontrol kung aling mga laban mula sa kasalukuyang napiling liga ay ipinapakita sa iskedyul.",
        "schedule.matchOverviewTitle" to "Pangkalahatang-ideya ng laban",
        "schedule.nextMatch" to "Susunod na laban",
        "schedule.noActiveMembers" to "Walang nakitang aktibong miyembro",
        "schedule.noGames" to "Walang available na mga tugma",
        "schedule.noLeagueForTeam" to "Walang liga na nakatalaga sa pangkat na ito. Mangyaring magtalaga muna ng liga.",
        "schedule.noMatchesForPDF" to "Walang nakitang mga tugma upang makabuo ng PDF.",
        "schedule.noMatchingTeams" to "Walang mga koponan na tumutugma sa kasalukuyang paghahanap.",
        "schedule.noMembersWithImages" to "Walang nakitang mga miyembro na may mga larawan.",
        "schedule.noSelectionMessage" to "Piliin ang pangkalahatang iskedyul, ang iskedyul ng pang-adulto o isang koponan mula sa kaliwa.",
        "schedule.noSelectionTitle" to "Wala pang aktibong pagpili",
        "schedule.noTableData" to "Walang available na data ng talahanayan",
        "schedule.noTeamsFound" to "Walang nakitang mga koponan para sa season na ito",
        "schedule.openMatchReport" to "Buksan ang ulat ng laban",
        "schedule.otherTeamMatches" to "Ibang team",
        "schedule.overallSchedule" to "Pangkalahatang iskedyul",
        "schedule.ownTeamMatches" to "Sariling team",
        "schedule.pendingShort" to "Bukas",
        "schedule.planned" to "Nakaplano",
        "schedule.played" to "Pinatugtog",
        "schedule.player" to "Manlalaro",
        "schedule.playerSelection" to "Pagpili ng manlalaro",
        "schedule.playerSelectionSaved" to "Na-save ang pagpili ng manlalaro",
        "schedule.pleaseSelectGame" to "Mangyaring pumili muna ng tugma",
        "schedule.points" to "Pts",
        "schedule.position" to "Posisyon",
        "schedule.ready" to "handa na",
        "schedule.refreshTable" to "I-refresh ang talahanayan",
        "schedule.result" to "Resulta",
        "schedule.save" to "I-save",
        "schedule.scheduleImportSuccess" to "Matagumpay na na-import ang iskedyul.",
        "schedule.schedulePDF" to "Schedules.pdf",
        "schedule.scheduleTab" to "Iskedyul",
        "schedule.searchTeams" to "Search team o liga",
        "schedule.selection" to "Pagpili",
        "schedule.selectOtherTeam" to "Pumili ng ibang team",
        "schedule.selectSpecificLeague" to "Mangyaring pumili ng isang partikular na liga upang i-load ang talahanayan.",
        "schedule.sets" to "Mga set",
        "schedule.showLocation" to "Tingnan ang Lugar ng Laro",
        "schedule.subtitle" to "Pumili ng mga koponan, suriin ang mga fixture at panatilihing nakikita ang mga talahanayan ng liga.",
        "schedule.tableDataLoaded" to "Matagumpay na na-load ang data ng talahanayan ng liga mula sa myTischtennis.",
        "schedule.tableLoading" to "Nilo-load ang talahanayan…",
        "schedule.tableTab" to "mesa",
        "schedule.team" to "Team",
        "schedule.teamDataFetched" to "Matagumpay na na-update ang data ng koponan.",
        "schedule.teamDataFetchedDetails" to "Koponan: {team}\nMga naprosesong tala: {count}",
        "schedule.teams" to "Teams",
        "schedule.time" to "Oras",
        "schedule.title" to "Mga iskedyul",
        "schedule.vs" to "vs",
        "schedule.workspaceScheduleDescription" to "{matches} tugma, {completed} natapos at {pending} bukas.",
        "schedule.workspaceTableDescription" to "{count} na mga hilera ng talahanayan na kasalukuyang na-load.",
        "seasonSelector.addSeason" to "Magdagdag ng bagong Season",
        "seasonSelector.alreadyExists" to "Ang season na ito ay umiiral na!",
        "seasonSelector.cancel" to "Kanselahin",
        "seasonSelector.create" to "Lumikha",
        "seasonSelector.errorCreating" to "Error sa paggawa ng season",
        "seasonSelector.errorLoading" to "Error sa paglo-load ng mga season",
        "seasonSelector.hint" to "Pansinin",
        "seasonSelector.label" to "season:",
        "seasonSelector.loading" to "Naglo-load...",
        "seasonSelector.newSeason" to "Lumikha ng Bagong Season",
        "seasonSelector.placeholder" to "hal. 2023/2024",
        "seasonSelector.selectSeason" to "Pumili ng (mga) season",
        "settings.language" to "Wika",
        "settings.languageChanged" to "Matagumpay na nagbago ang wika",
        "settings.languageDescription" to "Pumili ng iyong gustong wika para sa aplikasyon",
        "settings.personalSettings" to "Mga personal na setting",
        "settings.selectLanguage" to "Pumili ng wika",
        "settings.title" to "Mga setting",
        "tagHistory.noHistory" to "Walang available na history ng tag",
        "tagHistory.selectTags" to "Piliin ang Mga Tag",
        "tagHistory.title" to "Tag: TypePad",
        "teamManagement.activeTeam" to "Aktibong koponan",
        "teamManagement.addPlanningTeam" to "Magdagdag ng Planning Team",
        "teamManagement.allMembersAssigned" to "Lahat ng miyembro ay kasalukuyang nakatalaga.",
        "teamManagement.assignLeagueBeforeDocuments" to "Mangyaring magtalaga muna ng liga sa koponan upang maproseso ang mga dokumento.",
        "teamManagement.assignLeagueBeforeParsing" to "Mangyaring magtalaga ng liga sa koponan muna upang i-parse ang mga PDF file.",
        "teamManagement.assignMemberToTeam" to "Idagdag sa team",
        "teamManagement.association" to "Samahan",
        "teamManagement.asyncJobStartFailed" to "Hindi masimulan ang async na trabaho.",
        "teamManagement.autoFetchEnabled" to "Ang awtomatikong pagkuha ng data ay pinagana",
        "teamManagement.automaticJobs" to "Mga awtomatikong trabaho",
        "teamManagement.autoSaved" to "AutoSaved",
        "teamManagement.autoSaveError" to "Nabigo ang Autosaving",
        "teamManagement.availableLineupMembers" to "Magagamit na manlalaro",
        "teamManagement.basicSettings" to "Mga pangunahing setting",
        "teamManagement.basicSettingsIntro" to "Suriin at ayusin ang pangalan ng koponan at liga sa mas kalmadong anyo.",
        "teamManagement.change" to "Baguhin",
        "teamManagement.clearFields" to "I-clear ang mga field",
        "teamManagement.codeList" to "Listahan ng code",
        "teamManagement.configurationStatus" to "Katayuan ng configuration",
        "teamManagement.configureLeagueDetails" to "Samahan: {association}\nSeason: {season}\nLiga: {league}\nGroup ID: {groupId}\n\nGusto mo bang i-configure ang liga na ito sa database? Nagbibigay-daan ito sa awtomatikong pagkuha ng data ng talahanayan.",
        "teamManagement.configureLeagueTitle" to "I-configure ang liga?",
        "teamManagement.createAndEdit" to "Gumawa at mag-edit",
        "teamManagement.created" to "Nilikha",
        "teamManagement.createNewTeam" to "Gumawa ng bagong team",
        "teamManagement.dataFetchFailed" to "Hindi makuha ang data.",
        "teamManagement.delete" to "Tanggalin",
        "teamManagement.deleteTeamConfirm" to "Gusto mo ba talagang tanggalin ang club team na \"{name}\"?",
        "teamManagement.deleteTeamTitle" to "Tanggalin ang koponan ng club",
        "teamManagement.documentAvailable" to "Available",
        "teamManagement.documentMissing" to "Nawawala",
        "teamManagement.documentNotFound" to "Hindi mahanap ang napiling dokumento.",
        "teamManagement.documentParsedSummary" to "Matagumpay na na-upload at na-parse ang {label}.\n\nNakita ang mga katugma: {matchesFound}\nNagawa ang mga bagong tugma: {created}\nNa-update ang mga laban: {updated}",
        "teamManagement.documents" to "Mga dokumento",
        "teamManagement.documentsIntro" to "Mag-upload, suriin at muling i-parse ang mga listahan ng code at listahan ng PIN kung kinakailangan.",
        "teamManagement.documentUploaded" to "Matagumpay na na-upload ang {label} \"{fileName}\".",
        "teamManagement.edit" to "I-edit",
        "teamManagement.editTeam" to "I-edit ang koponan",
        "teamManagement.eligibility" to "Pagiging karapat-dapat",
        "teamManagement.eligibilityAdultRelease" to "Pinayagan sa adults",
        "teamManagement.eligibilityAdultReleaseAndReserve" to "Pinayagan + reserve sa adults",
        "teamManagement.eligibilityAdultReserve" to "Reserve sa adults",
        "teamManagement.eligibilityRegular" to "Karaniwan",
        "teamManagement.enterUrlForAutoConfig" to "Maglagay ng myTischtennis URL para sa awtomatikong pagsasaayos",
        "teamManagement.error" to "Error",
        "teamManagement.errorConfiguringLeague" to "Hindi ma-configure ang liga.",
        "teamManagement.errorConfiguringTeam" to "Hindi ma-configure ang koponan.",
        "teamManagement.errorDeletingTeam" to "Nabigong tanggalin ang club team.",
        "teamManagement.errorLoadingPdf" to "Nabigong i-load ang PDF.",
        "teamManagement.errorLoadingStats" to "Hindi ma-load ang mga istatistika.",
        "teamManagement.errorParsingPdf" to "Nabigong i-parse ang PDF file",
        "teamManagement.errorParsingUrl" to "Hindi ma-parse ang URL. Pakisuri ang format.",
        "teamManagement.errorsCount" to "Mga Error: {count}",
        "teamManagement.errorUploadingDocument" to "Nabigong i-upload at i-parse ang file.",
        "teamManagement.exportLineupPdf" to "I-export ang line-up bilang PDF",
        "teamManagement.fetched" to "kinuha",
        "teamManagement.fetchTimedOut" to "Nag-time out habang kumukuha ng data (napakatagal ng async na trabaho).",
        "teamManagement.fetchTimeoutShort" to "Nag-time out habang kumukuha ng data.",
        "teamManagement.fileTooLarge" to "Ang {label} ay hindi dapat lumampas sa 10 MB.",
        "teamManagement.fileTooLargeTitle" to "Masyadong malaki ang file",
        "teamManagement.filterAll" to "Lahat",
        "teamManagement.filterConfigured" to "Na-configure",
        "teamManagement.filterNeedsAttention" to "Kailangan ng pagsusuri",
        "teamManagement.filterNoLeague" to "Walang liga",
        "teamManagement.firstHalf" to "Unang yugto",
        "teamManagement.firstHalfFull" to "Unang yugto (Hulyo - Disyembre)",
        "teamManagement.fullyConfigured" to "Ganap na naka-configure",
        "teamManagement.groupId" to "Group ID",
        "teamManagement.groupName" to "Pangalan ng pangkat",
        "teamManagement.invalidFileExtension" to "Ang {label} ay dapat magkaroon ng isa sa mga sumusunod na extension: {extensions}.",
        "teamManagement.invalidFileTypeTitle" to "Di-wastong uri ng file",
        "teamManagement.invalidMimeType" to "Ang {label} ay may hindi inaasahang uri ng MIME: {type}.",
        "teamManagement.lastRun" to "Huling pagtakbo",
        "teamManagement.lastUpdated" to "Huling na-update",
        "teamManagement.latestUpload" to "Huling na-upload: {date}",
        "teamManagement.league" to "Liga",
        "teamManagement.leagueConfiguredDetails" to "Liga: {league}\nSeason: {season}\nSamahan: {association}\nGroup ID: {groupId}\n\nAng data ng talahanayan ay maaari na ngayong awtomatikong makuha.",
        "teamManagement.leagueConfiguredSuccess" to "Matagumpay na na-configure ang liga. Ang data ng talahanayan ay maaari na ngayong awtomatikong makuha.",
        "teamManagement.leagueFieldRequired" to "Mangyaring pumili ng liga at i-save.",
        "teamManagement.lineupEmpty" to "Wala pang manlalarong itinalaga sa koponang ito.",
        "teamManagement.lineupPdfEmpty" to "Walang manlalaro sa line-up – hindi makagawa ng PDF.",
        "teamManagement.lineupPdfFilePrefix" to "Line-up",
        "teamManagement.lineupProposal" to "Line-up ayon sa QTTR",
        "teamManagement.lineupSaved" to "Na-save ang line-up ng team.",
        "teamManagement.lineupSaveError" to "Hindi mai-save ang line-up ng koponan.",
        "teamManagement.lineupUnsavedChanges" to "May mga hindi na-save na pagbabago sa line-up ng team.",
        "teamManagement.lineupValidationTooLargeGap" to "Mahigit 30 QTTR points ang lamang ni {higher} kay {lower}. Pakitama ang ayos na ito.",
        "teamManagement.loadingStats" to "Nilo-load ang mga istatistika...",
        "teamManagement.manualFetch" to "Kunin",
        "teamManagement.markAsInterested" to "Markahan bilang Interesado",
        "teamManagement.matchesSummary" to "Nakita ang mga katugma: {matchesFound}\nNagawa ang mga bagong tugma: {created}\nNa-update ang mga laban: {updated}",
        "teamManagement.matchResults" to "Mga resulta ng tugma",
        "teamManagement.missingConfigSummary" to "Nawawalang impormasyon:",
        "teamManagement.missingItems" to "Nawawala: {items}",
        "teamManagement.missingLeagueForTeam" to "Walang liga na ibinigay para sa napiling koponan.",
        "teamManagement.moreErrors" to "... at {count} pa",
        "teamManagement.myTischtennis" to "myTischtennis",
        "teamManagement.myTischtennisIntro" to "Mag-paste ng URL, suriin ang configuration at manu-manong kunin ang data kapag kinakailangan.",
        "teamManagement.mytischtennisLoginRequired" to "Kinakailangan ang pag-login sa myTischtennis",
        "teamManagement.myTischtennisUrlPlaceholder" to "myTischtennis URL...",
        "teamManagement.myTischtennisUrlRequired" to "I-paste at i-parse ang URL ng MyTischtennis para i-link ang team ID at datos ng liga.",
        "teamManagement.never" to "Hindi kailanman",
        "teamManagement.newTeam" to "Bagong team",
        "teamManagement.noAssignment" to "Walang assignment",
        "teamManagement.noAutomaticUpdate" to "Wala pang awtomatikong pag-update",
        "teamManagement.noDocumentUploadYet" to "Wala pang na-upload na dokumento.",
        "teamManagement.noIssues" to "Walang bukas na mga isyu sa configuration.",
        "teamManagement.noLeague" to "Walang liga",
        "teamManagement.noMatchesFoundDetails" to "Tandaan: Walang nakitang tugma.\nMga linya sa dokumento: {lines}",
        "teamManagement.noMatchesFoundTitle" to "Walang nakitang tugma",
        "teamManagement.noMatchingTeams" to "Walang mga koponan na tumutugma sa kasalukuyang paghahanap o filter.",
        "teamManagement.noMembersInPool" to "Walang nakitang katugmang miyembro.",
        "teamManagement.noPlannedLeague" to "Walang nakatakdang liga",
        "teamManagement.noPlayerStats" to "Walang naitalang pagpapakita.",
        "teamManagement.notConfigured" to "Hindi naka-configure",
        "teamManagement.notCreated" to "Hindi nilikha",
        "teamManagement.noTeamsYet" to "Wala pang teams. Lumikha ng iyong unang koponan.",
        "teamManagement.openDocument" to "Bukas",
        "teamManagement.openInWorkspace" to "Bukas para i-edit",
        "teamManagement.parseDocument" to "I-parse muli",
        "teamManagement.parseUrlAction" to "Suriin ang URL",
        "teamManagement.partiallyConfigured" to "Bahagyang na-configure",
        "teamManagement.pdfFileNotFound" to "Hindi mahanap ang PDF file.",
        "teamManagement.pinList" to "Listahan ng PIN",
        "teamManagement.plannedLeague" to "Plano na liga",
        "teamManagement.plannedLeagueHint" to "Opsyonal. Hiwalay sa nakarehistrong liga (MyTischtennis).",
        "teamManagement.plannedLeaguePlaceholder" to "hal. district league, pagkatapos ng susunod na rehistro …",
        "teamManagement.planningSubtitle" to "Ipamahagi ang mga miyembro sa mga nakaiskedyul na koponan, itakda ang pagkakasunud-sunod, at tingnan ang mga bukas na takdang-aralin.",
        "teamManagement.planningTitle" to "Pagpaplano ng pangkat",
        "teamManagement.player" to "Manlalaro",
        "teamManagement.playersPoolSubtitle" to "Lahat ng aktibong miyembro na may interes sa laro",
        "teamManagement.playerStats" to "Mga pagpapakita",
        "teamManagement.playerStatsIntro" to "Mabilis na pangkalahatang-ideya ng mga pagpapakita ng koponan na ito sa kasalukuyang season.",
        "teamManagement.playersWantToPlay" to "Gusto naming maglaro.",
        "teamManagement.qttr" to "(Q)TTR rating",
        "teamManagement.ratingUpdates" to "Mga update sa rating",
        "teamManagement.refreshStats" to "I-refresh",
        "teamManagement.reuploadFile" to "Paki-upload muli ang file at subukang muli.",
        "teamManagement.searchMembers" to "Maghanap ng miyembro",
        "teamManagement.searchTeams" to "Koponan sa paghahanap",
        "teamManagement.season" to "Season",
        "teamManagement.seasonFull" to "Buong season (mula 1 Hulyo)",
        "teamManagement.seasonUnknown" to "hindi kilala",
        "teamManagement.secondHalf" to "Ikalawang yugto",
        "teamManagement.secondHalfFull" to "Ikalawang yugto (mula Enero 1)",
        "teamManagement.selectedLineup" to "Napiling manlalaro",
        "teamManagement.selectMember" to "Pumili ng miyembro",
        "teamManagement.selectTeam" to "Piliin ang Koponan",
        "teamManagement.selectTeamFirst" to "Mangyaring pumili muna ng isang koponan",
        "teamManagement.selectTeamForConfiguration" to "Upang maisaaktibo ang pagsasaayos ng myTischtennis, kailangan mo munang pumili ng isang koponan mula sa listahan.",
        "teamManagement.selectTeamTitle" to "Pumili ng koponan",
        "teamManagement.showCodeList" to "Ipakita ang listahan ng code",
        "teamManagement.showPinList" to "Ipakita ang listahan ng PIN",
        "teamManagement.sortFirstLast" to "Pag-uuri: Pangalan Apelyido",
        "teamManagement.sortLastFirst" to "Pag-uuri: Apelyido Pangalan",
        "teamManagement.status" to "katayuan",
        "teamManagement.subtitle" to "Pumili ng mga koponan, suriin ang configuration at panatilihin ang data ng liga sa isang lugar.",
        "teamManagement.successful" to "Matagumpay",
        "teamManagement.tableUpdateLabel" to "Pag-update ng talahanayan:",
        "teamManagement.tableUrlDetected" to "Nakita ang URL ng talahanayan",
        "teamManagement.team" to "Team",
        "teamManagement.teamAgeGroup" to "pangkat ng edad",
        "teamManagement.teamConfiguredDetails" to "Liga: {league}\nSeason: {season}\nAktibo na ngayon ang awtomatikong pagkuha ng data.",
        "teamManagement.teamConfiguredSuccess" to "Matagumpay na na-configure ang koponan. Aktibo na ngayon ang awtomatikong pagkuha ng data.",
        "teamManagement.teamDataFetched" to "Matagumpay na nakuha ang data ng koponan.",
        "teamManagement.teamDataFetchedDetails" to "Koponan: {team}\nMga nakuhang tala: {count}",
        "teamManagement.teamGender" to "Kasarian",
        "teamManagement.teamGenderFemale" to "Babae",
        "teamManagement.teamGenderOpen" to "Bukas",
        "teamManagement.teamHasNoLeague" to "Ang pangkat na ito ay hindi nakatalaga sa isang liga.",
        "teamManagement.teamId" to "ID ng Team",
        "teamManagement.teamName" to "Pangalan ng pangkat",
        "teamManagement.teamNamePlaceholder" to "hal. Lalaki 1, Babae 2",
        "teamManagement.teams" to "Teams",
        "teamManagement.title" to "Pamamahala ng Koponan",
        "teamManagement.unassignedMembers" to "hindi pa nakatalaga",
        "teamManagement.unassignedMembersSubtitle" to "Mga Miyembrong Walang Team Assignment",
        "teamManagement.unknown" to "Hindi alam",
        "teamManagement.unknownTeam" to "Hindi kilalang koponan",
        "teamManagement.updated" to "na-update",
        "teamManagement.uploadNewVersion" to "Mag-upload ng bagong bersyon",
        "tournament.apply" to "Ilapat ang Mga Pagbabago",
        "tournaments.action" to "Aksyon",
        "tournaments.add" to "Idagdag",
        "tournaments.addClass" to "Magdagdag ng Klase",
        "tournaments.addClubMember" to "Magdagdag ng Miyembro ng Club",
        "tournaments.addExternalParticipant" to "Magdagdag ng Panlabas na Kalahok",
        "tournaments.addPairing" to "Magdagdag ng pagpapares",
        "tournaments.addPoolRule" to "Magdagdag ng pool rule",
        "tournaments.address" to "Address",
        "tournaments.adjustTournamentSearch" to "Ayusin ang termino para sa paghahanap o lumikha ng bagong paligsahan.",
        "tournaments.advancersPerGroup" to "Mga promoter bawat grupo",
        "tournaments.allClasses" to "Lahat ng Klase",
        "tournaments.allDataComplete" to "Kumpleto na ang lahat ng datos ng mga kalahok.",
        "tournaments.allDataCompleteTop3" to "Kumpleto na ang lahat ng datos ng unang 3 puwesto.",
        "tournaments.apply" to "Ilapat ang Mga Pagbabago",
        "tournaments.assignmentReviewTitle" to "{count} kalahok ay nangangailangan ng isang pagpipilian:",
        "tournaments.atLeastOnePoolRule" to "Mangyaring magdagdag ng kahit isang pool rule para sa {label} (hal. places 1,2).",
        "tournaments.autoAssignableParticipantsHint" to "{count} sa mga ito ay maaaring awtomatikong italaga.",
        "tournaments.autoAssignEligible" to "Awtomatikong italaga",
        "tournaments.autoAssignEligibleDone" to "{count} kalahok ay awtomatikong itinalaga.",
        "tournaments.autoAssignEligibleNone" to "Kasalukuyang walang kalahok na may iisang awtomatikong takdang-aralin sa klase.",
        "tournaments.autoAssignEligiblePartial" to "{successCount} kalahok ay awtomatikong itinalaga, {errorCount} ay nabigo.",
        "tournaments.birthdate" to "Petsa ng kapanganakan",
        "tournaments.cancel" to "Kanselahin",
        "tournaments.class" to "Klase",
        "tournaments.classes" to "Mga klase",
        "tournaments.className" to "Pangalan ng Klase",
        "tournaments.cleanupOrphanedMatches" to "Linisin ang mga ulilang laro",
        "tournaments.club" to "Samahan",
        "tournaments.clubMember" to "(Miyembro ng club)",
        "tournaments.conflictSuggestionLabel" to "Mga mungkahi:",
        "tournaments.correctMatch" to "Itama",
        "tournaments.create" to "Lumikha",
        "tournaments.createFinalFromIntermediate" to "Gumawa ng final round mula sa intermediate round",
        "tournaments.createFinalFromPreliminary" to "Gumawa ng final round mula sa preliminary round",
        "tournaments.createGroupMatches" to "Lumikha ng mga tugma ng pangkat",
        "tournaments.createGroups" to "Sino ang Maaaring Gumawa ng Mga Grupo",
        "tournaments.createIntermediateFromPreliminary" to "Gumawa ng intermediate round mula sa preliminary round",
        "tournaments.createMatches" to "Magtakda ng mga tugma",
        "tournaments.createSuggestedPairings" to "Gumawa ng mga pagpapares",
        "tournaments.currentClass" to "Aktibong Klase",
        "tournaments.dataNotRecorded" to "Hindi pa naitala",
        "tournaments.date" to "Petsa",
        "tournaments.delete" to "Tanggalin",
        "tournaments.deleteClassConfirm" to "Sigurado ka bang buburahin ang class na \"{name}\"?",
        "tournaments.deleteClassParticipantsDetached" to "Aalisin ang lahat ng participants sa class na ito.",
        "tournaments.deleteClassTitle" to "Burahin ang class",
        "tournaments.deleteExistingPairingsConfirm" to "Buburahin ang mga kasalukuyang pairing. Magpatuloy?",
        "tournaments.deleteKORound" to "Knockout",
        "tournaments.diff" to "Diff",
        "tournaments.distributeTables" to "Ipamahagi ang mga bakanteng mesa",
        "tournaments.distributeTablesResult" to "Pamamahagi ng mesa",
        "tournaments.doubles" to "Doble",
        "tournaments.doublesPairingHint" to "{count} kalahok sa doubles class na ito ay nangangailangan pa rin ng kapareha.",
        "tournaments.doublesTournament" to "Dobleng paligsahan",
        "tournaments.doublesTournamentHint" to "Ginagawang doble ang lahat ng umiiral na klase at gagawa ng mga bagong klase bilang mga doble bilang default.",
        "tournaments.edit" to "I-edit",
        "tournaments.eligibleClassesHint" to "Angkop para sa: {classes}",
        "tournaments.email" to "Email address",
        "tournaments.encounter" to "Pagpupulong",
        "tournaments.enterClassName" to "Mangyaring maglagay ng pangalan ng class.",
        "tournaments.enterExternalParticipantName" to "Mangyaring ilagay kahit first name at last name.",
        "tournaments.enterMiniLocation" to "Mangyaring maglagay ng lokasyon.",
        "tournaments.errorCreatingGroups" to "Error sa paggawa ng mga grupo.",
        "tournaments.errorCreatingTournament" to "Error sa paggawa ng tournament.",
        "tournaments.errorDistributingTables" to "May error sa pamamahagi ng mga mesa.",
        "tournaments.errorGeneratingPdf" to "Error sa pagbuo ng PDF.",
        "tournaments.errorMergingClasses" to "Nabigong pagsamahin ang mga klase.",
        "tournaments.errorMoreSeededThanUnseeded" to "Mas marami ang taya kaysa mga unseeded na manlalaro. Hindi makagawa ng mga random na pagpapares.",
        "tournaments.errorResettingKORound" to "Error sa pag-reset ng knockout round.",
        "tournaments.errorUpdatingTournament" to "Error sa pag-update ng tournament.",
        "tournaments.exportPDF" to "I-export ang PDF",
        "tournaments.external" to "Panlabas",
        "tournaments.finalPlacements" to "Mga huling placement",
        "tournaments.finalRound" to "Panghuling round",
        "tournaments.finishMatch" to "Tapusin",
        "tournaments.firstName" to "Pangalan",
        "tournaments.forForwarding" to "para sa pagpapasa",
        "tournaments.gaveUp" to "Nakalagay",
        "tournaments.gaveUpHint" to "Sumuko na ang manlalaro – lahat ng laro ay binibilang para sa kalaban (11:0) o 0:0 para sa pareho.",
        "tournaments.genderAll" to "Lahat",
        "tournaments.genderMixed" to "Mixed",
        "tournaments.generatingPDF" to "Gumagawa ng PDF...",
        "tournaments.group" to "Grupo",
        "tournaments.groupMatches" to "Mga Inter Group Matches",
        "tournaments.groupNumber" to "Grupo",
        "tournaments.groupPlacements" to "Mga Placement ng Grupo",
        "tournaments.groupsLabel" to "Mga grupo",
        "tournaments.groupsOverview" to "Pangkalahatang-ideya ng mga pangkat",
        "tournaments.groupsPerClass" to "Pool standing",
        "tournaments.groupsPerClassHint" to "Para sa bawat klase, ilagay ang bilang ng mga grupo (0 = walang mga grupo para sa klase na ito):",
        "tournaments.index" to "Index",
        "tournaments.intermediateRound" to "Intermediate round (round 2)",
        "tournaments.internalStatsAbsoluteRank" to "Ranggo sa kabuuang marka",
        "tournaments.internalStatsAgeFilter" to "Edad at kasarian (singles)",
        "tournaments.internalStatsAgeFilterAll" to "Lahat ng pangkat ng edad",
        "tournaments.internalStatsAgeFilterNone" to "Walang napiling pangkat ng edad",
        "tournaments.internalStatsAgeNoClass" to "Walang klase",
        "tournaments.internalStatsAgeSelectAll" to "Lahat",
        "tournaments.internalStatsAgeSelectNone" to "Wala",
        "tournaments.internalStatsAverageRank" to "Ranggo sa average (bawat paligsahan)",
        "tournaments.internalStatsAvgPoints" to "Avg.",
        "tournaments.internalStatsEmpty" to "Walang datos sa napiling panahon.",
        "tournaments.internalStatsExportPdf" to "I-export bilang PDF",
        "tournaments.internalStatsFilterAgeBands" to "Mga klase sa edad",
        "tournaments.internalStatsFilterGenderColumn" to "Kasarian",
        "tournaments.internalStatsGenderScopeAll" to "Lahat",
        "tournaments.internalStatsGenderScopeGirls" to "Mga babae lang",
        "tournaments.internalStatsLast12Months" to "Huling 12 buwan",
        "tournaments.internalStatsLast3Months" to "Huling 3 buwan",
        "tournaments.internalStatsLast6Months" to "Huling 6 na buwan",
        "tournaments.internalStatsOpenButton" to "Buksan ang estadistika (singles)",
        "tournaments.internalStatsPeriod" to "Saklaw",
        "tournaments.internalStatsPoints" to "Kabuuan",
        "tournaments.internalStatsPointsExplain" to "Marka: sa bawat grupo ang puwesto ay nasa porsyento (may N na may ranggo: 1 = 100%, huli = 0%, linear sa gitna; parehong ranggo = parehong halaga). Kinakabilang ang lahat ng may ranggo sa grupo (kasama ang bisita). Isang manlalaro lamang: 100%. Sa KO: pinakamataas na grupo ng klase + 1, +1 bawat panalong laro sa KO. Mga miyembro lamang (singles).",
        "tournaments.internalStatsTitle" to "Estadistika ng internal na paligsahan (singles)",
        "tournaments.internalStatsTournamentsInPeriod" to "{count} paligsahan sa panahon (hindi kasama ang mini championships).",
        "tournaments.internalStatsTtAdult" to "Mga matatanda",
        "tournaments.internalTournaments" to "Mga panloob na paligsahan",
        "tournaments.knockoutLabel" to "KO",
        "tournaments.koRound" to "knock-out round",
        "tournaments.lastName" to "Apelyido",
        "tournaments.livePosition" to "Live na upuan",
        "tournaments.loadFromTraining" to "Mag-load mula sa araw ng pagsasanay",
        "tournaments.markMatchLive" to "Markahan bilang live",
        "tournaments.maxGroupSize" to "Pinakamataas na Laki ng Party",
        "tournaments.mergeClasses" to "Pagsamahin ang mga klase (karaniwang yugto ng pangkat)",
        "tournaments.mergeDistribute" to "Ipamahagi ang mga manlalaro mula sa A sa lahat ng grupo (mula sa B)",
        "tournaments.mergeSingleGroup" to "Lahat ng manlalaro mula sa A sa isang grupo (sa B)",
        "tournaments.minBirthYear" to "Ipinanganak sa taon o mas bago",
        "tournaments.miniChampionshipLocation" to "Lokasyon",
        "tournaments.miniChampionships" to "Mga Mini Championship",
        "tournaments.miniChampionshipYear" to "taon",
        "tournaments.miniChampionshipYearHint" to "12 = ngayong taon 12 o 13 taon, 10 = 10 o 11, 8 = 9 at mas bata",
        "tournaments.minimumParticipantsForPairings" to "Kailangan ng hindi bababa sa 2 participants para sa pairings.",
        "tournaments.missingDataPDF" to "Nawawalang datos bilang PDF",
        "tournaments.missingDataPDFSubtitle" to "Pakikolekta ang nawawalang datos (may markang ____) mula sa mga kalahok at itala dito.",
        "tournaments.missingDataPDFSubtitleTop3" to "Pakikolekta ang nawawalang datos ng unang 3 (may markang ____) at itala dito.",
        "tournaments.missingDataPDFTitle" to "Nawawalang datos ng mga kalahok – Mini championship",
        "tournaments.missingDataPDFTitleTop3" to "Nawawalang datos – Top 3 Mini championship",
        "tournaments.name" to "pangalan",
        "tournaments.newMiniChampionship" to "Bagong Mini Championship",
        "tournaments.setShort" to "Set",
        "tournaments.newTournament" to "Magdagdag ng Bagong Tournament",
        "tournaments.noAssignableMatches" to "Walang laban kung saan pareho ang mga manlalaro ay bakante.",
        "tournaments.noClassesYet" to "Wala pang klase. Magdagdag ng bagong klase.",
        "tournaments.noEligibleClass" to "Walang nakitang angkop na klase.",
        "tournaments.noFreeTables" to "Walang bakanteng mesa.",
        "tournaments.noMatchingTournamentsTitle" to "Walang katugmang mga paligsahan",
        "tournaments.noOrphanedMatchesFound" to "Walang nahanap na orphaned matches.",
        "tournaments.noPlacementsYet" to "Wala pang available na mga placement.",
        "tournaments.noPlayerDataAvailable" to "Walang available na data ng player",
        "tournaments.noPoolRulesYet12" to "Wala pang rules. Halimbawa: places 1 at 2 -> top round-2 groups.",
        "tournaments.noPoolRulesYetFinal" to "Wala pang rules. Halimbawa: places 1 at 2 -> final round.",
        "tournaments.noTop3Yet" to "Hindi pa natutukoy ang unang 3 puwesto.",
        "tournaments.noTournamentDate" to "Walang tournament date.",
        "tournaments.noTournamentsCreatedYet" to "Wala pang paligsahan na nalikha.",
        "tournaments.noTrainingOnDate" to "Walang training session para sa {date}.",
        "tournaments.noTrainingParticipants" to "Walang participants na nakita sa training session para sa petsang ito.",
        "tournaments.noValidTrainingParticipants" to "Walang valid na participants na nakita sa training session para sa petsang ito.",
        "tournaments.numberOfGroups" to "Nr ng mga grupo",
        "tournaments.numberOfTables" to "Bilang ng mesa",
        "tournaments.openTournaments" to "Buksan ang mga Tournament",
        "tournaments.optional" to "optional",
        "tournaments.orphanedMatchesRemoved" to "{count} orphaned matches ang naalis.",
        "tournaments.outOfCompetition" to "Player mula sa A wala sa kompetisyon",
        "tournaments.page" to "Pahina",
        "tournaments.pairingAlreadyExists" to "May ganitong pairing na.",
        "tournaments.pairings" to "Dobleng Pagpares",
        "tournaments.pairingsCreatedWithErrors" to "{successCount} pairings ang nagawa, {errorCount} errors.",
        "tournaments.participantConflicts" to "Mga salungatan",
        "tournaments.participantNotFound" to "Hindi nakita ang participant.",
        "tournaments.participants" to "Mga kalahok",
        "tournaments.participantsNeedClassAssignment" to "{count} kalahok ay hindi pa nakatalaga sa isang klase. Dapat italaga muna ang mga ito.",
        "tournaments.phone" to "Telepono",
        "tournaments.placementsPendingFinals" to "Lalabas ang mga panghuling paglalagay sa sandaling umiral ang maraming grupo o panghuling round.",
        "tournaments.placementsPendingGroups" to "Lilitaw ang mga paglalagay ng pangkat kapag umiral na ang mga tugma ng pangkat.",
        "tournaments.placementsPendingNoGroups" to "Lalabas dito ang mga paglalagay sa sandaling magkaroon ng mga laban ng grupo o panghuling round.",
        "tournaments.placementsPendingSelectedClass" to "Wala pang mga paglalagay para sa kasalukuyang napiling klase.",
        "tournaments.placementsPendingTitle" to "Hindi pa available ang mga paglalagay",
        "tournaments.placesFromEachGroup" to "Mga puwesto mula sa bawat grupo (hal. 1,2)",
        "tournaments.player" to "Mga skater",
        "tournaments.playerOne" to "Manlalaro 1",
        "tournaments.playerTwo" to "Manlalaro 2",
        "tournaments.playInGroups" to "Naglalaro sa mga pangkat",
        "tournaments.playThirdPlace" to "Maglaro para sa ikatlong puwesto",
        "tournaments.pleaseEnterDate" to "Mangyaring maglagay ng petsa",
        "tournaments.pleaseSelectParticipant" to "Mangyaring pumili ng isang mag-aaral.",
        "tournaments.points" to "Mga puntos",
        "tournaments.pointsRatio" to "Mga Puntos sa Laro",
        "tournaments.poolRuleLabel" to "Panuntunan {number}",
        "tournaments.poolRulePlacesHelp" to "Halimbawa: 1 o 1,2",
        "tournaments.poolRulePlacesLabel" to "Aling mga lugar ang sumusulong?",
        "tournaments.poolRulePreview" to "Mula sa bawat pangkat, ang mga lugar na {places} ay umuusad sa {target}.",
        "tournaments.poolRuleQuickExamples" to "Mabilis na mga halimbawa:",
        "tournaments.poolRuleSummary" to "Mga lugar {places} pumunta sa {target}",
        "tournaments.poolRuleTargetGroupsDetailed" to "{count} target na grupo",
        "tournaments.poolRuleTargetKnockout" to "ang knockout bracket",
        "tournaments.poolRuleTargetLabel" to "Saan napupunta ang mga lugar na ito?",
        "tournaments.position" to "Ang parisukat",
        "tournaments.problemConfigDescription" to "Suriin ang petsa, pangalan at panalong set.",
        "tournaments.problemConfigTitle" to "Hindi kumpleto ang configuration",
        "tournaments.problemConflictsDescription" to "Suriin ang mga hindi wastong klase, nawawalang data o hindi malinaw na mga takdang-aralin.",
        "tournaments.problemConflictsTitle" to "{count} kalahok na may mga salungatan",
        "tournaments.problemDoublesAutoDescription" to "Ang open doubles class ay maaaring awtomatikong ipares kaagad.",
        "tournaments.problemDoublesDescription" to "Kailangan pa rin ng isa o higit pang doubles class ng mga partner assignment.",
        "tournaments.problemDoublesTitle" to "{count} open doubles partners",
        "tournaments.problemGroupMatchesDescription" to "Ang mga grupo ay handa na, ngunit ang mga laban ay hindi pa nagagawa.",
        "tournaments.problemGroupMatchesTitle" to "Hindi pa nabuo ang mga tugma ng pangkat",
        "tournaments.problemGroupsMissingDescription" to "Ang paligsahan ng grupo ay kailangang gumawa ng mga grupo muna.",
        "tournaments.problemGroupsMissingTitle" to "Hindi pa nagagawa ang mga grupo",
        "tournaments.problemKnockoutReadyDescription" to "Ang yugto ng pangkat ay kumpleto at ang pangwakas na pag-ikot ay maaaring mabuo ngayon.",
        "tournaments.problemKnockoutReadyTitle" to "Maaaring simulan ang knockout",
        "tournaments.problemUnassignedAutoDescription" to "{count} sa mga ito ay maaaring awtomatikong italaga kaagad.",
        "tournaments.problemUnassignedDescription" to "Ang mga kalahok na ito ay nangangailangan pa rin ng manu-manong takdang-aralin sa klase.",
        "tournaments.problemUnassignedTitle" to "{count} kalahok na walang klase",
        "tournaments.promotionRule12" to "Advance: preliminary round → intermediate round (1→2)",
        "tournaments.promotionRuleDescription12" to "Tukuyin kung aling mga lugar mula sa bawat preliminary group ang uusad sa intermediate round.",
        "tournaments.promotionRuleDescriptionFinalGroups" to "Tukuyin kung aling mga lugar mula sa nakaraang round ang uusad sa final-round na mga grupo.",
        "tournaments.promotionRuleDescriptionFinalKnockout" to "Tukuyin kung aling mga lugar mula sa nakaraang round na umabante sa knockout bracket.",
        "tournaments.promotionRuleFinal" to "Advance: round {from} → round {to}",
        "tournaments.randomizeGroups" to "I-randomize",
        "tournaments.randomPairings" to "Random na Dobleng Pares",
        "tournaments.randomPairingsCreated" to "Nagawa ang mga random na pagpapares.",
        "tournaments.resetGroupMatches" to "Mga Inter Group Matches",
        "tournaments.resetGroups" to "I-reset ang Mga Grupo",
        "tournaments.result" to "Resulta",
        "tournaments.resultsRanking" to "Ranggo",
        "tournaments.round" to "Bilog",
        "tournaments.roundGroupCount" to "Bilang ng mga grupo",
        "tournaments.roundMode" to "Mode",
        "tournaments.ruleStatusBlocked" to "Naka-block",
        "tournaments.ruleStatusOk" to "Mukhang maganda",
        "tournaments.ruleStatusOkDescription" to "Ang panuntunang ito ay tumutugma sa kasalukuyang target na round at maaaring gamitin kung ano man.",
        "tournaments.ruleStatusReview" to "Balik-aral",
        "tournaments.save" to "I-save",
        "tournaments.saveRounds" to "I-save ang rounds",
        "tournaments.seeded" to "Binhi",
        "tournaments.selectClass" to "Piliin ang Klase",
        "tournaments.selectClassPrompt" to "Mangyaring pumili ng klase.",
        "tournaments.selectedTournament" to "Aktibong paligsahan",
        "tournaments.selectParticipant" to "Pumili ng user",
        "tournaments.selectPlayer" to "Pumili ng mga manlalaro",
        "tournaments.selectTournamentFirst" to "Mangyaring pumili muna ng tournament.",
        "tournaments.selectTwoDifferentPlayers" to "Mangyaring pumili ng dalawang magkaibang player.",
        "tournaments.setDiff" to "Pagkakaiba ng Pangungusap",
        "tournaments.sets" to "mga parirala",
        "tournaments.showClass" to "Tingnan ang Klase",
        "tournaments.showingTournamentCount" to "{visible} ng {total}",
        "tournaments.showPlayerDetails" to "Tingnan ang Mga Detalye ng Manlalaro",
        "tournaments.singles" to "Walang asawa",
        "tournaments.sourceClass" to "Pinagmulan",
        "tournaments.stageActionMissingRulesHint" to "Gumawa muna ng kahit isang advancement rule bago ilipat ang mga manlalaro sa susunod na round.",
        "tournaments.stageActionRun" to "Takbo na",
        "tournaments.stageActionsDescription" to "Ang mga hakbang na ito ay naglilipat ng mga kwalipikadong manlalaro sa susunod na round.",
        "tournaments.stageActionsTitle" to "Mga susunod na aksyon",
        "tournaments.stageConfigBadServerResponse" to "Hindi wastong tugon mula sa server.",
        "tournaments.stageConfigCurrentSetup" to "Kasalukuyang istraktura",
        "tournaments.stageConfigIntro" to "Opsyonal ang intermediate round. Kapag in-activate mo ito, laging may susunod na final round. Ang knockout final round ay gagawin bilang isang bracket.",
        "tournaments.stageConfigLoadError" to "Error sa pag-load ng round configuration.",
        "tournaments.stageConfigLoading" to "Naglo-load ng round configuration…",
        "tournaments.stageConfigMissingIds" to "Hindi ma-save: kulang ang club o tournament ID.",
        "tournaments.stageConfigTitle" to "Intermediate at Final Round",
        "tournaments.stageCreated" to "Nagawa ang round {round}.",
        "tournaments.stageFinalDescription" to "Magpasya kung ang huling round ay dapat laruin bilang mga grupo o direkta bilang isang knockout bracket.",
        "tournaments.stageFlowBreakdownActionAddRule" to "Magdagdag ng panuntunan",
        "tournaments.stageFlowBreakdownActionOpen" to "Buksan ang panuntunan",
        "tournaments.stageFlowBreakdownActionReview" to "Suriin ang mga isyu",
        "tournaments.stageFlowBreakdownErrors" to "{count} (mga) error sa pagharang",
        "tournaments.stageFlowBreakdownMissingRule" to "Wala pang kumpletong panuntunan ang naidagdag",
        "tournaments.stageFlowBreakdownOk" to "Mukhang maganda ang configuration",
        "tournaments.stageFlowBreakdownWarnings" to "{count} (mga) babala bukas",
        "tournaments.stageFlowDirectFinal" to "Preliminary round -> final round ({final})",
        "tournaments.stageFlowHealthBlocked" to "Ang bilog na lohika ay magkasalungat",
        "tournaments.stageFlowHealthBlockedDescription" to "Hindi bababa sa isang panuntunan ang kasalukuyang hindi tumutugma sa target na round o naglalaman ng mga error sa configuration ng pagharang.",
        "tournaments.stageFlowHealthIncomplete" to "Ang round logic ay hindi kumpleto",
        "tournaments.stageFlowHealthMissingRules" to "Hindi bababa sa isang transition ang wala pang kumpletong panuntunan sa pagsulong.",
        "tournaments.stageFlowHealthOk" to "Mukhang maganda ang round logic",
        "tournaments.stageFlowHealthOkDescription" to "Ang mga transition sa pagitan ng mga round ay ganap na na-configure at kasalukuyang magkakaugnay.",
        "tournaments.stageFlowHealthReviewDescription" to "Ang round logic ay karaniwang magagamit, ngunit dapat pa ring suriin dahil sa mga bukas na pahiwatig.",
        "tournaments.stageFlowPreviewMissing" to "Wala pang na-configure na panuntunan.",
        "tournaments.stageFlowPreviewRule" to "Mga lugar {places} pumunta sa {target}",
        "tournaments.stageFlowPreviewRuleWithCount" to "{base} (inaasahang mga kwalipikado: {count})",
        "tournaments.stageFlowQualifiedPreviewEntry" to "G{group} · Lugar {position} · {name}",
        "tournaments.stageFlowQualifiedPreviewTitle" to "Kasalukuyang kwalipikado",
        "tournaments.stageFlowReadinessIncompleteGroups" to "{count} (mga) grupo ay hindi pa ganap na napagpasyahan",
        "tournaments.stageFlowReadinessNoGroups" to "Wala pang magkakatugmang grupo",
        "tournaments.stageFlowReadinessReady" to "Handa nang magsimula ang paglipat",
        "tournaments.stageFlowRecommendationError" to "Suriin muna ang unang error sa pagharang sa round logic.",
        "tournaments.stageFlowRecommendationFixes" to "Ang karaniwang mga problema sa pagsasaayos ay maaaring awtomatikong linisin kaagad.",
        "tournaments.stageFlowRecommendationMissingRule" to "Wala pa ring kumpletong panuntunan para sa {label}. Iyon ang pinakamagandang lugar para magpatuloy.",
        "tournaments.stageFlowRecommendationSave" to "Ang bilog na lohika ay magkakaugnay. Maaari mong i-save ang configuration ngayon.",
        "tournaments.stageFlowRecommendationTitle" to "Inirerekomenda ang susunod na hakbang",
        "tournaments.stageFlowRecommendationWarnings" to "May mga babala pa rin na dapat suriin bago i-save.",
        "tournaments.stageFlowWithIntermediate" to "Preliminary round -> intermediate round ({stage2}) -> final round ({final})",
        "tournaments.stageParticipantsTransferred" to "Ang mga kwalipikadong manlalaro ay inilipat sa {round}.",
        "tournaments.stageStep1" to "Hakbang 1",
        "tournaments.stageStep1Description" to "Magpasya muna kung dapat magkaroon ng karagdagang round pagkatapos ng preliminary round.",
        "tournaments.stageStep1Title" to "Magpasya sa isang intermediate round",
        "tournaments.stageStep2" to "Hakbang 2",
        "tournaments.stageStep2Description" to "Tukuyin kung ano ang magiging hitsura ng intermediate round at kung gaano karaming mga grupo ang kailangan nito.",
        "tournaments.stageStep3" to "Hakbang 3",
        "tournaments.stageValidationApplyAllFixes" to "Ilapat ang {count} (mga) mabilisang pag-aayos",
        "tournaments.stageValidationApplyFix" to "Mag-apply",
        "tournaments.stageValidationApplyTargetGroupFix" to "Itakda sa {count} target na grupo",
        "tournaments.stageValidationApplyTargetTypeFix" to "Lumipat sa {target}",
        "tournaments.stageValidationDescription" to "Ayusin ang mga puntong ito bago i-save o ilipat ang mga manlalaro sa susunod na round.",
        "tournaments.stageValidationGroupCountRequired" to "Mangyaring magtakda ng hindi bababa sa isang wastong bilang ng pangkat.",
        "tournaments.stageValidationKnockoutByesLikely" to "Sa inaasahang {count} qualifiers, malamang na kasama sa knockout bracket ang mga bye.",
        "tournaments.stageValidationKnockoutNeedsTwoPlayers" to "Ang isang knockout bracket ay nangangailangan ng hindi bababa sa 2 kwalipikadong manlalaro.",
        "tournaments.stageValidationKnockoutTargetOnly" to "Para sa isang knockout final round, tanging ang knockout bracket lang ang pinapayagan bilang target dito.",
        "tournaments.stageValidationNoRules" to "Wala pang panuntunan sa pagsulong para sa {stage}.",
        "tournaments.stageValidationNotEnoughQualifiersForGroups" to "Sa pamamagitan lamang ng {count} na mga kwalipikasyon para sa {groups} na mga target na grupo, ang mga walang laman na grupo ay gagawin.",
        "tournaments.stageValidationRulePlacesDuplicate" to "Ang isang panuntunan ay hindi dapat maglaman ng parehong lugar nang higit sa isang beses.",
        "tournaments.stageValidationRulePlacesGap" to "May mga gaps ang kahulugan ng lugar. Karaniwan ang isang tuluy-tuloy na pagkakasunud-sunod tulad ng 1,2 o 1,2,3 ay inilaan.",
        "tournaments.stageValidationRulePlacesInvalid" to "Ang kahulugan ng lugar ay hindi wasto. Ang mga positibong buong numero lamang tulad ng 1 o 1,2 ang pinapayagan.",
        "tournaments.stageValidationRulePlacesRequired" to "Magpasok ng kahit isang lugar na dapat umabante.",
        "tournaments.stageValidationRulesOverlap" to "Ang lugar na {place} ay itinalaga ng dalawang beses, sa panuntunan {first} at panuntunan {second}.",
        "tournaments.stageValidationSaveBlocked" to "Pakiayos muna ang mga naka-highlight na error sa configuration.",
        "tournaments.stageValidationSuggestion" to "Mungkahi: {value}",
        "tournaments.stageValidationTargetGroupCountMismatch" to "Ang bilang ng mga target na grupo ay dapat tumugma sa target na round. Inaasahan: {expected}.",
        "tournaments.stageValidationTargetGroupsRequired" to "Mangyaring magpasok ng wastong bilang ng mga target na pangkat.",
        "tournaments.stageValidationTargetTypeMismatch" to "Ang target ng panuntunang ito ay dapat tumugma sa target na round. Inaasahan: {target}.",
        "tournaments.stageValidationThinGroupsLikely" to "Sa {count} qualifier sa {groups} target na grupo, malamang na napakaliit ng mga grupo.",
        "tournaments.stageValidationTitle" to "Suriin ang configuration",
        "tournaments.startKORound" to "Simulan ang knockout round",
        "tournaments.statusActionAssign" to "Magtalaga",
        "tournaments.statusActionCreate" to "Lumikha",
        "tournaments.statusActionGenerate" to "Bumuo",
        "tournaments.statusActionPair" to "Magpares",
        "tournaments.statusActionReview" to "Balik-aral",
        "tournaments.statusActionStart" to "Magsimula",
        "tournaments.statusConfigIncomplete" to "Hindi kumpleto ang configuration",
        "tournaments.statusConfigReady" to "Handa na ang configuration",
        "tournaments.statusFinished" to "Tapos",
        "tournaments.statusGroupsMissing" to "Hindi pa nagagawa ang mga grupo",
        "tournaments.statusGroupsReady" to "Handa na ang mga grupo",
        "tournaments.statusGroupsRunning" to "Isinasagawa ang yugto ng pangkat",
        "tournaments.statusKnockoutReady" to "Handa nang magsimula ang knockout",
        "tournaments.statusKnockoutRunning" to "Kasalukuyang isinasagawa ang knockout",
        "tournaments.statusLive" to "mabuhay",
        "tournaments.statusOpen" to "Bukas",
        "tournaments.statusParticipantsConflicts" to "{count} kalahok na may mga salungatan",
        "tournaments.statusParticipantsReady" to "{count} kalahok na walang salungatan",
        "tournaments.statusParticipantsUnassigned" to "{count} walang klase",
        "tournaments.statusTournamentCompleted" to "Nakumpleto ang tournament",
        "tournaments.statusUnpairedDoubles" to "{count} dobleng walang kapareha",
        "tournaments.strategy" to "Diskarte",
        "tournaments.tabConfig" to "Configuration",
        "tournaments.tabGroups" to "Pool standing",
        "tournaments.table" to "Mesa",
        "tournaments.tablesDistributed" to "Ang mga mesa ay naipamahagi na.",
        "tournaments.tabParticipants" to "Mga kalahok",
        "tournaments.tabPlacements" to "Mga paglalagay",
        "tournaments.tabResults" to "Mga resulta",
        "tournaments.target" to "Target",
        "tournaments.targetClass" to "Target",
        "tournaments.targetGroupCount" to "Target na bilang ng grupo",
        "tournaments.targetGroupsLabel" to "{count} pangkat",
        "tournaments.tournamentClassGenderFemale" to "Babae",
        "tournaments.tournamentClassGenderOpen" to "Bukas (lahat)",
        "tournaments.tournamentName" to "Pangalan ng tournament",
        "tournaments.tournamentParticipations" to "Mga Opisyal na Tournament at Entries",
        "tournaments.transferQualifiedToFinalFromIntermediate" to "Ilipat ang mga kwalipikadong manlalaro sa huling round",
        "tournaments.transferQualifiedToFinalFromIntermediateDesc" to "Gumagamit ng intermediate-round hanggang final-round na mga panuntunan at inililipat ang mga kwalipikadong manlalaro sa kabuuan.",
        "tournaments.transferQualifiedToFinalFromPreliminary" to "Ilipat ang mga kwalipikadong manlalaro diretso sa final round",
        "tournaments.transferQualifiedToFinalFromPreliminaryDesc" to "Gumagamit ng preliminary-round hanggang final-round na mga panuntunan at direktang lumilikha ng mga kwalipikadong manlalaro doon.",
        "tournaments.transferQualifiedToIntermediate" to "Ilipat ang mga kwalipikadong manlalaro sa intermediate round",
        "tournaments.transferQualifiedToIntermediateDesc" to "Gumagamit ng preliminary-round hanggang intermediate-round na mga panuntunan at inililipat ang mga kwalipikadong manlalaro sa kabuuan.",
        "tournaments.unknown" to "Hindi alam",
        "tournaments.unknownDate" to "Hindi Alam na Petsa",
        "tournaments.unmarkMatchLive" to "Alisin ang live marker",
        "tournaments.unpairedDoubles" to "Dobleng walang kapareha",
        "tournaments.useIntermediateStage" to "Gamitin ang intermediate round",
        "tournaments.warningBirthDateMissing" to "Walang petsa ng kapanganakan para sa klase na ito",
        "tournaments.warningClassMissing" to "Hindi nahanap ang klase",
        "tournaments.warningGenderMismatch" to "Ang kasarian ay hindi tumutugma sa klase",
        "tournaments.warningGenderMissing" to "Walang kasarian para sa klase na ito",
        "tournaments.warningMissingPairing" to "Nawawala ang partner ng doubles",
        "tournaments.warningTooOldForClass" to "Masyadong luma para sa klase na ito",
        "tournaments.warningTooYoungForClass" to "Masyado pang bata para sa klase na ito",
        "tournaments.winningSets" to "Mga rate ng panalong",
        "tournaments.withoutClass" to "Walang Klase",
        "tournaments.workspaceProblemsTitle" to "{count} bukas na isyu",
        "trainingDetails.birthdate" to "Petsa ng kapanganakan",
        "trainingDetails.birthYear" to "Taon ng kapanganakan",
        "trainingDetails.last12Months" to "Huling 12 buwan",
        "trainingDetails.last3Months" to "Huling 3 buwan",
        "trainingDetails.maxBirthYear" to "Ipinanganak ≤ taon",
        "trainingDetails.noTrainings" to "Walang magagamit na pagdalo sa pagsasanay",
        "trainingDetails.title" to "Mga Detalye ng Pagsasanay",
        "trainingDetails.total" to "Kabuuan",
        "trainingDetails.trainingParticipations" to "Mga partisipasyon sa pagsasanay (pinagsunod-sunod sa pababang pagkakasunud-sunod)",
        "trainingGroupsTab.addMember" to "Magdagdag ng Miyembro...",
        "trainingGroupsTab.cancel" to "Kanselahin",
        "trainingGroupsTab.create" to "Lumikha",
        "trainingGroupsTab.delete" to "Tanggalin",
        "trainingGroupsTab.edit" to "I-edit",
        "trainingGroupsTab.editGroup" to "I-edit ang Grupo",
        "trainingGroupsTab.groupName" to "Pangalan ng Grupo",
        "trainingGroupsTab.groups" to "Pool standing",
        "trainingGroupsTab.members" to "Mga miyembro",
        "trainingGroupsTab.newGroup" to "+ Bagong Grupo",
        "trainingGroupsTab.noMembersAvailable" to "Walang available na mga kasosyong kaakibat",
        "trainingGroupsTab.remove" to "Alisin",
        "trainingStats.actions" to "Mga aksyon",
        "trainingStats.activeMembers" to "Mga aktibong miyembro",
        "trainingStats.allTrainingDays" to "Lahat ng araw ng pagsasanay",
        "trainingStats.attendingMembers" to "Mga dumalong miyembro",
        "trainingStats.averageParticipationCurrentMonth" to "Karaniwang paglahok (kasalukuyang buwan)",
        "trainingStats.averageParticipationHalfYear" to "Karaniwang paglahok (kalahating taon)",
        "trainingStats.averageParticipationLastMonth" to "Karaniwang paglahok (nakaraang buwan)",
        "trainingStats.averageParticipationQuarter" to "Karaniwang paglahok (quarter)",
        "trainingStats.averageParticipationYear" to "Karaniwang paglahok (taon)",
        "trainingStats.birthdate" to "Petsa ng kapanganakan",
        "trainingStats.date" to "Petsa",
        "trainingStats.lastTraining" to "Huling pagsasanay",
        "trainingStats.memberParticipations" to "Paglahok ng miyembro",
        "trainingStats.name" to "pangalan",
        "trainingStats.noParticipants" to "Walang kalahok",
        "trainingStats.panelAgeGroups" to "Dalo ayon sa edad",
        "trainingStats.panelBestDay" to "Pinakamataong araw ng ensayo",
        "trainingStats.panelGroupPerformance" to "Pag-unlad ayon sa grupo",
        "trainingStats.panelMemberStructure" to "Istraktura ng miyembro",
        "trainingStats.panelMonthlyTrend" to "Buwanang uso",
        "trainingStats.panelSummary" to "Mahahalagang numero (salain)",
        "trainingStats.panelWeekdayStats" to "Mga araw ng ensayo ayon sa araw ng linggo",
        "trainingStats.participants" to "Mga kalahok",
        "trainingStats.participations12Months" to "Paglahok (12 buwan)",
        "trainingStats.participations3Months" to "Paglahok (3 buwan)",
        "trainingStats.participationsTotal" to "Paglahok (kabuuan)",
        "trainingStats.qttr" to "QTTR",
        "trainingStats.showDetails" to "Ipakita ang mga detalye",
        "trainingStats.title" to "Mga istatistika ng pagsasanay",
        "trainingStats.trainingDayFilter" to "Araw ng pagsasanay",
        "trainingStats.trainingDays" to "Mga araw ng pagsasanay (huling 12 buwan)",
        "trainingStats.ttr" to "TTR",
        "trainingStats.weekday" to "Araw ng linggo",
        "trainingTimesTab.addTime" to "Magdagdag ng oras",
        "trainingTimesTab.cancel" to "Kanselahin",
        "trainingTimesTab.create" to "Lumikha",
        "trainingTimesTab.delete" to "Tanggalin",
        "trainingTimesTab.edit" to "I-edit",
        "trainingTimesTab.editTime" to "I-edit ang Oras ng Pagsasanay",
        "trainingTimesTab.excludeFromQuickDiaryCreate" to "Ibukod sa mabilisang paggawa (talaarawan)",
        "trainingTimesTab.excludeFromQuickDiarySaveError" to "Hindi ma-save ang setting.",
        "trainingTimesTab.friday" to "Biyernes",
        "trainingTimesTab.from" to "mula kay:",
        "trainingTimesTab.loading" to "Nilo-load ang mga oras ng pag-eehersisyo...",
        "trainingTimesTab.monday" to "Lunes",
        "trainingTimesTab.noTimes" to "Walang tinukoy na oras ng pagsasanay",
        "trainingTimesTab.saturday" to "Sabado",
        "trainingTimesTab.save" to "I-save",
        "trainingTimesTab.saveError" to "Error sa pag-save ng oras ng pag-eehersisyo",
        "trainingTimesTab.sunday" to "Linggo",
        "trainingTimesTab.thursday" to "Huwebes",
        "trainingTimesTab.to" to "kay:",
        "trainingTimesTab.tuesday" to "Martes",
        "trainingTimesTab.wednesday" to "Miyerkules",
        "trainingTimesTab.weekday" to "Linggo:",
        "unknown" to "Hindi alam",
    ) }

    private val fr: Map<String, String> by lazy { mapOf(
        "accident.accident" to "Accident",
        "accident.accidentDescription" to "Description de l'accident...",
        "accident.close" to "Fermer",
        "accident.member" to "Membre",
        "accident.pleaseSelect" to "Veuillez sélectionner",
        "accident.reportAccident" to "Signaler un accident",
        "accident.reportedAccidents" to "Accidents signalés",
        "accident.submit" to "Soumettre",
        "activityStats.activityStatistics" to "Statistiques d'exercice",
        "activityStats.last3Participations" to "3 dernières entrées",
        "activityStats.noParticipations" to "Aucune entrée disponible",
        "activityStats.noStatistics" to "Aucune statistique disponible",
        "activityStats.title" to "Statistiques d'exercice",
        "app.name" to "Journal d'entraînement",
        "app.title" to "Journal d'entraînement",
        "auth.accountActivated" to "Compte activé ! Vous pouvez maintenant vous connecter.",
        "auth.activate" to "Activer",
        "auth.activateAccount" to "Activer le compte",
        "auth.activationFailed" to "Activation échouée. Veuillez vérifier le lien.",
        "auth.confirmPassword" to "Confirmer le mot de passe",
        "auth.email" to "E-mail",
        "auth.forgotPassword" to "Mot de passe oublié ?",
        "auth.forgotPasswordDescription" to "Entrez votre adresse e-mail. Vous recevrez un lien pour réinitialiser votre mot de passe.",
        "auth.hasAccount" to "Vous avez déjà un compte ?",
        "auth.login" to "Connexion",
        "auth.loginFailed" to "Connexion échouée. Veuillez vérifier vos identifiants.",
        "auth.loginSuccess" to "Connexion réussie",
        "auth.logout" to "Déconnexion",
        "auth.logoutSuccess" to "Déconnexion réussie",
        "auth.newPassword" to "Nouveau mot de passe",
        "auth.noAccount" to "Pas encore de compte ?",
        "auth.password" to "Mot de passe",
        "auth.passwordResetSuccess" to "Votre mot de passe a été modifié avec succès. Vous pouvez maintenant vous connecter.",
        "auth.passwordsDoNotMatch" to "Les mots de passe ne correspondent pas.",
        "auth.passwordTooShort" to "Le mot de passe doit contenir au moins 6 caractères.",
        "auth.register" to "S'inscrire",
        "auth.registerFailed" to "L’enregistrement a échoué. Veuillez recommencer.",
        "auth.registerSuccess" to "Enregistrement réussi ! Veuillez vérifier votre e-mail pour activer votre compte.",
        "auth.rememberMe" to "Se souvenir de moi",
        "auth.resetEmailSent" to "Si un compte avec cette adresse existe, un lien de réinitialisation a été envoyé. Vérifiez votre boîte de réception (et les spams).",
        "auth.resetFailed" to "Le mot de passe n'a pas pu être modifié. Le lien a peut-être expiré.",
        "auth.resetPassword" to "Définir un nouveau mot de passe",
        "auth.resetRequestFailed" to "Demande échouée. Veuillez réessayer.",
        "auth.saveNewPassword" to "Enregistrer le mot de passe",
        "auth.saving" to "Enregistrement...",
        "auth.sending" to "Envoi en cours...",
        "auth.sendResetLink" to "Envoyer le lien",
        "auth.sessionExpired" to "Votre session a expiré. Vous allez être déconnecté.",
        "auth.toLogin" to "Vers la connexion",
        "baseDialog.close" to "Fermer",
        "baseDialog.minimize" to "minimiser",
        "baseDialog.resize" to "Redimensionner",
        "billing.autoSuggestMapping" to "Suggestions de voitures",
        "billing.deleteBilling" to "Supprimer",
        "billing.deleteConfirm" to "Vraiment supprimer cette déclaration générée ?",
        "billing.deleteError" to "La facturation n'a pas pu être supprimée.",
        "billing.deleteSuccess" to "La facturation a été supprimée.",
        "billing.deleteTemplate" to "Supprimer le modèle",
        "billing.deleteTemplateConfirm" to "Vraiment supprimer ce modèle ?",
        "billing.deleteTemplateError" to "Le modèle n'a pas pu être supprimé.",
        "billing.deleteTemplateSuccess" to "Le modèle a été supprimé.",
        "billing.documentDate" to "Date",
        "billing.downloadError" to "Le PDF n'a pas pu être téléchargé.",
        "billing.downloadPdf" to "Télécharger le PDF",
        "billing.generateAndDownloadPdf" to "Générer + télécharger un PDF",
        "billing.generateError" to "Le PDF n'a pas pu être créé.",
        "billing.generateOwnBilling" to "Générez votre propre facturation",
        "billing.generatePdf" to "Générer un PDF",
        "billing.generateSuccess" to "Le PDF a été créé.",
        "billing.generatingPdf" to "Créer un PDF...",
        "billing.hourlyRate" to "Salaire horaire",
        "billing.hoursAutoHint" to "Le nombre d'heures est calculé automatiquement à partir des jours de formation : {hours} h ({count} unités).",
        "billing.hoursTotal" to "Nombre d'heures",
        "billing.iban" to "IBAN",
        "billing.ibanBoxesReset" to "Les cases IBAN ont été réinitialisées.",
        "billing.ibanLearnCancel" to "Annuler l'apprentissage de l'IBAN",
        "billing.ibanLearnDone" to "Des cases IBAN ont été attribuées à partir de la zone sélectionnée.",
        "billing.ibanLearnStart" to "Apprendre l'IBAN",
        "billing.ibanLearnStep1" to "Apprentissage IBAN : veuillez cliquer sur la première case IBAN à utiliser.",
        "billing.ibanLearnStep2" to "Apprentissage IBAN : veuillez cliquer sur la dernière case IBAN à utiliser.",
        "billing.ibanWithoutCountry" to "sans code pays",
        "billing.locationText" to "Emplacement",
        "billing.mappingEditorHint" to "Sélectionnez le champ, puis cliquez dans le PDF. Le poste sera repris immédiatement.",
        "billing.mappingEditorTitle" to "Attribuez des champs dans le PDF en un clic",
        "billing.mappingField" to "Champ",
        "billing.mappingHint" to "Ajustez et enregistrez les coordonnées une fois pour chaque champ. Ces positions sont utilisées dans « Créer un PDF ».",
        "billing.mappingPreviewError" to "L'aperçu PDF de la cartographie n'a pas pu être chargé.",
        "billing.mappingSaved" to "Le mappage a été enregistré.",
        "billing.mappingSaveError" to "Le mappage n'a pas pu être enregistré.",
        "billing.mappingSuggested" to "Des suggestions de voitures ont été saisies. Veuillez vérifier et affiner.",
        "billing.mappingSuggestError" to "Les suggestions automatiques n'ont pas pu être déterminées.",
        "billing.mappingTitle" to "Cartographie de position",
        "billing.monthFrom" to "mois de",
        "billing.monthTo" to "mois à",
        "billing.noRuns" to "Aucune facture disponible pour l'instant.",
        "billing.noSessionsInRange" to "Aucune séance de formation trouvée dans la période sélectionnée.",
        "billing.noTemplates" to "Aucun modèle disponible pour l'instant.",
        "billing.omitField" to "ne précise pas",
        "billing.openMappingEditor" to "Cartographie en un clic",
        "billing.resetIbanBoxes" to "Réinitialisation des cases IBAN",
        "billing.runSection" to "Cycle de facturation",
        "billing.runsTitle" to "Facturations précédentes",
        "billing.sameAccountCheckbox" to "Même compte que le dernier relevé",
        "billing.saveMapping" to "Enregistrer le mappage",
        "billing.selfRecipientName" to "Propre nom",
        "billing.sessionHours" to "Heures",
        "billing.sessionLabel" to "Identifiant",
        "billing.sessionTime" to "Temps",
        "billing.step1" to "Étape 1 : Modèle de magasin",
        "billing.step2" to "Étape 2 : Créer un cycle de facturation",
        "billing.step3" to "Étape 3 : Générer et télécharger le PDF",
        "billing.subtitle" to "Créez votre propre facture mensuelle de cours de pratique.",
        "billing.template" to "Modèle",
        "billing.templateDescription" to "Désignation",
        "billing.templateName" to "Nom du modèle",
        "billing.templatePdf" to "Modèle PDF",
        "billing.templateSection" to "Télécharger le modèle",
        "billing.title" to "Facture",
        "billing.uploadTemplate" to "Sauvegarder",
        "calendar.agendaEmpty" to "Aucun événement ce mois-ci.",
        "calendar.agendaTitle" to "Événements du mois",
        "calendar.cancelCancellation.confirm" to "Annuler l’annulation",
        "calendar.cancelCancellation.message" to "Vraiment annuler l’annulation « {title} » le {date} ?",
        "calendar.cancelCancellation.title" to "Annuler l’annulation de l’entraînement",
        "calendar.cancellation.date" to "Date",
        "calendar.cancellation.description" to "Masque les heures d’entraînement régulières.",
        "calendar.cancellation.fallbackTitle" to "Formation annulée",
        "calendar.cancellation.reasonPlaceholder" to "Raison (facultatif)",
        "calendar.cancellation.saving" to "Économie...",
        "calendar.cancellation.submit" to "Ajouter",
        "calendar.cancellation.subtitle" to "Annulation de la formation",
        "calendar.cancellation.title" to "Formation annulée",
        "calendar.cancellation.trainingGroups" to "Groupes de formation",
        "calendar.cancellation.untilOptional" to "Jusqu'à facultatif",
        "calendar.customEvent.categoryPlaceholder" to "Catégorie (facultatif)",
        "calendar.customEvent.description" to "Réunions de quartier, séances, réunions internes, ...",
        "calendar.customEvent.saving" to "Économie...",
        "calendar.customEvent.submit" to "Créer",
        "calendar.customEvent.subtitleFallback" to "Propre événement",
        "calendar.customEvent.title" to "Propres événements",
        "calendar.customEvent.titlePlaceholder" to "Titre",
        "calendar.description" to "Journées d'entraînement, tournois de club et matchs de championnat dans une vue mensuelle.",
        "calendar.eventTitles.match" to "Match de championnat",
        "calendar.eventTitles.officialTournament" to "Participation au tournoi",
        "calendar.eventTitles.tournament" to "Tournoi",
        "calendar.eventTitles.training" to "réglables",
        "calendar.eyebrow" to "Calendrier du club",
        "calendar.holidayTypes.holiday" to "Vacances",
        "calendar.holidayTypes.schoolHoliday" to "Vacances scolaires",
        "calendar.legend.customEvent" to "Événement",
        "calendar.legend.holiday" to "Vacances",
        "calendar.legend.match" to "Match de championnat",
        "calendar.legend.officialTournament" to "Participation",
        "calendar.legend.schoolHoliday" to "Vacances scolaires",
        "calendar.legend.tournament" to "Tournoi",
        "calendar.legend.training" to "réglables",
        "calendar.legend.trainingCancellation" to "Annulé",
        "calendar.loadError" to "Les données du calendrier n'ont pas pu être chargées.",
        "calendar.loading" to "Chargement des données du calendrier...",
        "calendar.match.guest" to "Loin",
        "calendar.match.home" to "Maison",
        "calendar.noClub" to "Veuillez d’abord sélectionner un club.",
        "calendar.options.subtitle" to "Annulations et propres événements",
        "calendar.options.title" to "Possibilités",
        "calendar.participants" to "{count} participants",
        "calendar.quickCancellation.confirm" to "Ajouter une annulation",
        "calendar.quickCancellation.message" to "Marquer « {title} » comme annulation de formation ?",
        "calendar.quickCancellation.noGroups" to "Aucun groupe de formation avec horaires de formation n'est disponible.",
        "calendar.quickCancellation.title" to "Annulation de la formation",
        "calendar.quickCancellation.trainingGroups" to "Groupes de formation concernés",
        "calendar.quickCancellation.useWholeRange" to "Appliquer sur la période complète ({start} à {end})",
        "calendar.recurringTrainingTime" to "Temps de formation régulier",
        "calendar.sources.customEvents" to "Propres événements",
        "calendar.sources.holidays" to "Vacances/vacances scolaires",
        "calendar.sources.matches" to "Matchs de championnat",
        "calendar.sources.officialTournaments" to "Participations aux tournois",
        "calendar.sources.tournaments" to "Tournois",
        "calendar.sources.trainingCancellations" to "Annulations de formations",
        "calendar.sources.trainingDays" to "Journées de formation",
        "calendar.sources.trainingTimes" to "Horaires des formations",
        "calendar.sourceWarning" to "{source} n'a pas pu être chargé",
        "calendar.starts" to "{count} démarre",
        "calendar.title" to "Calendrier",
        "calendar.today" to "Aujourd’hui",
        "calendar.tournament.club" to "Tournoi des clubs",
        "calendar.tournament.open" to "Tournoi ouvert",
        "calendar.weekdays.friday" to "Ven",
        "calendar.weekdays.monday" to "Lun",
        "calendar.weekdays.saturday" to "Sam",
        "calendar.weekdays.sunday" to "Dim",
        "calendar.weekdays.thursday" to "Jeu",
        "calendar.weekdays.tuesday" to "Mar",
        "calendar.weekdays.wednesday" to "Mer",
        "club.accessDenied" to "Accès au club refusé.",
        "club.accessRequested" to "L'accès a été demandé.",
        "club.accessRequestFailed" to "La demande d'accès n'a pas pu être envoyée.",
        "club.accessRequestPending" to "L'accès à ce club a été demandé. Veuillez patienter.",
        "club.create" to "Créer un club",
        "club.createTitle" to "Créer un club",
        "club.diary" to "Journal d'entraînement",
        "club.errorLoadingRequests" to "Erreur lors du chargement des demandes ouvertes",
        "club.load" to "Charger",
        "club.members" to "Membres",
        "club.mobileSelectHint" to "Veuillez d'abord sélectionner un club pour utiliser l'application sur smartphone.",
        "club.name" to "Nom du club",
        "club.new" to "Nouveau club",
        "club.noAccess" to "Vous n'avez pas encore accès à ce club.",
        "club.openAccessRequests" to "Demandes d'accès ouvertes",
        "club.openRequests" to "Demandes d'accès ouvertes",
        "club.requestAccess" to "Demander l'accès",
        "club.select" to "Sélectionner un club",
        "club.selectPlaceholder" to "Choisir un club...",
        "club.title" to "Club",
        "club.trainingDiary" to "Journal d'entraînement",
        "clubSettings.associationMemberNumber" to "Numéro de membre de l'association",
        "clubSettings.associationMemberNumberPlaceholder" to "par ex. SN-12-3456.",
        "clubSettings.autoFetchRankings" to "Récupérer automatiquement les classements",
        "clubSettings.greetingHint" to "Ce texte apparaît dans l'onglet \"Bienvenue\" de la fiche de rapport de jeu.",
        "clubSettings.greetingPlaceholder" to "Texte de bienvenue pour les matchs à domicile...",
        "clubSettings.greetingText" to "Texte de salutation",
        "clubSettings.guestPlayers" to "Joueur et équipe invitée en double",
        "clubSettings.guestTeam" to "Nom de l'équipe invitée",
        "clubSettings.homePlayers" to "Joueurs et équipe à domicile en double",
        "clubSettings.homeTeam" to "Nom de l'équipe à domicile",
        "clubSettings.loadFailed" to "Les paramètres n'ont pas pu être chargés",
        "clubSettings.memberDataQuality" to "Membres chargés de la qualité des données",
        "clubSettings.memberDataQualityHint" to "Ces champs comptent comme nécessaire sur la page membre. Tous les champs peuvent toujours être saisis.",
        "clubSettings.myTischtennisFedNickname" to "Abréviation de l'association",
        "clubSettings.myTischtennisFedNicknamePlaceholder" to "par ex. HeTTV",
        "clubSettings.myTischtennisRankings" to "Classement myTischtennis TTR/QTTR",
        "clubSettings.myTischtennisRankingsHint" to "Récupération automatique du classement du club pour les mises à jour TTR et QTTR des membres.",
        "clubSettings.noClubSelected" to "Veuillez d'abord sélectionner un médecin.",
        "clubSettings.placeholders" to "Entretoise",
        "clubSettings.rankingsUsesAssociationNumber" to "Le numéro de club pour la consultation du classement correspond au numéro de membre de l'association ci-dessus.",
        "clubSettings.requireCity" to "Emplacement requis",
        "clubSettings.requireEmail" to "E-mail requis",
        "clubSettings.requirePhone" to "Numéro de téléphone requis",
        "clubSettings.requirePostalCode" to "Code postal requis",
        "clubSettings.requireStreet" to "Route requise",
        "clubSettings.save" to "Sauvegarder",
        "clubSettings.saved" to "Stocké",
        "clubSettings.saveFailed" to "Impossible d'enregistrer",
        "clubSettings.settings" to "Paramètres",
        "clubSettings.title" to "Paramètres du club",
        "clubSettings.trainingGroups" to "Groupes de formation.",
        "clubSettings.trainingTimes" to "Horaire des entraînements",
        "common.actions" to "Actes",
        "common.active" to "Actif",
        "common.add" to "Ajouter",
        "common.all" to "Tous",
        "common.apply" to "Appliquer",
        "common.back" to "Retour",
        "common.cancel" to "Annuler",
        "common.choose" to "Choisir",
        "common.clear" to "Effacer",
        "common.close" to "Fermer",
        "common.confirm" to "Confirmer",
        "common.create" to "Créer",
        "common.date" to "Date",
        "common.days" to "jours",
        "common.delete" to "Supprimer",
        "common.description" to "Désignation",
        "common.details" to "Details",
        "common.disabled" to "Désactivé",
        "common.download" to "Télécharger",
        "common.edit" to "Modifier",
        "common.enabled" to "Activé",
        "common.filter" to "filtre",
        "common.hours" to "heures",
        "common.in" to "in",
        "common.inactive" to "Inactif",
        "common.loading" to "Chargement...",
        "common.min" to "min",
        "common.minutes" to "minutes",
        "common.months" to "mois",
        "common.move" to "Déplacer",
        "common.name" to "nom",
        "common.new" to "Nouveau",
        "common.next" to "Suivant",
        "common.no" to "Non",
        "common.ok" to "OK",
        "common.optional" to "Optional",
        "common.period" to "Période",
        "common.previous" to "Précédent",
        "common.refresh" to "Recharger",
        "common.remove" to "Retirer",
        "common.required" to "Obligatoire",
        "common.reset" to "Réinitialiser",
        "common.save" to "Enregistrer",
        "common.saved" to "Enregistré",
        "common.saving" to "Enregistrement...",
        "common.search" to "Rechercher",
        "common.select" to "Sélectionner",
        "common.status" to "statut",
        "common.submit" to "Valider",
        "common.time" to "Heure",
        "common.today" to "Aujourd'hui",
        "common.type" to "Taper",
        "common.update" to "Mettre à jour",
        "common.view" to "Afficher",
        "common.weeks" to "semaines",
        "common.years" to "années",
        "common.yes" to "Oui",
        "courtDrawing.cancel" to "Annuler",
        "courtDrawing.durationMinutes" to "Durée (minutes)",
        "courtDrawing.durationText" to "Durée (texte)",
        "courtDrawing.durationTextPlaceholder" to "par ex. 2x5",
        "courtDrawing.group" to "Groupe",
        "courtDrawing.ok" to "OK",
        "courtDrawing.selectGroup" to "Sélectionnez un groupe...",
        "courtDrawing.title" to "Configurer l'exercice de tennis de table",
        "courtDrawingRender.animationRunning" to "Animation en cours...",
        "courtDrawingRender.startAnimation" to "Démarrer l'animation",
        "courtDrawingTool.addStroke" to "Ajouter un coup",
        "courtDrawingTool.backhand" to "Revers",
        "courtDrawingTool.codeLabel" to "Code",
        "courtDrawingTool.completeFirstStroke" to "Compléter le premier coup",
        "courtDrawingTool.completeFirstStrokeHint" to "Choisissez la position de départ, le côté, l’effet et la cible. Le schéma apparaîtra ensuite.",
        "courtDrawingTool.configureExercise" to "Configurer l'exercice",
        "courtDrawingTool.counterSpin" to "Contre-effet",
        "courtDrawingTool.forehand" to "Coup droit",
        "courtDrawingTool.noAdditionalStrokes" to "Aucun coup suivant ajouté pour le moment.",
        "courtDrawingTool.preview" to "Aperçu",
        "courtDrawingTool.previewHint" to "Le schéma apparaît dès que le premier coup est entièrement configuré.",
        "courtDrawingTool.service" to "Service :",
        "courtDrawingTool.serviceTitle" to "Service",
        "courtDrawingTool.sidespin" to "Effet latéral",
        "courtDrawingTool.sideUnderspin" to "Latéral coupé",
        "courtDrawingTool.spin" to "Effet :",
        "courtDrawingTool.startLeft" to "gauche",
        "courtDrawingTool.startMiddle" to "centre",
        "courtDrawingTool.startRight" to "droite",
        "courtDrawingTool.stepAdditionalStrokes" to "4. Coups suivants",
        "courtDrawingTool.stepAdditionalStrokesHint" to "Ajouter si besoin d’autres balles sous forme de séquence.",
        "courtDrawingTool.stepFirstStroke" to "2. Premier coup",
        "courtDrawingTool.stepFirstStrokeHint" to "Définir le côté et la rotation du premier ballon.",
        "courtDrawingTool.stepStartPosition" to "1. Position de départ",
        "courtDrawingTool.stepStartPositionHint" to "Depuis quelle position de service l'exercice commence-t-il ?",
        "courtDrawingTool.stepTarget" to "3. Cible",
        "courtDrawingTool.stepTargetHint" to "Choisir la zone cible pour le premier coup.",
        "courtDrawingTool.strokeSide" to "Côté",
        "courtDrawingTool.strokeTypeBlock" to "Block",
        "courtDrawingTool.strokeTypeChopDefense" to "Défense coupée",
        "courtDrawingTool.strokeTypeCounter" to "Contre",
        "courtDrawingTool.strokeTypeFlip" to "retourner",
        "courtDrawingTool.strokeTypeLabel" to "Type de coup",
        "courtDrawingTool.strokeTypeLobDefense" to "Défense lobée",
        "courtDrawingTool.strokeTypePush" to "Poussette",
        "courtDrawingTool.strokeTypeSmash" to "Frappe",
        "courtDrawingTool.strokeTypeTopspin" to "Rotation supérieure",
        "courtDrawingTool.targetBackhandHalfLong" to "Revers mi-long",
        "courtDrawingTool.targetBackhandLong" to "Revers long",
        "courtDrawingTool.targetBackhandShort" to "Revers court",
        "courtDrawingTool.targetForehandHalfLong" to "Coup droit mi-long",
        "courtDrawingTool.targetForehandLong" to "Coup droit long",
        "courtDrawingTool.targetForehandShort" to "Coup droit court",
        "courtDrawingTool.targetMiddleHalfLong" to "Milieu mi-long",
        "courtDrawingTool.targetMiddleLong" to "Milieu long",
        "courtDrawingTool.targetMiddleShort" to "Milieu court",
        "courtDrawingTool.targetPosition" to "Position cible :",
        "courtDrawingTool.targetPositionLabel" to "Position cible",
        "courtDrawingTool.title" to "Schéma d'exercice de tennis de table",
        "courtDrawingTool.titleLabel" to "Titre",
        "courtDrawingTool.topspin" to "Coup de tête",
        "courtDrawingTool.toTarget" to "vers",
        "courtDrawingTool.underspin" to "Coupe",
        "createClub.clubExists" to "L'association existe déjà.",
        "createClub.clubName" to "nom du club",
        "createClub.create" to "Créer un club",
        "createClub.nameRequired" to "Merci de donner à l'association un nom évocateur.",
        "createClub.title" to "Créer un club",
        "createClub.unknownError" to "Une erreur inconnue s'est produite, réessayez",
        "csvImport.cancel" to "Annuler",
        "csvImport.import" to "Importation",
        "csvImport.title" to "Calendrier d'importation",
        "csvImport.uploadCsvFile" to "Télécharger le fichier CSV",
        "dialogExamples.composableConfirmDetails" to "Ceci est un exemple de useConfirm Composable.",
        "dialogExamples.composableConfirmMessage" to "Souhaitez-vous continuer ?",
        "dialogExamples.composableConfirmTitle" to "exemple useConfirm",
        "dialogExamples.composableDialogText" to "Cette boîte de dialogue utilise useDialog Composable.",
        "dialogExamples.composableDialogText2" to "Cela facilite la gestion !",
        "dialogExamples.composableDialogTitle" to "Dialoguer avec useDialog Composable",
        "dialogExamples.composableUsage" to "Utilisation composable",
        "dialogExamples.confirmDeleteMessage" to "Etes-vous sûr de vouloir supprimer cette carte cadeau ?",
        "dialogExamples.confirmDeleteTitle" to "Confirmer la suppression",
        "dialogExamples.confirmDialogs" to "Boîtes de dialogue de confirmation",
        "dialogExamples.confirmWarningDetails" to "Cette action ne peut pas être annulée.",
        "dialogExamples.confirmWarningMessage" to "Êtes-vous sûr de vouloir continuer ?",
        "dialogExamples.error" to "Erreur",
        "dialogExamples.errorDetails" to "Veuillez réessayer plus tard.",
        "dialogExamples.errorMessage" to "Une erreur s'est produite.",
        "dialogExamples.fullscreenModal" to "Modal plein écran",
        "dialogExamples.fullscreenModalText" to "Il s'agit d'une boîte de dialogue en plein écran.",
        "dialogExamples.fullscreenModalText2" to "Il occupe presque tout l'écran (90vw x 90vh).",
        "dialogExamples.fullscreenModalTitle" to "Boîte de dialogue modale plein écran",
        "dialogExamples.info" to "Information",
        "dialogExamples.infoDialogs" to "Dialogues d'information",
        "dialogExamples.infoMessage" to "Ceci est un message d'information.",
        "dialogExamples.information" to "information",
        "dialogExamples.largeModal" to "Grand modal",
        "dialogExamples.largeModalText" to "Il s’agit d’un excellent dialogue modal.",
        "dialogExamples.largeModalText2" to "Il offre plus d'espace pour le contenu.",
        "dialogExamples.largeModalTitle" to "Grand dialogue modal",
        "dialogExamples.minimizedDialogs" to "Boîtes de dialogue réduites :",
        "dialogExamples.modalDialogs" to "Dialogues modaux",
        "dialogExamples.multipleDialogs" to "Plusieurs boîtes de dialogue",
        "dialogExamples.nonModalDialog" to "Dialogue non modal",
        "dialogExamples.nonModalDialogs" to "Dialogues non modaux",
        "dialogExamples.nonModalText" to "Il s'agit d'un dialogue non modal.",
        "dialogExamples.nonModalText2" to "Vous pouvez le déplacer et en ouvrir plusieurs à la fois !",
        "dialogExamples.nonModalTitle" to "Dialogue non modal",
        "dialogExamples.scrollArea" to "Zone de défilement pour beaucoup de contenu...",
        "dialogExamples.secondNonModalText" to "Encore un dialogue non modal !",
        "dialogExamples.secondNonModalTitle" to "Deuxième dialogue non modal",
        "dialogExamples.simpleModal" to "Modal simple",
        "dialogExamples.simpleModalText" to "Il s'agit d'une simple boîte de dialogue modale de taille moyenne.",
        "dialogExamples.simpleModalText2" to "Cliquez à l'extérieur ou sur le X pour fermer.",
        "dialogExamples.simpleModalTitle" to "Dialogue modal simple",
        "dialogExamples.success" to "Réalisation",
        "dialogExamples.successDetails" to "Toutes les modifications ont été enregistrées.",
        "dialogExamples.successMessage" to "L'opération s'est terminée avec succès !",
        "dialogExamples.title" to "Exemples de boîtes de dialogue",
        "dialogExamples.useConfirmExample" to "exemple useConfirm",
        "dialogExamples.useDialogExample" to "Exemple d'utilisation de dialogue",
        "dialogExamples.warning" to "Précautions",
        "dialogExamples.warningDetails" to "Certains champs peuvent ne pas être entièrement remplis.",
        "dialogExamples.warningMessage" to "Les liens suivants peuvent vous aider :",
        "dialogManager.close" to "Fermer",
        "dialogManager.minimize" to "minimiser",
        "dialogManager.noMinimizedDialogs" to "Aucune boîte de dialogue réduite",
        "dialogs.confirm.cancel" to "Annuler",
        "dialogs.confirm.ok" to "OK",
        "dialogs.confirm.title" to "Confirmation",
        "dialogs.info.ok" to "OK",
        "dialogs.info.title" to "information",
        "diary.activeTrainingDay" to "Jour d'entraînement actif",
        "diary.activities" to "Activités",
        "diary.activity" to "Activité",
        "diary.activityDrawing" to "Schéma d'activité",
        "diary.activityImage" to "Image d'activité",
        "diary.activityNotFound" to "Activité introuvable. Veuillez en choisir une dans la liste.",
        "diary.activityOrTimeblock" to "Activité / bloc horaire",
        "diary.activityPlaceholder" to "Activité",
        "diary.activityRequired" to "Veuillez saisir une activité.",
        "diary.addActivity" to "Ajouter une activité",
        "diary.addGroup" to "Ajouter un groupe",
        "diary.addGroupActivity" to "Ajouter une activité de groupe",
        "diary.addGroupButton" to "+ Groupe",
        "diary.addTimeblock" to "Bloc horaire",
        "diary.all" to "Tous",
        "diary.applySuggestion" to "Appliquer la suggestion",
        "diary.assignParticipants" to "Attribuer des participants",
        "diary.assignParticipantsForGroupActivity" to "Attribuer des participants à l'activité de groupe",
        "diary.assignShort" to "Attribuer",
        "diary.bookAccident" to "Enregistrer un accident",
        "diary.confirmDelete" to "Confirmer la suppression",
        "diary.confirmDeleteDate" to "Voulez-vous vraiment supprimer cette date ?",
        "diary.confirmDeleteDateDetails" to "Toutes les données associées seront également supprimées.",
        "diary.confirmDeleteGroup" to "Voulez-vous vraiment supprimer le groupe \"{name}\" ?",
        "diary.createDate" to "Créer la date",
        "diary.createDrawing" to "Créer un schéma d'exercice",
        "diary.createGroups" to "Créer des groupes",
        "diary.createNew" to "Créer",
        "diary.createNewDate" to "Créer une nouvelle date",
        "diary.date" to "Date",
        "diary.dateCannotBeDeleted" to "La date ne peut pas être supprimée",
        "diary.dateCannotBeDeletedDetails" to "Du contenu existe encore (plan, participants, activités, accidents ou notes).",
        "diary.dateNoLongerCurrent" to "La date sélectionnée n'était plus actuelle. Veuillez réessayer.",
        "diary.delete" to "Supprimer",
        "diary.deleteDate" to "Supprimer la date",
        "diary.deleteGroup" to "Supprimer le groupe",
        "diary.duration" to "Durée",
        "diary.durationExampleLong" to "p. ex. 2x7 ou 3*5",
        "diary.durationExampleShort" to "p. ex. 2x7",
        "diary.durationMinutes" to "Durée (min)",
        "diary.editActivity" to "Modifier l'activité",
        "diary.editGroupActivity" to "Modifier l'activité de groupe",
        "diary.editTrainingTimes" to "Modifier les horaires d'entraînement",
        "diary.errorCreatingActivity" to "Erreur lors de la création de l'activité",
        "diary.errorCreatingGroups" to "Erreur lors de la création des groupes",
        "diary.errorDeletingGroup" to "Erreur lors de la suppression du groupe",
        "diary.errorLoadingPredefinedActivities" to "Erreur lors du chargement des activités prédéfinies",
        "diary.errorMarkingForm" to "Erreur lors du marquage du formulaire",
        "diary.errorOccurred" to "Une erreur est survenue. Veuillez réessayer.",
        "diary.existingGroups" to "Groupes existants",
        "diary.filterAbsent" to "Absent",
        "diary.filterAll" to "Tous",
        "diary.filterExcused" to "Excusé",
        "diary.filterPresent" to "Présent",
        "diary.filterTest" to "Essai",
        "diary.formHandedOver" to "Formulaire d'adhésion remis",
        "diary.formMarkedAsHandedOver" to "Formulaire d'adhésion marqué comme remis",
        "diary.freeActivities" to "Activités libres",
        "diary.gallery" to "Galerie des membres",
        "diary.galleryCreating" to "Création de la galerie…",
        "diary.group" to "Groupe...",
        "diary.groupDeletedSuccessfully" to "Le groupe a été supprimé avec succès.",
        "diary.groupManagement" to "Gestion des groupes",
        "diary.groupsCreated" to "{count} groupes ont été créés avec succès.",
        "diary.groupsLabel" to "Groupes",
        "diary.groupsSection" to "Groupes",
        "diary.leader" to "Responsable",
        "diary.min" to "Min",
        "diary.minutes" to "Minutes",
        "diary.mustCreateAtLeastTwoGroups" to "Il faut créer au moins 2 groupes la première fois.",
        "diary.nextAppointment" to "Prochain rendez-vous",
        "diary.noActiveTrainingDay" to "Aucun jour d'entraînement sélectionné.",
        "diary.noEntries" to "Aucune entrée",
        "diary.noFreeActivitiesYet" to "Aucune activité libre n'a encore été enregistrée.",
        "diary.noParticipants" to "Aucun participant disponible pour ce jour d'entraînement.",
        "diary.numberOfGroups" to "Nombre de groupes",
        "diary.oneGroupAdded" to "1 groupe a été ajouté avec succès.",
        "diary.openPlanItems" to "{count} ouvert(s)",
        "diary.openPlanItemsLabel" to "Statut du plan",
        "diary.overallActivity" to "Activité globale",
        "diary.participants" to "Participants",
        "diary.participantStatusCancelled" to "Annulé",
        "diary.participantStatusExcused" to "Excusé",
        "diary.participantStatusNone" to "Aucun statut",
        "diary.planActivitiesCount" to "Activités planifiées",
        "diary.planAddHint" to "Ajoutez de nouveaux éléments du plan avec les actions ci-dessus.",
        "diary.planEmptyState" to "Aucun élément n'a encore été saisi dans le plan d'entraînement.",
        "diary.quickAdd" to "+ Ajout rapide",
        "diary.quickCreate" to "Création rapide",
        "diary.quickCreateFailed" to "Impossible de créer la journée d’entraînement.",
        "diary.quickCreateNoSlot" to "Aucun créneau d’entraînement libre trouvé (selon les horaires des groupes, sur un an).",
        "diary.searchParticipants" to "Rechercher des participants",
        "diary.selectGroup" to "Sélectionner un groupe...",
        "diary.selectGroupAndActivity" to "Veuillez sélectionner un groupe et saisir une activité.",
        "diary.selectParticipantAndNote" to "Veuillez sélectionner un participant et saisir une note.",
        "diary.selectTags" to "Sélectionner des tags",
        "diary.selectTrainingGroup" to "Sélectionner un groupe d'entraînement",
        "diary.selectTrainingGroupPlaceholder" to "Veuillez choisir...",
        "diary.showImage" to "Afficher image/schéma",
        "diary.skipSuggestion" to "Continuer sans suggestion",
        "diary.standardActivities" to "Activités standard",
        "diary.standardActivityAddError" to "L'activité standard n'a pas pu être ajoutée.",
        "diary.standardDurationShort" to "Min",
        "diary.startTime" to "Heure de début",
        "diary.statusEmpty" to "Ce jour d'entraînement est encore vide.",
        "diary.statusInProgress" to "Ce jour d'entraînement est partiellement préparé.",
        "diary.statusOpenShort" to "Ouvert",
        "diary.statusReady" to "Les horaires et le plan d'entraînement sont définis.",
        "diary.statusReadyShort" to "Prêt",
        "diary.suggestion" to "Suggestion",
        "diary.timeblock" to "Bloc horaire",
        "diary.timeblocksCount" to "Blocs horaires",
        "diary.title" to "Journal d'entraînement",
        "diary.today" to "Aujourd'hui",
        "diary.trainingDayAsPDF" to "Télécharger le jour d'entraînement en PDF",
        "diary.trainingDayAsPDFShort" to "Jour d'entraînement en PDF",
        "diary.trainingDayChecklist" to "Liste de contrôle finale",
        "diary.trainingDaySection" to "Jour d'entraînement",
        "diary.trainingDaySummaryPdfShort" to "Résumé des participants en PDF",
        "diary.trainingEnd" to "Fin de l'entraînement",
        "diary.trainingPlan" to "Plan d'entraînement",
        "diary.trainingPlanAsPDF" to "Plan d'entraînement en PDF",
        "diary.trainingPlanPdfShort" to "Planning en PDF",
        "diary.trainingStart" to "Début de l'entraînement",
        "diary.trainingTimesUpdated" to "Horaires d'entraînement mis à jour avec succès.",
        "diary.trainingWindow" to "Plage d'entraînement",
        "diary.trainingWindowUnset" to "Pas encore défini",
        "diary.unassignedPlanItems" to "{count} ouvert(s)",
        "diary.updateTimes" to "Mettre à jour les horaires",
        "errors.ERROR_ACTIVITY_IMAGE_DELETE_FAILED" to "Erreur lors de la suppression de l'image.",
        "errors.ERROR_BAD_REQUEST" to "Demande invalide.",
        "errors.ERROR_CLUB_ALREADY_EXISTS" to "L'association existe déjà.",
        "errors.ERROR_CLUB_NAME_REQUIRED" to "Merci de donner à l'association un nom évocateur.",
        "errors.ERROR_CLUB_NAME_TOO_SHORT" to "Merci de donner à l'association un nom évocateur.",
        "errors.ERROR_CLUB_NOT_FOUND" to "Club introuvable.",
        "errors.ERROR_DIARY_ACTIVITY_PARTICIPANTS_UPDATE_FAILED" to "Erreur lors de la mise à jour des participants à l'activité",
        "errors.ERROR_DIARY_ASSIGN_ALL_PARTICIPANTS_FAILED" to "Erreur lors de l'attribution de tous les participants",
        "errors.ERROR_DIARY_ASSIGN_GROUP_FAILED" to "Groupe de mappage d'erreurs",
        "errors.ERROR_DIARY_DATE_NOT_FOUND" to "Date introuvable",
        "errors.ERROR_DIARY_DATE_UPDATED" to "La date n'était pas (plus) disponible. Le sélecteur de date a été mis à jour. Veuillez réessayer.",
        "errors.ERROR_DIARY_GROUP_ASSIGNMENT_UPDATE_FAILED" to "Erreur lors de la mise à jour de l'affectation du groupe",
        "errors.ERROR_DIARY_IMAGE_LOAD_FAILED" to "ÉCHEC DU CHARGEMENT DE L'IMAGE",
        "errors.ERROR_DIARY_MEMBER_CREATE_FAILED" to "Erreur lors de la création du membre",
        "errors.ERROR_DIARY_NO_EXERCISE_DATA" to "Aucune donnée d'exercice reçue",
        "errors.ERROR_DIARY_NO_PARTICIPANTS" to "Aucun participant disponible pour cette journée de formation.",
        "errors.ERROR_DIARY_PARTICIPANT_ASSIGN_FAILED" to "Les participants n'ont pas pu être assignés.",
        "errors.ERROR_DIARY_PARTICIPANT_GROUP_ASSIGNMENT_UPDATE_FAILED" to "Erreur lors de la mise à jour de l'affectation du groupe de participants",
        "errors.ERROR_DIARY_PDF_GENERATION_FAILED" to "Erreur lors de la génération du PDF.",
        "errors.ERROR_DIARY_STATS_LOAD_FAILED" to "Échec du chargement des statistiques.",
        "errors.ERROR_FORBIDDEN" to "Autorisation refusée.",
        "errors.ERROR_GROUP_ALREADY_EXISTS" to "Un groupe portant ce nom existe déjà.",
        "errors.ERROR_GROUP_CANNOT_RENAME_PRESET" to "Les groupes par défaut ne peuvent pas être renommés.",
        "errors.ERROR_GROUP_INVALID_PRESET_TYPE" to "Type de préréglage invalide.",
        "errors.ERROR_GROUP_NAME_REQUIRED" to "Veuillez saisir un nom de groupe.",
        "errors.ERROR_GROUP_NOT_FOUND" to "Groupe introuvable.",
        "errors.ERROR_INTERNAL_SERVER_ERROR" to "Une erreur de serveur interne s'est produite.",
        "errors.ERROR_INVALID_PASSWORD" to "Mot de passe incorrect.",
        "errors.ERROR_LOG_NOT_FOUND" to "Entrée de journal introuvable",
        "errors.ERROR_LOGIN_FAILED" to "La connexion a échoué.",
        "errors.ERROR_MEMBER_ALREADY_EXISTS" to "Le membre existe déjà",
        "errors.ERROR_MEMBER_FIRSTNAME_REQUIRED" to "Le prénom est obligatoire.",
        "errors.ERROR_MEMBER_LASTNAME_REQUIRED" to "Le nom de famille est obligatoire.",
        "errors.ERROR_MEMBER_NOT_FOUND" to "Membres introuvables",
        "errors.ERROR_MEMBER_TRANSFER_BULK_FAILED" to "Erreur de transfert groupé : {message}",
        "errors.ERROR_MYTISCHTENNIS_ACCOUNT_NOT_LINKED" to "Aucun compte myTischtennis lié.",
        "errors.ERROR_MYTISCHTENNIS_CAPTCHA_REQUIRED" to "CAPTCHA requis. MyTischtennis utilise désormais un CAPTCHA lors de la connexion. Veuillez vous connecter directement à mytischtennis.de pour résoudre le CAPTCHA ou contacter l'assistance.",
        "errors.ERROR_MYTISCHTENNIS_INVALID_PASSWORD" to "Mot de passe myTischtennis invalide.",
        "errors.ERROR_MYTISCHTENNIS_LOGIN_FAILED" to "La connexion a échoué. Veuillez vérifier vos informations d'identification.",
        "errors.ERROR_MYTISCHTENNIS_NO_PASSWORD_SAVED" to "Aucun mot de passe enregistré et session expirée. Veuillez entrer votre mot de passe.",
        "errors.ERROR_MYTISCHTENNIS_PASSWORD_NOT_SAVED" to "Aucun mot de passe enregistré. Veuillez entrer votre mot de passe.",
        "errors.ERROR_MYTISCHTENNIS_SESSION_EXPIRED" to "Session expirée. Veuillez vous reconnecter.",
        "errors.ERROR_MYTISCHTENNIS_USER_NOT_FOUND" to "Utilisateur myTischtennis introuvable.",
        "errors.ERROR_NOT_FOUND" to "Pas trouvé.",
        "errors.ERROR_OFFICIAL_TOURNAMENT_PDF_UPLOAD" to "Erreur lors du téléchargement du PDF.",
        "errors.ERROR_SESSION_EXPIRED" to "Session expirée.",
        "errors.ERROR_TEAM_LINK_TO_LEAGUE_REQUIRED" to "Veuillez d'abord attribuer une ligue à l'équipe afin que les documents puissent être traités.",
        "errors.ERROR_TEAM_NOT_LINKED_TO_LEAGUE" to "Cette équipe n'est affectée à aucune ligue.",
        "errors.ERROR_TEAM_PDF_LOAD_FAILED" to "Échec du chargement du PDF",
        "errors.ERROR_TEAM_STATS_LOAD_FAILED" to "Les statistiques n'ont pas pu être chargées",
        "errors.ERROR_TOURNAMENT_CLASS_NAME_REQUIRED" to "Veuillez entrer un nom de classe !",
        "errors.ERROR_TOURNAMENT_NO_DATE" to "Aucune date de tournoi disponible !",
        "errors.ERROR_TOURNAMENT_NO_PARTICIPANTS" to "Aucun participant trouvé lors de la journée de formation pour cette date !",
        "errors.ERROR_TOURNAMENT_NO_TRAINING_DAY" to "Aucun jour de formation trouvé pour {date} !",
        "errors.ERROR_TOURNAMENT_NO_VALID_PARTICIPANTS" to "Aucun participant valide trouvé lors de la journée de formation pour cette date !",
        "errors.ERROR_TOURNAMENT_NOT_FOUND" to "Tournoi introuvable",
        "errors.ERROR_TOURNAMENT_PDF_GENERATION_FAILED" to "Erreur lors de la génération du PDF",
        "errors.ERROR_TOURNAMENT_SELECT_FIRST" to "Veuillez d'abord sélectionner un tournoi.",
        "errors.ERROR_TRAINING_STATS_LOAD_FAILED" to "Erreur lors du chargement des statistiques d'entraînement",
        "errors.ERROR_UNAUTHORIZED" to "Non autorisé.",
        "errors.ERROR_UNKNOWN_ERROR" to "Une erreur inconnue s'est produite.",
        "errors.ERROR_USER_NOT_FOUND" to "Utilisateur introuvable.",
        "errors.ERROR_VALIDATION_FAILED" to "Échec de la validation",
        "errors.SUCCESS_DIARY_GROUP_ASSIGNMENT_UPDATED" to "Cartographie de groupe mise à jour",
        "errors.SUCCESS_DIARY_MEMBER_CREATED" to "Le membre « {name} » a été créé et ajouté avec succès !",
        "errors.SUCCESS_OFFICIAL_TOURNAMENT_PDF_UPLOAD" to "Téléchargement réussi.",
        "home.authenticatedFeatures.keepDiary" to "Tenir un journal de formation",
        "home.authenticatedFeatures.keepDiaryDesc" to "Documenter les activités de formation, les participants, les activités et les notes pour chaque journée de formation.",
        "home.authenticatedFeatures.manageMembers" to "Gérer les membres",
        "home.authenticatedFeatures.manageMembersDesc" to "Gérez les membres de votre club, créez des groupes d'entraînement et suivez tous les participants.",
        "home.authenticatedFeatures.manageTournaments" to "Gérer les tournois",
        "home.authenticatedFeatures.manageTournamentsDesc" to "Créez des tournois internes et ouverts, importez des tournois officiels et gérez les inscriptions.",
        "home.authenticatedFeatures.myTischtennisIntegration" to "Intégration MyTable Tennis",
        "home.authenticatedFeatures.myTischtennisIntegrationDesc" to "Synchronisez automatiquement les résultats et les statistiques du jeu avec MyTischtennis.de.",
        "home.authenticatedFeatures.pdfExport" to "Exportation PDF",
        "home.authenticatedFeatures.pdfExportDesc" to "Exportez les journées de formation au format PDF avec les participants, les activités et les statistiques.",
        "home.authenticatedFeatures.statistics" to "Statistiques et évaluations",
        "home.authenticatedFeatures.statisticsDesc" to "Obtenez des aperçus détaillés de la formation et de la participation ainsi que des statistiques d’activité.",
        "home.authenticatedFeatures.teamManagement" to "Gestion d'équipe",
        "home.authenticatedFeatures.teamManagementDesc" to "Gérez les équipes, les ligues, les calendriers et les résultats de votre club.",
        "home.authenticatedFeatures.trainingGroups" to "Groupes et horaires d'entraînement",
        "home.authenticatedFeatures.trainingGroupsDesc" to "Organisez des groupes de formation, définissez les horaires de formation et gérez les affectations des groupes.",
        "home.faq" to "Questions fréquemment posées",
        "home.faqFree.answer" to "Oui, vous pouvez commencer gratuitement. Des extensions peuvent suivre plus tard.",
        "home.faqFree.question" to "L'utilisation est-elle gratuite ?",
        "home.faqInstallation.answer" to "Non, c'est une application Web. Vous l'utilisez directement dans le navigateur – sur ordinateur, tablette et smartphone.",
        "home.faqInstallation.question" to "Ai-je besoin d’une installation ?",
        "home.faqMyTischtennis.answer" to "Oui, après l'installation, l'application se synchronise automatiquement avec MyTischtennis.de et importe les résultats et les statistiques des jeux.",
        "home.faqMyTischtennis.question" to "L'intégration MyTischtennis fonctionne-t-elle automatiquement ?",
        "home.faqPermissions.answer" to "Il existe quatre rôles : administrateur, coach, chef d'équipe et membre. Chaque rôle dispose d'autorisations spécifiques qui peuvent être personnalisées.",
        "home.faqPermissions.question" to "Comment fonctionne le système d'autorisation ?",
        "home.faqPrivacy.answer" to "Nous misons sur une économie de données, des approbations transparentes, un accès basé sur les rôles et des journaux d'activité complets. L'application est conforme au RGPD.",
        "home.faqPrivacy.question" to "Qu’en est-il de la protection des données ?",
        "home.faqTournaments.answer" to "Vous pouvez gérer des tournois internes, des tournois ouverts et des tournois officiels (par exemple d'associations). Les tournois officiels peuvent être importés.",
        "home.faqTournaments.question" to "Quels types de tournois sont pris en charge ?",
        "home.faqTrainingGroups.answer" to "Oui, vous pouvez créer des groupes de formation, définir des horaires de formation et affecter des membres aux groupes. L'agenda d'entraînement propose automatiquement des groupes et des horaires adaptés.",
        "home.faqTrainingGroups.question" to "Puis-je gérer les groupes et les horaires d’entraînement ?",
        "home.features.activityLog" to "Journal d'activité",
        "home.features.activityLogDesc" to "Journalisation complète de toutes les actions pour plus de transparence et de traçabilité.",
        "home.features.keepDiary" to "Tenir un journal de formation",
        "home.features.keepDiaryDesc" to "Documentez le contenu, la portée et la participation à chaque unité – de manière compréhensible et structurée.",
        "home.features.manageMembers" to "Gérer les membres",
        "home.features.manageMembersDesc" to "Créez des profils de membres, formez des groupes et maintenez les statuts de contact et d'approbation à jour.",
        "home.features.myTischtennisIntegration" to "Intégration MyTable Tennis",
        "home.features.myTischtennisIntegrationDesc" to "Synchronisation automatique avec MyTischtennis.de pour les résultats et les statistiques des jeux.",
        "home.features.officialTournaments" to "Tournois officiels",
        "home.features.officialTournamentsDesc" to "Importez et gérez les tournois officiels, gérez les inscriptions et les résultats.",
        "home.features.organizeSchedules" to "Organiser des plans de match",
        "home.features.organizeSchedulesDesc" to "Planifiez des jeux, des tournois et des événements, y compris des groupes, des rondes et des résultats.",
        "home.features.pdfExport" to "Exportation PDF",
        "home.features.pdfExportDesc" to "Exportez les journées de formation au format PDF avec les participants, les activités et les statistiques.",
        "home.features.permissionSystem" to "Système d'autorisation",
        "home.features.permissionSystemDesc" to "Accès basé sur les rôles (administrateur, coach, capitaine d'équipe, membre) avec autorisations individuelles.",
        "home.features.predefinedActivities" to "Activités prédéfinies",
        "home.features.predefinedActivitiesDesc" to "Utilisez des modèles pour les exercices récurrents et accélérez votre documentation.",
        "home.features.security" to "Sécurité & RGPD",
        "home.features.securityDesc" to "Architecture respectueuse de la protection des données, approbations des membres et accès transparent.",
        "home.features.statistics" to "Statistiques et évaluation",
        "home.features.statisticsDesc" to "Recevez des aperçus de la formation et de la participation, reconnaissez le développement et planifiez spécifiquement.",
        "home.features.teamManagement" to "Gestion d'équipe",
        "home.features.teamManagementDesc" to "Gérez les équipes, les ligues, les calendriers et les résultats de votre club.",
        "home.features.trainingGroups" to "Groupes et horaires d'entraînement",
        "home.features.trainingGroupsDesc" to "Organisez des groupes de formation, définissez les horaires de formation et gérez les affectations des groupes.",
        "home.forWhom" to "A qui s'adresse le journal d'entraînement ?",
        "home.forWhomText" to "Le TrainingDiary est la plateforme complète pour les clubs, les départements et les équipes d’entraîneurs. Il combine la gestion des membres avec les groupes et les horaires d'entraînement, un journal d'entraînement détaillé, une organisation complète des tournois (tournois internes, ouverts et officiels), la gestion des équipes avec intégration de la ligue, la synchronisation MyTischtennis, des statistiques et des évaluations significatives ainsi qu'un système d'autorisation flexible dans une application Web moderne. Grâce à des rôles clairs (administrateur, formateur, chef d'équipe, membre) et des autorisations individuelles, les responsables conservent le contrôle, tandis que les membres peuvent participer de manière autodéterminée. Idéal pour les sports d’équipe, de raquette et individuels – du niveau junior au niveau avancé. Conforme au RGPD avec des approbations transparentes et un journal d'activité complet.",
        "home.haveAccount" to "J'ai déjà un compte",
        "home.heroFeatures.memberManagement" to "Gestion des membres et des groupes",
        "home.heroFeatures.myTischtennis" to "Intégration MyTable Tennis",
        "home.heroFeatures.statistics" to "Statistiques et évaluations",
        "home.heroFeatures.teamManagement" to "Gestion d'équipe et ligues",
        "home.heroFeatures.tournaments" to "Tournois (internes, ouverts, officiels)",
        "home.heroFeatures.trainingDiary" to "Journal de formation et documentation",
        "home.heroFeatures.trainingGroups" to "Groupes de formation et horaires de formation",
        "home.heroSubtitle" to "Le TrainingDiary est la solution complète pour les clubs : gestion des membres, groupes d'entraînement, horaires d'entraînement, agenda d'entraînement, organisation de tournois, gestion d'équipe, intégration MyTable Tennis, statistiques et bien plus encore - conforme au RGPD et facile à utiliser.",
        "home.heroTitle" to "Gestion de club, planification d'entraînement et tournois – le tout en un seul endroit",
        "home.howItWorks" to "Voilà comment ça marche",
        "home.registerNow" to "Inscrivez-vous maintenant gratuitement",
        "home.rolesAndPrivacy" to "Rôles, autorisations et RGPD",
        "home.startFree" to "Commencez gratuitement",
        "home.step1.description" to "Créez un compte gratuitement et activez-le par e-mail.",
        "home.step1.title" to "Registre",
        "home.step2.description" to "Créez votre club, invitez des membres et créez des groupes.",
        "home.step2.title" to "Créer un club",
        "home.step3.description" to "Planifiez les rendez-vous, documentez la formation et suivez les progrès.",
        "home.step3.title" to "Planifier et documenter",
        "home.welcome" to "Bienvenue dans l'agenda de formation",
        "home.welcomeBack" to "Content de te revoir! Vous êtes connecté avec succès.",
        "home.whatCanYouDo" to "Que pouvez-vous faire avec le journal de formation?",
        "imageDialog.close" to "Fermer",
        "imageDialog.noImageAvailable" to "Aucune photo disponible",
        "imageDialog.title" to "Écran",
        "imageViewer.camera" to "Caméra",
        "imageViewer.delete" to "Supprimer",
        "imageViewer.deleteImage" to "Supprimer l'image",
        "imageViewer.nextImage" to "Image suivante",
        "imageViewer.noImageAvailable" to "Aucune photo disponible",
        "imageViewer.previousImage" to "image précédente",
        "imageViewer.rotateLeft" to "Rotation de 90° vers la gauche",
        "imageViewer.rotateRight" to "Rotation de 90° vers la droite",
        "imageViewer.selectFiles" to "Sélectionner des fichiers",
        "imageViewer.setAsPrimary" to "définir comme image principale",
        "imageViewer.setAsPrimaryButton" to "Définir l'image sélectionnée",
        "imprint.contact" to "Contact",
        "imprint.serviceProvider" to "Nom du prestataire",
        "imprint.title" to "Mentions légales",
        "languages.de" to "Deutsch (Allemand)",
        "languages.de-CH" to "Schwiizerdütsch (Allemand suisse)",
        "languages.en-AU" to "English (Anglais (AU))",
        "languages.en-GB" to "English (Anglais (GB))",
        "languages.en-US" to "English (Anglais (US))",
        "languages.es" to "Español (Espagnol)",
        "languages.fil" to "Philippin",
        "languages.fr" to "Français",
        "languages.it" to "Italiano (Italien)",
        "languages.ja" to "日本語 (Japonais)",
        "languages.pl" to "Polski (Polonais)",
        "languages.th" to "ไทย (Thaï)",
        "languages.tl" to "Tagalog",
        "languages.zh" to "中文 (Chinois)",
        "legal.backToHome" to "Retour à la page d'accueil",
        "legal.imprint" to "Mentions légales",
        "legal.privacyPolicy" to "Politique de confidentialité",
        "logs.actions" to "Actes",
        "logs.all" to "Tous",
        "logs.apiRequests" to "Requêtes API",
        "logs.applyFilters" to "Appliquer le filtre",
        "logs.backend" to "Paramètres du back-end",
        "logs.clearFilters" to "Revenir",
        "logs.cronJobs" to "Emplois Cron",
        "logs.details" to "Details",
        "logs.displayed" to "affiché",
        "logs.displayedLabel" to "Vu",
        "logs.error" to "Erreur",
        "logs.errorLabel" to "Erreur",
        "logs.errorLoading" to "Erreur de chargement des journaux",
        "logs.executionTime" to "Temps d'exécution",
        "logs.from" to "Depuis",
        "logs.httpMethod" to "Méthode HTTP",
        "logs.justNow" to "tout à l' heure",
        "logs.loadingLogs" to "Chargement des journaux...",
        "logs.logDetails" to "Détail du journal",
        "logs.logDetailsLabels.error" to "Erreur",
        "logs.logDetailsLabels.executionTime" to "Temps d'exécution",
        "logs.logDetailsLabels.ip" to "IP",
        "logs.logDetailsLabels.method" to "Méthode",
        "logs.logDetailsLabels.path" to "chemin",
        "logs.logDetailsLabels.requestBody" to "Corps de la demande",
        "logs.logDetailsLabels.responseBody" to "Corps de réponse",
        "logs.logDetailsLabels.schedulerJob" to "Travail du planificateur",
        "logs.logDetailsLabels.status" to "statut",
        "logs.logDetailsLabels.time" to "Temps",
        "logs.logDetailsLabels.type" to "Taper",
        "logs.logType" to "Type de journal",
        "logs.logTypeLabels.api_request" to "Demande d'API",
        "logs.logTypeLabels.cron_job" to "Tâche Cron",
        "logs.logTypeLabels.manual" to "Manuel",
        "logs.logTypeLabels.scheduler" to "planificateur",
        "logs.manual" to "Exécutions manuelles",
        "logs.method" to "Méthode",
        "logs.minutesAgo" to "il y a {n} minutes",
        "logs.mytischtennis" to "myTischtennis",
        "logs.next" to "Suivant",
        "logs.of" to "par",
        "logs.ownBackend" to "Propre back-end",
        "logs.page" to "Page",
        "logs.path" to "chemin",
        "logs.pathPlaceholder" to "par ex. /api/journal",
        "logs.previous" to "Précédent",
        "logs.recordsFound" to "Enregistrements trouvés",
        "logs.scheduler" to "planificateur",
        "logs.secondsAgo" to "Il y a {n} secondes",
        "logs.status" to "statut",
        "logs.subtitle" to "Vue d'ensemble de toutes les requêtes, réponses et exécutions d'API",
        "logs.successfullyLoaded" to "Chargé avec succès",
        "logs.time" to "Temps",
        "logs.title" to "Journaux système",
        "logs.to" to "À",
        "logs.total" to "Total",
        "logs.type" to "Taper",
        "matchReport.analyzeNuscore" to "analyse nuscore",
        "matchReport.createLocalCopy" to "Créer une copie locale",
        "matchReport.hideAnalyzer" to "Masquer l'analyseur",
        "matchReportApi.availablePlayers" to "Joueurs disponibles",
        "matchReportApi.bothTeamsAppeared" to "Les deux équipes ont concouru",
        "matchReportApi.clickToRemove" to "Cliquez pour supprimer",
        "matchReportApi.completed" to "Fermé",
        "matchReportApi.completion" to "Achèvement",
        "matchReportApi.endTime" to "heure de fin",
        "matchReportApi.errorLoading" to "Erreur de chargement des données",
        "matchReportApi.general" to "Général",
        "matchReportApi.greeting" to "Accueillant",
        "matchReportApi.guestLineup" to "Configuration des invités",
        "matchReportApi.guestPin" to "Club des invités du code PIN",
        "matchReportApi.guestTeamNotAppeared" to "L'équipe invitée {team} n'a pas participé",
        "matchReportApi.homeLineup" to "Installation à domicile",
        "matchReportApi.homePin" to "Code PIN Club d'accueil",
        "matchReportApi.homeTeamNotAppeared" to "L'équipe locale {team} n'a pas participé",
        "matchReportApi.loading" to "Chargement des données du rapport de match...",
        "matchReportApi.noLineupData" to "Aucune donnée d'installation disponible",
        "matchReportApi.notAppeared" to "Pas participé pour tous",
        "matchReportApi.pending" to "En attente",
        "matchReportApi.pinInput" to "Saisie du code PIN",
        "matchReportApi.playSystem" to "Système de jeu",
        "matchReportApi.rank" to "Cercle",
        "matchReportApi.result" to "Saisie des résultats",
        "matchReportApi.retry" to "Essayer à nouveau",
        "matchReportApi.selectedPlayers" to "Joueur sélectionné",
        "matchReportApi.setCurrentTime" to "Régler l'heure actuelle",
        "matchReportApi.signLineup" to "Pose d'enseignes",
        "matchReportApi.startTime" to "heure de début",
        "matchReportApi.status" to "statut",
        "matchReportApi.vs" to "vs",
        "matchReportHeaderActions.copied" to "Copié!",
        "matchReportHeaderActions.copyError" to "Erreur lors de la copie du code PIN",
        "matchReportHeaderActions.copyPin" to "Copier le code PIN",
        "matchReportHeaderActions.copyPinTitle" to "Copier dans le presse-papier",
        "matchReportHeaderActions.insertPin" to "INSÉREZ VOTRE NIP",
        "matchReportHeaderActions.insertPinTitle" to "Insertion automatique",
        "matchReportHeaderActions.noPinAvailable" to "Aucun code PIN DISPONIBLE",
        "memberActivities.activity" to "Exercice",
        "memberActivities.all" to "Tous",
        "memberActivities.close" to "Fermer",
        "memberActivities.dates" to "Données",
        "memberActivities.frequency" to "Fréquence",
        "memberActivities.last3Months" to "3 derniers mois",
        "memberActivities.last4Weeks" to "les 2 derniers mois",
        "memberActivities.last6Months" to "le dernier semestre",
        "memberActivities.lastYear" to "L'année dernière",
        "memberActivities.loading" to "Chargement des exercices...",
        "memberActivities.more" to "autre",
        "memberActivities.noActivities" to "Aucun exercice trouvé dans la période sélectionnée.",
        "memberActivities.period" to "Période",
        "memberActivities.showLess" to "montrer moins",
        "memberActivities.title" to "Exercices par",
        "memberGallery.imageSize" to "Taille de l'image",
        "memberGallery.loading" to "Chargement de la galerie...",
        "memberGallery.noImage" to "Aucune image",
        "memberGallery.noMembersWithImages" to "Aucun membre trouvé avec des images.",
        "memberGallery.title" to "Galerie des membres",
        "memberGallery.titleWithDate" to "Galerie des membres - Cliquez sur une image pour l'ajouter en tant que participant",
        "memberNotes.add" to "Ajouter",
        "memberNotes.memberImage" to "Membre d'image",
        "memberNotes.newNote" to "Nouvelle remarque",
        "memberNotes.notes" to "Remarques",
        "memberNotes.phone" to "N° de téléphone",
        "memberNotes.selectTags" to "Sélectionnez les balises",
        "memberNotes.tags" to "Tags",
        "memberNotes.title" to "Remarques pour",
        "members.actions" to "Actes",
        "members.active" to "Actif",
        "members.activeMembers" to "Membres actifs",
        "members.addEmail" to "Ajouter une adresse e-mail",
        "members.addGroup" to "Ajouter un groupe...",
        "members.addPhone" to "Ajouter un numéro",
        "members.address" to "Adresse",
        "members.adultReleaseApproved" to "Autorisé pour les adultes",
        "members.adultReserveApproved" to "Réserve adulte",
        "members.adults" to "Adultes (20+)",
        "members.age" to "Âge",
        "members.ageFromPlaceholder" to "de",
        "members.ageGroup" to "Catégorie d'âge",
        "members.ageRange" to "Âge de - à",
        "members.ageToPlaceholder" to "à",
        "members.batchFormsMarkedEmpty" to "Aucun formulaire non vérifié dans la sélection actuelle.",
        "members.batchFormsMarkedSuccess" to "{count} formulaire(s) marqué(s) comme vérifié(s).",
        "members.batchMarkedRegularEmpty" to "Aucun membre à l’essai dans la sélection actuelle.",
        "members.batchMarkedRegularSuccess" to "{count} membre(s) à l’essai marqué(s) comme réguliers.",
        "members.batchPartialFailure" to "{success} réussis, {failed} échoués.",
        "members.birthdate" to "Date de naissance",
        "members.bulkActions" to "Actions groupées",
        "members.camera" to "Caméra",
        "members.change" to "Modifier",
        "members.city" to "Ville",
        "members.clearFields" to "Vider les champs",
        "members.clearFilters" to "Réinitialiser les filtres",
        "members.clickTtRequestAction" to "Demander l'autorisation Click-TT",
        "members.clickTtRequestConfirm" to "Faut-il lancer la demande Click-TT automatisée pour {name} ?",
        "members.clickTtRequestError" to "La demande Click-TT n'a pas pu être envoyée.",
        "members.clickTtRequestFailedLog" to "Échec de la demande Click-TT",
        "members.clickTtRequestHint" to "La demande est traitée automatiquement par le workflow Click-TT du backend.",
        "members.clickTtRequestPending" to "Demande Click-TT en cours",
        "members.clickTtRequestPendingShort" to "En cours...",
        "members.clickTtRequestShort" to "Cliquez sur TT",
        "members.clickTtRequestSuccess" to "Veuillez encore vous connecter à click-tt et envoyer la demande.",
        "members.clickTtRequestTitle" to "Lancer une demande Click-TT",
        "members.clickTtSubmitted" to "Click-TT envoyé",
        "members.closeEditor" to "Fermer l'éditeur",
        "members.composeEmail" to "Préparer un e-mail",
        "members.contact" to "Contact",
        "members.copyContactSummary" to "Copier le résumé des contacts",
        "members.copyContactSummarySuccess" to "Résumé des contacts copié dans le presse-papiers.",
        "members.copyEmails" to "Copier les e-mails",
        "members.copyEmailsEmpty" to "Aucune adresse e-mail dans la sélection actuelle.",
        "members.copyEmailsSuccess" to "Liste e-mail copiée dans le presse-papiers.",
        "members.copyPhones" to "Copier les téléphones",
        "members.copyPhonesEmpty" to "Aucun numéro de téléphone dans la sélection actuelle.",
        "members.copyPhonesSuccess" to "Liste téléphonique copiée dans le presse-papiers.",
        "members.create" to "Créer",
        "members.createNewMember" to "Créer un nouveau membre",
        "members.dataIssueAddress" to "Adresse manquante",
        "members.dataIssueBirthdate" to "Date de naissance manquante",
        "members.dataIssueCity" to "Ville manquante",
        "members.dataIssueEmail" to "E-mail manquant",
        "members.dataIssueGender" to "Sexe non défini",
        "members.dataIssuePhone" to "Téléphone manquant",
        "members.dataIssuePostalCode" to "Code postal manquant",
        "members.dataIssueStreet" to "Rue manquante",
        "members.dataIssueTrainingGroup" to "Groupe d'entraînement manquant",
        "members.dataQuality" to "Qualité des données",
        "members.dataQualityComplete" to "Données complètes",
        "members.deactivateMember" to "Désactiver le membre",
        "members.deactivateMemberConfirm" to "Voulez-vous vraiment désactiver \"{name}\" ?",
        "members.deactivateMemberTitle" to "Désactiver le membre",
        "members.deleteImageConfirm" to "Voulez-vous vraiment supprimer cette image ?",
        "members.deleteImageTitle" to "Supprimer l'image",
        "members.editHint" to "Un clic sur une ligne ouvre l’éditeur.",
        "members.editMember" to "Modifier le membre",
        "members.editorAssignTrainingGroupHint" to "Veuillez attribuer au moins un groupe d'entraînement.",
        "members.editorCreateHint" to "Créer un nouveau membre et saisir directement ses coordonnées.",
        "members.editorEditHint" to "Modifier les données de {name}.",
        "members.editorRecommendedEntry" to "Entrée recommandée",
        "members.emailAddress" to "Adresse e-mail",
        "members.emailAddressShort" to "E-mail",
        "members.emails" to "Adresses e-mail",
        "members.errorAddingToGroup" to "Erreur lors de l'ajout au groupe",
        "members.errorDeactivatingMember" to "Erreur lors de la désactivation du membre",
        "members.errorDeletingImage" to "L'image n'a pas pu être supprimée",
        "members.errorLoadingImage" to "Erreur lors du chargement de l'image",
        "members.errorLoadingMembers" to "Échec du chargement de la liste des membres.",
        "members.errorLoadingTrainingParticipations" to "Erreur lors du chargement des participations",
        "members.errorMarkingForm" to "Erreur lors du marquage du formulaire.",
        "members.errorRemovingFromGroup" to "Erreur lors du retrait du groupe",
        "members.errorRemovingTestMembership" to "Erreur lors de la suppression de l'adhésion d'essai.",
        "members.errorRotatingImage" to "Erreur lors de la rotation de l'image",
        "members.errorSavingMember" to "Erreur lors de l'enregistrement du membre",
        "members.errorSettingPrimaryImage" to "L'image principale n'a pas pu être définie",
        "members.errorTransfer" to "Erreur lors du transfert",
        "members.errorUpdatingRatings" to "Erreur lors de la mise à jour des valeurs TTR/QTTR",
        "members.errorUploadingImage" to "L'image n'a pas pu être téléversée",
        "members.exercises" to "Exercices",
        "members.exportCsv" to "Exporter en CSV",
        "members.exportCsvFile" to "selection-membres.csv",
        "members.exportEmails" to "E-mail",
        "members.exportMembersSelected" to "membres actuellement sélectionnés",
        "members.exportPhones" to "Téléphone",
        "members.exportPreview" to "Aperçu de l'export",
        "members.exportPreviewEmpty" to "Aucun membre dans la sélection actuelle",
        "members.exportPreviewNames" to "Aperçu",
        "members.exportReachableByEmail" to "avec adresse e-mail",
        "members.exportReachableByPhone" to "avec numéro de téléphone",
        "members.firstName" to "Prénom",
        "members.formHandedOver" to "Formulaire d'adhésion remis",
        "members.formMarkedAsHandedOver" to "Le formulaire d'adhésion a été marqué comme remis.",
        "members.gender" to "Sexe",
        "members.genderDiverse" to "Diversité",
        "members.genderFemale" to "Féminin",
        "members.genderMale" to "Masculin",
        "members.genderUnknown" to "Inconnu",
        "members.generatePhoneList" to "Générer la liste téléphonique",
        "members.groupPhotoCrop" to "Traiter la photo de groupe",
        "members.groupPhotoCropSaved" to "Photo du membre enregistrée depuis la photo de groupe.",
        "members.image" to "Image",
        "members.imageDeleted" to "L'image a été supprimée.",
        "members.imageInternet" to "Image (web ?)",
        "members.imagePreview" to "Aperçu de l'image du membre",
        "members.imageUpdated" to "Image mise à jour",
        "members.inactive" to "inactif",
        "members.inactiveMembers" to "Membres inactifs",
        "members.j11" to "U11",
        "members.j13" to "U13",
        "members.j15" to "U15",
        "members.j17" to "U17 (17 ans et moins)",
        "members.j19" to "U19",
        "members.j9" to "U9",
        "members.lastName" to "Nom",
        "members.lastTrainingFilter" to "Dernier entraînement",
        "members.lastTrainingFilterHasDate" to "Avec date enregistrée",
        "members.lastTrainingFilterHint" to "Tableau : saison actuelle dans la colonne AK. Détail complet (deux saisons, dernier entraînement, participations) au survol de la ligne.",
        "members.lastTrainingFilterNoDate" to "Sans dernier entraînement",
        "members.lastTrainingFilterNotInTraining" to "« Plus à l’entraînement »",
        "members.loadingMembers" to "Chargement des membres...",
        "members.m11" to "G11",
        "members.m13" to "G13",
        "members.m15" to "G15",
        "members.m19" to "G19 ",
        "members.m9" to "G9",
        "members.markFormReceived" to "Marquer le formulaire comme vérifié",
        "members.markFormsForSelection" to "Vérifier les formulaires de la sélection",
        "members.markRegular" to "Marquer comme régulier",
        "members.markRegularForSelection" to "Marquer la sélection comme régulière",
        "members.memberDeactivated" to "Membre désactivé",
        "members.memberDetails" to "Détails du membre",
        "members.memberFormHandedOver" to "Formulaire d'adhésion remis",
        "members.memberImage" to "Photo du membre",
        "members.memberImages" to "Images du membre",
        "members.memberInfo" to "Informations membre",
        "members.memberScope" to "Périmètre des membres",
        "members.missingTtrHistoryId" to "Aucun identifiant myTischtennis enregistré",
        "members.name" to "Nom, prénom",
        "members.newMember" to "Nouveau membre",
        "members.noAddressShort" to "Pas d’adresse",
        "members.noEmailShort" to "Pas d’e-mail",
        "members.noGroupsAssigned" to "Aucun groupe attribué",
        "members.noGroupsAvailable" to "Aucun groupe disponible",
        "members.noOpenTasks" to "Aucune tâche ouverte",
        "members.noPhoneShort" to "Pas de téléphone",
        "members.notes" to "Remarques",
        "members.noTestMembership" to "N'est plus membre à l'essai",
        "members.notInTrainingTooltip" to "Aucune participation depuis {weeks} semaines d’entraînement",
        "members.onlyActiveMembers" to "Seuls les membres actifs sont inclus",
        "members.openTasks" to "Tâches ouvertes",
        "members.parent" to "Mère",
        "members.parentFallback" to "Mère",
        "members.parentName" to "Nom (p. ex. mère, père)",
        "members.phoneList" to "liste-telephonique.pdf",
        "members.phoneListForSelection" to "Liste téléphonique pour la sélection",
        "members.phoneListSelectionFile" to "liste-telephonique-selection.pdf",
        "members.phoneNumber" to "Numéro de téléphone",
        "members.phoneNumberShort" to "Tél.",
        "members.phones" to "Numéros de téléphone",
        "members.picsInInternetAllowed" to "Photos autorisées en ligne",
        "members.postalCode" to "Code postal",
        "members.previewLastTraining" to "Dernier entraînement",
        "members.previewNoLastTraining" to "Aucune participation pour le moment",
        "members.primary" to "Principal",
        "members.primaryImageUpdated" to "Image principale mise à jour.",
        "members.remove" to "Retirer",
        "members.resultsVisible" to "membres visibles",
        "members.rowTooltipSeparator" to "·",
        "members.scopeActive" to "Actifs",
        "members.scopeActiveDataIncomplete" to "Actif + données incomplètes",
        "members.scopeActiveTest" to "Actif + essai",
        "members.scopeAll" to "Tous",
        "members.scopeDataIncomplete" to "Données incomplètes",
        "members.scopeInactive" to "Inactifs",
        "members.scopeNeedsForm" to "Formulaire non vérifié",
        "members.scopeNotTraining" to "Ne s'entraîne plus",
        "members.scopeTest" to "Essai",
        "members.search" to "Rechercher",
        "members.searchAndFilter" to "Recherche et filtres",
        "members.searchPlaceholder" to "Rechercher par nom, ville, téléphone ou e-mail",
        "members.selectFile" to "Choisir un fichier",
        "members.showInactiveMembers" to "Afficher les membres inactifs",
        "members.showTrainingParticipationsColumn" to "Afficher la colonne « Participations »",
        "members.showTtrHistory" to "Afficher l’historique TTR",
        "members.sixOrMoreParticipations" to "6 participations ou plus à l'entraînement",
        "members.sortAge" to "Âge",
        "members.sortBirthday" to "Date de naissance",
        "members.sortBy" to "Trier par",
        "members.sortFirstName" to "Prénom",
        "members.sortLastName" to "Nom",
        "members.sortLastTraining" to "Dernier entraînement",
        "members.sortOpenTasks" to "Tâches ouvertes",
        "members.sortQttr" to "Valeur QTTR",
        "members.status" to "statut",
        "members.street" to "Rue",
        "members.subtitle" to "Rechercher, filtrer et modifier les membres directement.",
        "members.taskActionMarkRegular" to "Marquer régulier",
        "members.taskActionRequest" to "Demander",
        "members.taskActionReview" to "Ouvrir",
        "members.taskActionVerify" to "Vérifier",
        "members.taskAssignTrainingGroup" to "Attribuer un groupe d'entraînement",
        "members.taskCheckClickTt" to "Vérifier l'autorisation Click-TT",
        "members.taskCheckDataQuality" to "Vérifier la qualité des données",
        "members.taskCheckTrainingStatus" to "Vérifier le statut d'entraînement",
        "members.taskReviewTrialStatus" to "Vérifier le statut d'essai",
        "members.taskVerifyForm" to "Vérifier le formulaire",
        "members.testMember" to "Essai",
        "members.testMembers" to "Membres à l'essai",
        "members.testMembership" to "Adhésion d'essai",
        "members.testMembershipRemoved" to "L'adhésion d'essai a été supprimée.",
        "members.threeOrMoreParticipations" to "3 participations ou plus à l'entraînement",
        "members.title" to "Membres",
        "members.toggleSortDirection" to "Changer le sens du tri",
        "members.trainingGroups" to "Groupes d'entraînement",
        "members.trainingParticipations" to "Participations à l'entraînement",
        "members.transferErrorTitle" to "Erreur de transfert",
        "members.transferMembers" to "Transférer des membres",
        "members.transferSuccessTitle" to "Transfert réussi",
        "members.ttAdult" to "Adultes (pas jeunes selon la date limite)",
        "members.ttAgeClassCol" to "Classe d'âge (TT)",
        "members.ttFilterGroupJ" to "Filles et garçons (mixte)",
        "members.ttFilterGroupM" to "Filles uniquement",
        "members.ttrQttr" to "TTR/QTTR",
        "members.ttSeasonCurrentTag" to "actuelle",
        "members.ttSeasonFilter" to "Saison (date limite)",
        "members.ttSeasonNextTag" to "à venir",
        "members.ttStichtagHint" to "Date limite le 1er janv. (DTTB). Garçons : classes J uniquement. Filles : J et M.",
        "members.updateRatings" to "Mettre à jour TTR/QTTR depuis myTischtennis",
        "members.updating" to "Mise à jour...",
        "members.visibleMembers" to "Membres visibles",
        "members.wantsToPlay" to "Veut jouer",
        "memberSelection.close" to "Fermer",
        "memberSelection.deselectAll" to "Tout désélectionner",
        "memberSelection.generatePdf" to "Générer un PDF",
        "memberSelection.members" to "Membres",
        "memberSelection.noRecommendations" to "Aucune recommandation correspondante trouvée.",
        "memberSelection.recommendations" to "Recommandations",
        "memberSelection.selectAll" to "Sélectionner tout",
        "memberSelection.title" to "Sélectionnez les membres",
        "memberTransfer.additionalField" to "Champ supplémentaire",
        "memberTransfer.additionalFieldExample1" to "Champ supplémentaire (par exemple client_id)",
        "memberTransfer.additionalFieldExample2" to "Champ supplémentaire (par exemple client_secret)",
        "memberTransfer.analyzeAndImport" to "Analyser et importer un modèle",
        "memberTransfer.availablePlaceholders" to "Espaces réservés disponibles",
        "memberTransfer.bulkMode" to "Mode d'importation groupée (transférer tous les membres en même temps)",
        "memberTransfer.bulkModeActive" to "Mode actif",
        "memberTransfer.bulkModeActiveDescription" to "Le modèle définit le format d'un seul membre. Les membres sont automatiquement encapsulés dans un tableau. Vous pouvez éventuellement définir la structure externe dans le \"modèle de wrapper en bloc\" (voir ci-dessous).",
        "memberTransfer.bulkModeHint" to "Si cette option est activée, tous les membres d'une requête sont transférés sous forme de tableau.",
        "memberTransfer.bulkWrapperDescription" to "Vous pouvez éventuellement définir la structure externe dans laquelle le tableau de membres sera inséré. Utilisez PLACEHOLDER_MEMBERS comme espaces réservés pour le tableau de membres.",
        "memberTransfer.bulkWrapperNote" to "Remarque : Si aucun modèle de wrapper n'est spécifié, un tableau de membres est automatiquement utilisé.",
        "memberTransfer.bulkWrapperTemplate" to "Modèle de wrapper en bloc (facultatif)",
        "memberTransfer.bulkWrapperWhat" to "Qu’est-ce qu’un modèle de wrapper en bloc ?",
        "memberTransfer.configDeleted" to "Configuration supprimée avec succès !",
        "memberTransfer.configInfo" to "Configurez ici les paramètres de transfert des membres vers des systèmes externes. Ces paramètres sont enregistrés pour chaque club.",
        "memberTransfer.configSaved" to "Configuration enregistrée avec succès",
        "memberTransfer.confirmDelete" to "Supprimer la configuration",
        "memberTransfer.confirmDeleteMessage" to "Êtes-vous sûr de vouloir rembourser cette transaction ?",
        "memberTransfer.deleteConfig" to "Supprimer la configuration",
        "memberTransfer.deleting" to "clairière...",
        "memberTransfer.errorDeleting" to "Effacement des erreurs",
        "memberTransfer.errorLoading" to "Erreur lors du chargement de la configuration",
        "memberTransfer.errorParsingTemplate" to "Modèle d'analyse des erreurs",
        "memberTransfer.errorSaving" to "Erreur lors de l'enregistrement",
        "memberTransfer.example" to "Exemple",
        "memberTransfer.exampleFormData" to "Exemple de format de données de formulaire",
        "memberTransfer.exampleJson" to "Exemple de format JSON (recommandé)",
        "memberTransfer.exampleXml" to "Exemple de format XML",
        "memberTransfer.formDataHint" to "Pour les données de formulaire, utilisez un modèle de texte simple avec des lignes au format feldname=placeholder :",
        "memberTransfer.httpMethod" to "Méthode HTTP",
        "memberTransfer.importTemplate" to "Importer un modèle à partir d'un exemple complet",
        "memberTransfer.importTemplateHint" to "Incluez un exemple de modèle complet (avec des exemples de membres). Le système détectera automatiquement le modèle de membre et le modèle de wrapper en bloc.",
        "memberTransfer.importTemplatePlaceholder" to "Insérez ici un exemple de modèle complet, par exemple :\nLBRACE\n  Décembre : [\n    LBRACE\n      D .prénomD. : D .MaxD.,\n      D. NomD.: D. MustermannD.,\n      DMail : DMaxATexample.comMail : DMaxATexample.com\n    RBRACE\n  ]\nRBRACE",
        "memberTransfer.invalidJson" to "Veuillez vous assurer que un JSON valide est utilisé.",
        "memberTransfer.invalidTemplateFormat" to "Format de modèle invalide",
        "memberTransfer.loadingConfig" to "Chargement de la configuration...",
        "memberTransfer.loginConfiguration" to "Configuration de connexion",
        "memberTransfer.loginData" to "Données de connexion",
        "memberTransfer.loginEndpointHint" to "Facultatif : chemin relatif vers le point de terminaison de connexion (par exemple, /api/auth/login)",
        "memberTransfer.loginEndpointPath" to "Chemin du point de terminaison de connexion",
        "memberTransfer.loginEndpointPlaceholder" to "/api/auth/connexion",
        "memberTransfer.loginFormat" to "Format de connexion",
        "memberTransfer.membersArray" to "Tableau de membres",
        "memberTransfer.password" to "Mot de passe",
        "memberTransfer.passwordEncrypted" to "Les mots de passe sont stockés cryptés.",
        "memberTransfer.placeholderHint" to "Cliquez sur un espace réservé pour l'insérer à la position actuelle du curseur :",
        "memberTransfer.placeholders.address" to "Adresse combinée",
        "memberTransfer.placeholders.addressDesc" to "Rue et ville combinées",
        "memberTransfer.placeholders.birthDate" to "Date de naissance",
        "memberTransfer.placeholders.birthDateAlt" to "Date de naissance (ancienne)",
        "memberTransfer.placeholders.birthDateAltDesc" to "Date de naissance au format AAAA-MM-JJ (nom alternatif)",
        "memberTransfer.placeholders.birthDateDesc" to "au format AAAA-MM-JJ",
        "memberTransfer.placeholders.city" to "Emplacement",
        "memberTransfer.placeholders.cityDesc" to "Lieu de résidence",
        "memberTransfer.placeholders.email" to "Adresse email",
        "memberTransfer.placeholders.emailDesc" to "Adresse email du membre",
        "memberTransfer.placeholders.firstName" to "Prénom",
        "memberTransfer.placeholders.firstNameDesc" to "Prénom du membre",
        "memberTransfer.placeholders.fullName" to "Nom et prénom",
        "memberTransfer.placeholders.fullNameDesc" to "Nom et prénom combinés",
        "memberTransfer.placeholders.gender" to "Sexe",
        "memberTransfer.placeholders.genderDesc" to "Sexe du membre",
        "memberTransfer.placeholders.lastName" to "Nom de famille",
        "memberTransfer.placeholders.lastNameDesc" to "Nom de famille du membre",
        "memberTransfer.placeholders.phone" to "Numéro de téléphone",
        "memberTransfer.placeholders.phoneDesc" to "Téléphone du membre du personnel",
        "memberTransfer.placeholders.qttr" to "Valeur QTTR",
        "memberTransfer.placeholders.qttrDesc" to "Valeur QTTR du membre",
        "memberTransfer.placeholders.street" to "Rue",
        "memberTransfer.placeholders.streetDesc" to "Rue et numéro de maison",
        "memberTransfer.placeholders.ttr" to "Valeur TTR",
        "memberTransfer.placeholders.ttrDesc" to "Valeur TTR du membre",
        "memberTransfer.save" to "Sauvegarder",
        "memberTransfer.saving" to "Économie...",
        "memberTransfer.serverBaseUrl" to "URL de base du serveur",
        "memberTransfer.serverBaseUrlHint" to "URL de base du serveur (par exemple https://example.com)",
        "memberTransfer.serverBaseUrlPlaceholder" to "https://exemple.com",
        "memberTransfer.serverConfiguration" to "Configuration du serveur",
        "memberTransfer.templateDescription" to "Le modèle définit le format dans lequel les données du membre sont transférées vers le système externe. Utilisez des espaces réservés tels que PLACEHOLDER_FIRSTNAME pour remplacer automatiquement les données.",
        "memberTransfer.templateImported" to "Modèle importé avec succès.",
        "memberTransfer.templateImportedBulk" to "Modèle de membre détecté, mode groupé activé.",
        "memberTransfer.templateImportedDetails" to "Les modèles de membres et de wrappers en bloc ont été détectés et complétés.",
        "memberTransfer.templateImportedSingle" to "Modèle de membre unique détecté.",
        "memberTransfer.templateTip" to "Astuce : Placez le curseur à l'endroit souhaité dans le modèle et cliquez sur un espace réservé pour l'insérer. Les espaces réservés sont automatiquement remplacés par les données réelles du membre lors de leur transfert.",
        "memberTransfer.templateWhat" to "Qu'est-ce qu'un modèle ?",
        "memberTransfer.title" to "Transfert de membre - Paramètres",
        "memberTransfer.transferConfiguration" to "Configuration de transmission",
        "memberTransfer.transferConfigurationTitle" to "Configuration de transmission",
        "memberTransfer.transferEndpointHint" to "Chemin relatif vers le point de terminaison de transmission (par exemple, /api/members/bulk)",
        "memberTransfer.transferEndpointPath" to "Chemin du point de terminaison de transmission",
        "memberTransfer.transferEndpointPlaceholder" to "/api/membres/vrac",
        "memberTransfer.transferFormat" to "Format de transmission",
        "memberTransfer.transferTemplate" to "Modèle de transfert",
        "memberTransfer.usernameEmail" to "Nom d'utilisateur/e-mail",
        "memberTransferDialog.additionalErrors" to "défauts supplémentaires",
        "memberTransferDialog.additionalFieldPlaceholder" to "Champ supplémentaire (par exemple client_id)",
        "memberTransferDialog.additionalFieldPlaceholderForm" to "Nom du champ : valeur (par exemple, client_id : abc123)",
        "memberTransferDialog.bulkImport" to "Importation en masse",
        "memberTransferDialog.cancel" to "Annuler",
        "memberTransferDialog.editConfig" to "Modifiez la configuration.",
        "memberTransferDialog.endpoint" to "Endpoint",
        "memberTransferDialog.excludedMembers" to "Membres exclus (champs obligatoires manquants)",
        "memberTransferDialog.format" to "Format",
        "memberTransferDialog.goToSettings" to "Paramètres Où aller ?",
        "memberTransferDialog.loadingConfig" to "Chargement de la configuration enregistrée",
        "memberTransferDialog.loginData" to "Données de connexion",
        "memberTransferDialog.loginDataHint" to "Les informations de connexion sont utilisées à partir des paramètres. Vous pouvez les écraser ici si nécessaire.",
        "memberTransferDialog.loginDataOverride" to "Détails de connexion (écrasement facultatif)",
        "memberTransferDialog.loginDataOverrideHint" to "Ne remplissez ce formulaire que si vous souhaitez écraser les données de connexion enregistrées. Les champs vides utilisent les valeurs stockées.",
        "memberTransferDialog.method" to "Méthode",
        "memberTransferDialog.mode" to "mode",
        "memberTransferDialog.noConfigFound" to "Aucune configuration trouvée",
        "memberTransferDialog.noConfigMessage" to "Veuillez d'abord configurer le transfert de membre dans les paramètres.",
        "memberTransferDialog.passwordPlaceholder" to "Mot de passe (laisser vide pour enregistré)",
        "memberTransferDialog.server" to "Server",
        "memberTransferDialog.single" to "Célibataire",
        "memberTransferDialog.title" to "Transférer des membres",
        "memberTransferDialog.transfer" to "Transféré",
        "memberTransferDialog.transferConfiguration" to "Configuration de transmission",
        "memberTransferDialog.transferError" to "Erreur lors de la transmission",
        "memberTransferDialog.transferFailed" to "Le transfert a échoué",
        "memberTransferDialog.transferring" to "Communicant...",
        "memberTransferDialog.transferSuccess" to "{transferred} transféré avec succès par les membres {total}.",
        "memberTransferDialog.usernameEmail" to "Nom d'utilisateur/e-mail",
        "messages.cancel" to "Annuler",
        "messages.confirm" to "Confirmer",
        "messages.error" to "Erreur",
        "messages.fileTooLarge" to "Fichier trop grand ",
        "messages.imageMaxSize" to "L'image doit être d'un maximum de 5 Mo.",
        "messages.info" to "information",
        "messages.invalidFile" to "Fichier non valide",
        "messages.note" to "Avis",
        "messages.pleaseSelectImageFile" to "Choisissez une image s il vous plait.",
        "messages.recordsDisplayed" to "affiché",
        "messages.recordsFound" to "Enregistrements trouvés",
        "messages.success" to "Succès",
        "messages.successfullyLoaded" to "Chargé avec succès",
        "messages.warning" to "Avertissement",
        "mobile.active" to "Aktiv",
        "mobile.add" to "Hinzufügen",
        "mobile.appLoading" to "App wird geladen",
        "mobile.calendarAgendaEmpty" to "Aucun rendez-vous ce mois-ci.",
        "mobile.calendarAgendaTitle" to "Rendez-vous du mois",
        "mobile.calendarAllSourcesFailed" to "Impossible de charger le calendrier.",
        "mobile.calendarCancellationEnd" to "Jusqu’au (optionnel)",
        "mobile.calendarCancellationHint" to "Masque les créneaux récurrents ces jours-là.",
        "mobile.calendarCancellationInMonth" to "Annulations ce mois-ci",
        "mobile.calendarCancellationReason" to "Motif",
        "mobile.calendarCancellationSave" to "Enregistrer",
        "mobile.calendarCancellationStart" to "Date (AAAA-MM-JJ)",
        "mobile.calendarCancellationTitle" to "Entraînement annulé",
        "mobile.calendarGridTitle" to "Mois",
        "mobile.calendarLegend" to "Affichage",
        "mobile.calendarLegendCancellation" to "Annulation",
        "mobile.calendarLegendHoliday" to "Jour férié",
        "mobile.calendarLegendMatch" to "Match",
        "mobile.calendarLegendOfficial" to "Participation",
        "mobile.calendarLegendSchool" to "Vacances scolaires",
        "mobile.calendarLegendTournament" to "Tournoi",
        "mobile.calendarLegendTraining" to "Entraînement",
        "mobile.calendarSourceCancellations" to "Annulations",
        "mobile.calendarSourceDiary" to "Journal",
        "mobile.calendarSourceFailed" to "non chargé",
        "mobile.calendarSourceHolidays" to "Vacances / jours fériés",
        "mobile.calendarSourceMatches" to "Matchs de championnat",
        "mobile.calendarSourceOfficial" to "Participations officielles",
        "mobile.calendarSourceTournaments" to "Tournois",
        "mobile.calendarSourceTrainingTimes" to "Créneaux d’entraînement",
        "mobile.calendarSubtitle" to "Entraînements, tournois, matchs et vacances du mois.",
        "mobile.calendarTitle" to "Calendrier",
        "mobile.calendarToday" to "Aujourd’hui",
        "mobile.cancel" to "Abbrechen",
        "mobile.clubRequest" to "Zugriff anfragen",
        "mobile.clubRequested" to "Angefragt",
        "mobile.createDiaryEntry" to "Eintrag erstellen",
        "mobile.deleteNote" to "Notiz löschen",
        "mobile.deleteTag" to "Tag entfernen",
        "mobile.editTimes" to "Zeiten bearbeiten",
        "mobile.emailAndPasswordRequired" to "E-Mail und Passwort sind erforderlich",
        "mobile.entry" to "Eintrag",
        "mobile.inactive" to "Inaktiv",
        "mobile.language" to "Sprache",
        "mobile.lastTraining" to "Letztes Training",
        "mobile.loginFailed" to "Login fehlgeschlagen",
        "mobile.loginInProgress" to "Anmelden...",
        "mobile.more" to "Mehr",
        "mobile.new" to "Neu",
        "mobile.newNote" to "Neue Notiz",
        "mobile.newTag" to "Neuer Tag",
        "mobile.noDiaryEntries" to "Noch keine Tagebuch-Einträge",
        "mobile.noMembers" to "Keine Mitglieder gefunden",
        "mobile.noResults" to "Keine Treffer",
        "mobile.noTimes" to "Keine Zeiten",
        "mobile.offlineCacheHint" to "Pas de connexion – affichage des données du dernier chargement.",
        "mobile.participationTop" to "Top Teilnahmen",
        "mobile.refresh" to "Aktualisieren",
        "mobile.requestedAccess" to "Angefragt",
        "mobile.role" to "Rolle",
        "mobile.saveEntry" to "Speichern",
        "mobile.search" to "Suche",
        "mobile.select" to "Auswählen",
        "mobile.sessionCheck" to "Session prüfen",
        "mobile.sessionCheckFailed" to "Session check fehlgeschlagen",
        "mobile.sessionInvalid" to "Session ungültig",
        "mobile.sessionValid" to "Session gültig",
        "mobile.status" to "Status",
        "mobile.user" to "Benutzer",
        "myTischtennis.about" to "À propos de myTischtennis",
        "myTischtennis.aboutFeatures.fetch" to "Récupérez directement les données de la compétition",
        "myTischtennis.aboutFeatures.import" to "Importer automatiquement les données du tournoi",
        "myTischtennis.aboutFeatures.sync" to "Synchroniser les résultats du lecteur",
        "myTischtennis.aboutText" to "En associant votre compte myTischtennis, vous pouvez :",
        "myTischtennis.autoUpdates" to "Mise à jour automatique",
        "myTischtennis.club" to "Association (myTischtennis)",
        "myTischtennis.deleteAccount" to "Déconnecter le compte",
        "myTischtennis.disabled" to "Décoché",
        "myTischtennis.editAccount" to "Modifier le compte",
        "myTischtennis.enabled" to "SUR",
        "myTischtennis.fetchStatistics" to "Statistiques de récupération de données",
        "myTischtennis.lastFetch" to "Dernière récupération :",
        "myTischtennis.lastLoginAttempt" to "Dernière tentative de connexion",
        "myTischtennis.lastSuccessfulLogin" to "Dernière connexion réussie",
        "myTischtennis.leagueTables" to "Classement JoomSport",
        "myTischtennis.linkAccount" to "Lier le compte",
        "myTischtennis.linkedAccount" to "Compte lié",
        "myTischtennis.loadingStats" to "Chargement des statistiques",
        "myTischtennis.matchResults" to "Résultats de l'événement",
        "myTischtennis.neverFetched" to "Jamais récupéré",
        "myTischtennis.no" to "Non",
        "myTischtennis.noAccount" to "Aucun compte myTischtennis lié.",
        "myTischtennis.passwordNote" to "Remarque : L'enregistrement du mot de passe est facultatif. Si vous ne l'enregistrez pas, le mot de passe vous sera demandé à chaque synchronisation.",
        "myTischtennis.passwordSaved" to "Mot de passe enregistré",
        "myTischtennis.passwordsEncrypted" to "Les mots de passe sont stockés cryptés.",
        "myTischtennis.playerRatings" to "Notes des joueurs",
        "myTischtennis.refreshStats" to "Recharger les statistiques",
        "myTischtennis.testLogin" to "Reconnectez-vous",
        "myTischtennis.title" to "myTischtennis-Account",
        "myTischtennis.updateHistory" to "Historique des mises à jour",
        "myTischtennis.yes" to "Oui",
        "myTischtennisAccount.aboutDescription" to "En associant votre compte myTischtennis, vous pouvez :",
        "myTischtennisAccount.aboutFeature1" to "Importer automatiquement les données du tournoi",
        "myTischtennisAccount.aboutFeature2" to "Synchroniser les résultats du lecteur",
        "myTischtennisAccount.aboutFeature3" to "Récupérez directement les données de la compétition",
        "myTischtennisAccount.aboutHint" to "L'enregistrement du mot de passe est facultatif. Si vous ne l'enregistrez pas, le mot de passe vous sera demandé à chaque synchronisation.",
        "myTischtennisAccount.aboutMyTischtennis" to "À propos de myTischtennis",
        "myTischtennisAccount.accountSaved" to "Mon compte Tischtennis a été enregistré avec succès",
        "myTischtennisAccount.accountUnlinked" to "Compte myTischtennis déconnecté avec succès",
        "myTischtennisAccount.autoUpdates" to "Mises à jour automatiques :",
        "myTischtennisAccount.club" to "Association (myTischtennis) :",
        "myTischtennisAccount.daysAgo" to "Il y a {count} jours",
        "myTischtennisAccount.disabled" to "Décoché",
        "myTischtennisAccount.editAccount" to "Modifier le compte",
        "myTischtennisAccount.email" to "E-mail:",
        "myTischtennisAccount.enabled" to "SUR",
        "myTischtennisAccount.errorLoadingAccount" to "Erreur de chargement du compte myTischtennis",
        "myTischtennisAccount.errorLoadingStatistics" to "Erreur lors du chargement des statistiques de récupération",
        "myTischtennisAccount.errorUnlinking" to "Erreur lors de la déconnexion du compte",
        "myTischtennisAccount.fetchStatistics" to "Statistiques de récupération de données",
        "myTischtennisAccount.hoursAgo" to "il y a {count} h",
        "myTischtennisAccount.justNow" to "tout à l' heure",
        "myTischtennisAccount.lastFetch" to "Dernière récupération :",
        "myTischtennisAccount.lastLoginAttempt" to "Dernière tentative de connexion :",
        "myTischtennisAccount.lastSuccessfulLogin" to "Dernière connexion réussie :",
        "myTischtennisAccount.leagueTables" to "Classement JoomSport",
        "myTischtennisAccount.linkAccount" to "Lier le compte",
        "myTischtennisAccount.linkedAccount" to "Compte lié",
        "myTischtennisAccount.loading" to "Chargement...",
        "myTischtennisAccount.loadingStatistics" to "Chargement des statistiques",
        "myTischtennisAccount.loginAgain" to "Reconnectez-vous",
        "myTischtennisAccount.loginFailed" to "La connexion a échoué",
        "myTischtennisAccount.loginSuccessful" to "Connexion réussie ! Détails de connexion mis à jour.",
        "myTischtennisAccount.matchResults" to "Résultats de l'événement",
        "myTischtennisAccount.minutesAgo" to "il y a {count} min",
        "myTischtennisAccount.never" to "Jamais",
        "myTischtennisAccount.neverFetched" to "Jamais récupéré",
        "myTischtennisAccount.no" to "Non",
        "myTischtennisAccount.noAccountLinked" to "Aucun compte myTischtennis lié.",
        "myTischtennisAccount.passwordRequired" to "Mot de passe requis",
        "myTischtennisAccount.passwordSaved" to "Mot de passe enregistré",
        "myTischtennisAccount.playerRatings" to "Notes des joueurs",
        "myTischtennisAccount.playersUpdated" to "Joueur mis à jour",
        "myTischtennisAccount.refreshStatistics" to "Recharger les statistiques",
        "myTischtennisAccount.results" to "Résultats",
        "myTischtennisAccount.teams" to "Teams",
        "myTischtennisAccount.title" to "Compte myTischtennis",
        "myTischtennisAccount.unlinkAccount" to "Déconnecter le compte",
        "myTischtennisAccount.unlinkAccountConfirm" to "Etes-vous sûr de vouloir dissocier le compte myTischtennis ?",
        "myTischtennisAccount.unlinkAccountTitle" to "Déconnecter le compte",
        "myTischtennisAccount.updateHistory" to "Historique des mises à jour",
        "myTischtennisAccount.yes" to "Oui",
        "myTischtennisAccount.yesterday" to "hier",
        "myTischtennisDialog.appPassword" to "Mot de passe de votre application pour confirmer",
        "myTischtennisDialog.appPasswordHint" to "Pour des raisons de sécurité, nous avons besoin du mot de passe de votre application pour enregistrer le mot de passe myTischtennis.",
        "myTischtennisDialog.appPasswordPlaceholder" to "Votre mot de passe pour cette application",
        "myTischtennisDialog.autoUpdateRatings" to "Activer les notes de mise à jour automatique",
        "myTischtennisDialog.autoUpdateRatingsHint" to "Les dernières notes de myTischtennis sont automatiquement récupérées chaque jour à 6h00. Nécessite un mot de passe enregistré.",
        "myTischtennisDialog.autoUpdateWarning" to "Pour les mises à jour automatiques, le mot de passe myTischtennis doit être enregistré.",
        "myTischtennisDialog.cancel" to "Annuler",
        "myTischtennisDialog.editAccount" to "modifier mon compte Tischtennis",
        "myTischtennisDialog.email" to "myTischtennis-Email",
        "myTischtennisDialog.emailPlaceholder" to "Votre adresse e-mail myTischtennis",
        "myTischtennisDialog.errorLogin" to "Erreur de connexion.",
        "myTischtennisDialog.errorSaving" to "Erreur lors de l'enregistrement du compte",
        "myTischtennisDialog.linkAccount" to "lier mon compte myTischtennis",
        "myTischtennisDialog.loadingLoginForm" to "Chargement du formulaire de connexion...",
        "myTischtennisDialog.loggingIn" to "Se connecter...",
        "myTischtennisDialog.login" to "Se connecter",
        "myTischtennisDialog.password" to "myTischtennis-Mot de passe",
        "myTischtennisDialog.passwordPlaceholder" to "Votre mot de passe myTischtennis",
        "myTischtennisDialog.passwordPlaceholderKeep" to "Laisser vide pour conserver",
        "myTischtennisDialog.save" to "Sauvegarder",
        "myTischtennisDialog.savePassword" to "enregistrer le mot de passe de mytabletennis",
        "myTischtennisDialog.savePasswordHint" to "S'il est activé, votre mot de passe myTischtennis sera stocké crypté afin que les synchronisations automatiques soient possibles.",
        "myTischtennisDialog.saving" to "Économie...",
        "myTischtennisHistory.close" to "Fermer",
        "myTischtennisHistory.failed" to "Cela n'a pas fonctionné.",
        "myTischtennisHistory.loading" to "Chargement de l'historique...",
        "myTischtennisHistory.noHistory" to "Aucune mise à jour automatique n'a encore été effectuée.",
        "myTischtennisHistory.ratingsUpdated" to "Notes mises à jour",
        "myTischtennisHistory.successful" to "Réussi",
        "myTischtennisHistory.title" to "Mettre à jour l'historique des notes",
        "navigation.approvals" to "Approbations",
        "navigation.backToHome" to "Retour à l'accueil",
        "navigation.billing" to "Facturation",
        "navigation.clickTtAccount" to "Compte HTTV / click-TT",
        "navigation.clickTtBrowser" to "HTTV / click-TT",
        "navigation.clubSettings" to "Paramètres du club",
        "navigation.clubTournaments" to "Tournois du club",
        "navigation.competitions" to "Compétitions",
        "navigation.dailyBusiness" to "Gestion quotidienne",
        "navigation.diary" to "Journal",
        "navigation.home" to "Accueil",
        "navigation.login" to "Connexion",
        "navigation.logout" to "Déconnexion",
        "navigation.logs" to "Journaux système",
        "navigation.members" to "Membres",
        "navigation.memberTransfer" to "Transfert de membres",
        "navigation.myTischtennisAccount" to "Compte myTischtennis",
        "navigation.orders" to "Commandes",
        "navigation.permissions" to "Autorisations",
        "navigation.personalSettings" to "Paramètres personnels",
        "navigation.predefinedActivities" to "Activités prédéfinies",
        "navigation.register" to "S'inscrire",
        "navigation.schedule" to "Calendriers",
        "navigation.settings" to "Paramètres",
        "navigation.statistics" to "Statistiques d'entraînement",
        "navigation.teamManagement" to "Gestion d'équipe",
        "navigation.tournamentParticipations" to "Participations aux tournois",
        "navigation.tournaments" to "Tournois",
        "nuscoreAnalyzer.analysisComplete" to "✅ Analyse terminée : {count} ressources trouvées",
        "nuscoreAnalyzer.analyze" to "🔍 analyse nuscore",
        "nuscoreAnalyzer.analyzing" to "Analyser...",
        "nuscoreAnalyzer.createLocalCopy" to "Créer 🏗️ copie locale",
        "nuscoreAnalyzer.creating" to "🏗️ Création...",
        "nuscoreAnalyzer.description" to "Analyse et télécharge les ressources nuscore pour une utilisation locale",
        "nuscoreAnalyzer.downloading" to "⬇️ Téléchargement...",
        "nuscoreAnalyzer.downloadResources" to "Télécharger les ressources",
        "nuscoreAnalyzer.foundResources" to "📋 Ressources trouvées :",
        "nuscoreAnalyzer.log" to "Enregistrer",
        "nuscoreAnalyzer.pageLoaded" to "✅ page nuscore chargée",
        "nuscoreAnalyzer.startAnalysis" to "🔍 Démarrage de l'analyse nuscore...",
        "nuscoreAnalyzer.title" to "🔍 nuscore Analyzer",
        "officialTournaments.action" to "Action",
        "officialTournaments.age" to "Âge",
        "officialTournaments.ageClassCompetition" to "Groupe d'âge/compétition",
        "officialTournaments.ageClasses" to "Classes d'âge",
        "officialTournaments.all" to "Tous",
        "officialTournaments.birthDate" to "Date de naissance",
        "officialTournaments.checkBoxToActivate" to "Activer la case à cocher",
        "officialTournaments.competition" to "Concurrent",
        "officialTournaments.competitions" to "Compétitions",
        "officialTournaments.competitionTypes" to "Types de compétition :",
        "officialTournaments.cutoffDate" to "Date d'entrée en vigueur :",
        "officialTournaments.date" to "Date",
        "officialTournaments.dateTime" to "Date:",
        "officialTournaments.deadlineDate" to "Date limite d'inscription (date) :",
        "officialTournaments.deadlineOnline" to "Date limite d'inscription (en ligne) :",
        "officialTournaments.deadlines" to "Dates limites d'inscription :",
        "officialTournaments.deadlinesByAgeClass" to "Dates limites d'inscription pour chaque AK :",
        "officialTournaments.delete" to "Supprimer",
        "officialTournaments.editTitle" to "Modifier le titre",
        "officialTournaments.eligible" to "Admissible à participer",
        "officialTournaments.entryFee" to "argent de départ",
        "officialTournaments.entryFees" to "Jetons de présence :",
        "officialTournaments.events" to "Événements",
        "officialTournaments.finalRound" to "Compétition finale",
        "officialTournaments.hasPlayed" to "{0} a joué son tour.",
        "officialTournaments.last12Months" to "12 derniers mois",
        "officialTournaments.last2Years" to "2 dernières années",
        "officialTournaments.last3Months" to "3 derniers mois",
        "officialTournaments.last6Months" to "6 derniers mois",
        "officialTournaments.markAsParticipated" to "Marquer comme étant présent",
        "officialTournaments.markAsRegistered" to "Marquer comme connecté",
        "officialTournaments.member" to "Membre",
        "officialTournaments.name" to "nom",
        "officialTournaments.noEvents" to "Aucun événement disponible pour l'instant. Téléchargez un PDF pour commencer.",
        "officialTournaments.notInterested" to "Pas intéressé",
        "officialTournaments.openTo" to "Ouvert à",
        "officialTournaments.participants" to "Participants",
        "officialTournaments.participantsPdf" to "PDF des participants",
        "officialTournaments.participated" to "Participé",
        "officialTournaments.participations" to "Participation aux tournois",
        "officialTournaments.pdfForSelectedMembers" to "PDF pour les membres signalés",
        "officialTournaments.placement" to "Placement",
        "officialTournaments.preliminaryRound" to "1ère étape :",
        "officialTournaments.previousSeason" to "Saison précédente",
        "officialTournaments.registered" to "Connecté",
        "officialTournaments.resetStatus" to "Réinitialiser l'état",
        "officialTournaments.results" to "Résultats",
        "officialTournaments.savedEvents" to "Événements enregistrés",
        "officialTournaments.selectMembers" to "Sélectionnez les membres",
        "officialTournaments.showCompetitions" to "Voir les compétitions",
        "officialTournaments.showEvents" to "Afficher les événements enregistrés",
        "officialTournaments.showParticipants" to "Afficher les participants",
        "officialTournaments.showParticipations" to "Voir les partages du tournoi",
        "officialTournaments.showResults" to "Afficher les résultats",
        "officialTournaments.startTime" to "heure de début",
        "officialTournaments.startTimes" to "Horaires de départ :",
        "officialTournaments.status" to "statut",
        "officialTournaments.timeRange" to "Période:",
        "officialTournaments.title" to "Titre:",
        "officialTournaments.tournament" to "Tournoi",
        "officialTournaments.updatePlacementError" to "Erreur lors de la mise à jour de l'emplacement",
        "officialTournaments.updateStatusError" to "Échec de la mise à jour de l'état",
        "officialTournaments.updateTitleError" to "Cela n'a pas pu être enregistré.",
        "officialTournaments.uploadError" to "Erreur lors du téléchargement du PDF.",
        "officialTournaments.uploadPdf" to "Télécharger le PDF",
        "officialTournaments.venues" to "Lieux",
        "officialTournaments.wantsToParticipate" to "Voulez-vous rejoindre",
        "orders.addOrder" to "Créer une commande",
        "orders.budget" to "budget/le budget/budgets/budgétiser/budgéter /préparer un budget/ budgétaires",
        "orders.club" to "Club",
        "orders.cost" to "Coût",
        "orders.dateAutoHint" to "La date est définie automatiquement et chaque modification est enregistrée avec une date.",
        "orders.errorLoading" to "Impossible de charger les commandes.",
        "orders.errorSaving" to "Impossible d'enregistrer la commande.",
        "orders.filterAllClubs" to "Tous les clubs",
        "orders.filterAllCompletionStates" to "Tous les diplômes",
        "orders.filterAllStatuses" to "Tous les statuts",
        "orders.filterHandedOver" to "Article distribué",
        "orders.filterPaid" to "Payant",
        "orders.globalSubtitle" to "Toutes les commandes de tous les clubs peuvent être consultées et gérées ici.",
        "orders.globalTitle" to "Commandes de tous les clubs",
        "orders.history" to "Historique",
        "orders.item" to "Article",
        "orders.itemPlaceholder" to "p. ex. maillot, hoodie ou housse de raquette",
        "orders.loading" to "Chargement des commandes...",
        "orders.member" to "Membre",
        "orders.memberTitle" to "Commandes : {name}",
        "orders.noOrdersGlobal" to "Il n'y a actuellement aucune commande.",
        "orders.noOrdersMember" to "Aucune commande n'existe encore pour ce membre.",
        "orders.open" to "Reste à payer",
        "orders.orderDate" to "Créé le",
        "orders.paid" to "Payé",
        "orders.paidConfirmed" to "Payant",
        "orders.searchPlaceholder" to "Rechercher un club, un membre ou un article",
        "orders.showCompleted" to "Afficher terminés",
        "orders.status" to "Statut",
        "orders.statusArrived" to "article arrivé",
        "orders.statusDate" to "Dernière modification",
        "orders.statusHandedOver" to "article remis",
        "orders.statusOrdered" to "commandé",
        "orders.statusRequested" to "souhaité",
        "orders.title" to "Commandes",
        "pdfGenerator.activityTimeBlock" to "Activité / Bloc horaire",
        "pdfGenerator.allGames" to "Toutes les villes",
        "pdfGenerator.alsoPlayable" to "Jouable aussi",
        "pdfGenerator.birthDate" to "Date de naissance",
        "pdfGenerator.clubLabel" to "Club :",
        "pdfGenerator.competition" to "Événement",
        "pdfGenerator.competitionName" to "Concurrent",
        "pdfGenerator.date" to "Date:",
        "pdfGenerator.diff" to "Diff",
        "pdfGenerator.duration" to "Minutes avant le verrouillage",
        "pdfGenerator.fee" to "Frais",
        "pdfGenerator.generatedAt" to "Créé le :",
        "pdfGenerator.group" to "Groupe",
        "pdfGenerator.groupLabel" to "Groupe",
        "pdfGenerator.groupMatrices" to "Matrices de groupe",
        "pdfGenerator.hallShoes" to "Chaussures d'intérieur (ne doivent pas déteindre sur le sol)",
        "pdfGenerator.hints" to "Remarques :",
        "pdfGenerator.informTrainer" to "Puisque le club souhaite prendre en charge l'inscription, informez les entraîneurs au moins une semaine avant le tournoi de la participation.",
        "pdfGenerator.leagueLabel" to "Ligue :",
        "pdfGenerator.lineupQttr" to "(Q)TTR",
        "pdfGenerator.member" to "Membres :",
        "pdfGenerator.nameFirstName" to "Nom, prénom",
        "pdfGenerator.noActivities" to "Aucune activité enregistrée pour cette journée de formation.",
        "pdfGenerator.noWhiteJersey" to "Pas de maillot blanc",
        "pdfGenerator.officialTournament" to "Tournoi officiel",
        "pdfGenerator.oneHourBefore" to "Soyez dans la salle une heure avant le début de la compétition",
        "pdfGenerator.overallRanking" to "Classement général (tours éliminatoires)",
        "pdfGenerator.periodLabel" to "Inscription pour :",
        "pdfGenerator.phoneList" to "Liste téléphonique - Membres actifs",
        "pdfGenerator.phoneNumber" to "N° de téléphone",
        "pdfGenerator.place" to "La place",
        "pdfGenerator.placement" to "Placement",
        "pdfGenerator.plannedLeagueLabel" to "Ligue prévue :",
        "pdfGenerator.player" to "Patineurs",
        "pdfGenerator.player1" to "Joueur 1",
        "pdfGenerator.player2" to "4 1/2 minutes",
        "pdfGenerator.points" to "Points",
        "pdfGenerator.recommendations" to "Recommandations",
        "pdfGenerator.result" to "Résultat",
        "pdfGenerator.round" to "Rond",
        "pdfGenerator.seasonLabel" to "Saison :",
        "pdfGenerator.sets" to "phrases",
        "pdfGenerator.sportShorts" to "Des shorts de sport (ou des jupes de sport), de préférence pas blancs non plus",
        "pdfGenerator.startTime" to "heure de début",
        "pdfGenerator.status" to "statut",
        "pdfGenerator.teamAgeGroupLabel" to "Catégorie d’âge d’équipe :",
        "pdfGenerator.teamGenderLabel" to "Genre d’équipe :",
        "pdfGenerator.teamLineupTitle" to "Composition de l’équipe",
        "pdfGenerator.teamNameLabel" to "Équipe :",
        "pdfGenerator.time" to "Temps:",
        "pdfGenerator.timeBlock" to "Bloc horaire",
        "pdfGenerator.tournament" to "Tournoi",
        "pdfGenerator.trainersPresent" to "Les entraîneurs essaient d'être présents à tous les tournois.",
        "pdfGenerator.trainingPlan" to "Plan de formation",
        "pdfGenerator.venue" to "Emplacement",
        "pdfGenerator.venues" to "Lieux",
        "pdfGenerator.waterBottle" to "Ayez une bouteille d'eau avec vous",
        "pendingApprovals.actions" to "Actes",
        "pendingApprovals.approve" to "Approuver",
        "pendingApprovals.email" to "Email",
        "pendingApprovals.errorApproving" to "Erreur lors de l'approbation de l'utilisateur",
        "pendingApprovals.errorLoadingRequests" to "échec du chargement des fichiers en attente pour %<%E%s%E%>",
        "pendingApprovals.errorRejecting" to "Erreur lors du rejet de l'utilisateur",
        "pendingApprovals.firstName" to "Prénom",
        "pendingApprovals.lastName" to "Nom de famille",
        "pendingApprovals.noPendingRequests" to "Aucune demande d'utilisateur en attente.",
        "pendingApprovals.noPermission" to "Aucune autorisation",
        "pendingApprovals.noPermissionDetails" to "Seuls les administrateurs peuvent modifier les demandes de membres.",
        "pendingApprovals.noPermissionMessage" to "Vous n'êtes pas autorisé à gérer les partages.",
        "pendingApprovals.reject" to "Rejeter",
        "pendingApprovals.title" to "Demandes d'utilisateurs en attente",
        "permissions.actions" to "Actes",
        "permissions.active" to "Actif",
        "permissions.availableRoles" to "Rôles disponibles",
        "permissions.baseRole" to "Rôle de base",
        "permissions.cancel" to "Annuler",
        "permissions.clickToActivate" to "Cliquez pour activer.",
        "permissions.clickToDeactivate" to "Cliquez pour désactiver",
        "permissions.clubMembers" to "Membres du club",
        "permissions.creator" to "Créateur",
        "permissions.customize" to "Personnaliser",
        "permissions.customizeInfo" to "Ici, vous pouvez effectuer des ajustements individuels.",
        "permissions.email" to "Email",
        "permissions.errorLoadingData" to "Erreur de chargement des données",
        "permissions.errorSavingPermissions" to "Erreur lors de l'enregistrement des autorisations",
        "permissions.errorUpdatingRole" to "Échec de la mise à jour du rôle",
        "permissions.inactive" to "Décoché",
        "permissions.loadingMembers" to "Inviter les membres...",
        "permissions.permissionsFor" to "Autorisations pour",
        "permissions.reset" to "Revenir",
        "permissions.resetAll" to "Tout réinitialiser",
        "permissions.role" to "Rôle",
        "permissions.save" to "Sauvegarder",
        "permissions.status" to "statut",
        "permissions.subtitle" to "Gérer les droits d'accès des membres du club",
        "permissions.title" to "Gestion des identifiants",
        "predefinedActivities.addImage" to "Ajouter une image",
        "predefinedActivities.cancel" to "Annuler",
        "predefinedActivities.code" to "Abréviation",
        "predefinedActivities.createDrawing" to "Créer un dessin d'exercice",
        "predefinedActivities.deduplicate" to "Fusionner les doublons",
        "predefinedActivities.delete" to "Supprimer",
        "predefinedActivities.description" to "Désignation",
        "predefinedActivities.duration" to "Durée minutes",
        "predefinedActivities.durationText" to "Durée (Texte)",
        "predefinedActivities.durationTextPlaceholder" to "par ex. 2x7",
        "predefinedActivities.editActivity" to "Modifier l'activité",
        "predefinedActivities.editDrawing" to "Modifier le dessin d'exercice",
        "predefinedActivities.excludeFromStats" to "Exclure des statistiques",
        "predefinedActivities.filterAll" to "Tous",
        "predefinedActivities.filterCustom" to "Coutume",
        "predefinedActivities.filterStandard" to "Activités standards",
        "predefinedActivities.imageHelp" to "Vous pouvez soit saisir un lien vers une image, soit télécharger une image :",
        "predefinedActivities.imageLink" to "Lien image (facultatif)",
        "predefinedActivities.imageLinkPlaceholder" to "par ex. https://example.com/bild.jpg ou /api/predefined-activities/:id/image/:imageId",
        "predefinedActivities.merge" to "Fusionner",
        "predefinedActivities.min" to "min",
        "predefinedActivities.name" to "nom",
        "predefinedActivities.new" to "Nouveau",
        "predefinedActivities.newActivity" to "Nouvelle activité",
        "predefinedActivities.orUploadImage" to "Ou téléchargez l'image :",
        "predefinedActivities.reload" to "Recharger",
        "predefinedActivities.searchPlaceholder" to "Rechercher des abréviations (par exemple « comme vh us » ou « vh as us »)...",
        "predefinedActivities.selectSource" to "Choisissez la provenance",
        "predefinedActivities.selectTarget" to "Sélectionnez une destination",
        "predefinedActivities.title" to "Activités prédéfinies",
        "predefinedActivities.upload" to "Télécharger",
        "predefinedActivities.uploadAfterSave" to "Télécharger après avoir enregistré",
        "predefinedActivities.uploadedImages" to "Vidéo(s) téléchargée(s) :",
        "predefinedActivities.uploadNote" to "Remarque : L'image ne sera pas téléchargée tant que l'activité n'est pas enregistrée.",
        "privacy.clubData" to "Données de club/activité",
        "privacy.consent" to "Opérations basées sur le consentement",
        "privacy.cookies" to "Cookies/Stockage local",
        "privacy.dataCategories" to "Catégories de données personnelles",
        "privacy.logData" to "Fichiers journaux",
        "privacy.memberData" to "Détails du membre",
        "privacy.myTischtennisData" to "Données MyTischtennis",
        "privacy.purposes" to "Finalités et bases juridiques du traitement",
        "privacy.recipients" to "Destinataire",
        "privacy.registrationData" to "Données d'inscription/profil",
        "privacy.responsible" to "Contrôleur de données",
        "privacy.title" to "Politique de confidentialité",
        "privacy.tournamentData" to "Données du tournoi",
        "privacy.trainingData" to "Données de formation",
        "privacy.usage" to "Utilisation du journal de formation",
        "privacy.usageData" to "Données d'utilisation",
        "privacy.website" to "Préparation du site internet",
        "quickAddMember.birthDate" to "Date de naissance (facultatif)",
        "quickAddMember.cancel" to "Annuler",
        "quickAddMember.createAndAdd" to "Créer et ajouter un nouveau",
        "quickAddMember.firstName" to "Prénom",
        "quickAddMember.gender" to "Sexe",
        "quickAddMember.lastName" to "Nom (facultatif)",
        "quickAddMember.pleaseSelect" to "Veuillez sélectionner",
        "quickAddMember.title" to "Ajouter un nouveau membre",
        "schedule.activeSelection" to "Sélection active",
        "schedule.addressLabel" to "Adresse",
        "schedule.adultSchedule" to "Horaire adulte",
        "schedule.ageClass" to "Tranche d'âge",
        "schedule.allLeagueMatches" to "Tous les matchs",
        "schedule.balls" to "Balles",
        "schedule.cancel" to "Annuler",
        "schedule.cityLabel" to "Code postal/ville",
        "schedule.code" to "Code",
        "schedule.completedShort" to "Complété",
        "schedule.copyCode" to "Copier le code",
        "schedule.copyGuestPin" to "Copier le code PIN",
        "schedule.copyHomePin" to "Copier le code PIN personnel",
        "schedule.date" to "Date",
        "schedule.downloadPDF" to "Télécharger le PDF",
        "schedule.errorCopying" to "Erreur lors de la copie",
        "schedule.errorImportingCSV" to "Échec de l'importation du fichier CSV",
        "schedule.errorLoadingAdultSchedule" to "Échec du chargement du planning adulte",
        "schedule.errorLoadingGallery" to "La galerie n'a pas pu être chargée.",
        "schedule.errorLoadingMatches" to "Échec du chargement des correspondances",
        "schedule.errorLoadingMembers" to "Échec du chargement de la liste des membres.",
        "schedule.errorLoadingOverallSchedule" to "Échec du chargement du planning global",
        "schedule.errorLoadingTable" to "Échec du chargement des données du classement depuis myTischtennis",
        "schedule.errorLoadingTeams" to "Échec du chargement des équipes",
        "schedule.errorSavingPlayerSelection" to "Échec de l'enregistrement de la sélection du joueur",
        "schedule.fetchDataFailed" to "Les données de l'équipe n'ont pas pu être récupérées.",
        "schedule.fetchingTeamData" to "Récupération…",
        "schedule.fetchStartFailed" to "La récupération n'a pas pu démarrer.",
        "schedule.fetchTeamData" to "Récupérer le calendrier et les résultats",
        "schedule.fetchTimedOut" to "Délai expiré lors de la récupération des données.",
        "schedule.gallery" to "Galerie des membres",
        "schedule.galleryLoading" to "Chargement de la galerie…",
        "schedule.galleryTitle" to "Galerie des membres – cliquez sur une image pour la marquer comme prête",
        "schedule.gamesFor" to "Matchs pour",
        "schedule.guestPin" to "Code PIN absent",
        "schedule.guestTeam" to "Équipe à l'extérieur",
        "schedule.homePin" to "Code PIN Accueil",
        "schedule.homeTeam" to "Équipe à domicile",
        "schedule.imageSize" to "Taille de l'image",
        "schedule.importSchedule" to "Calendrier d'importation",
        "schedule.leagueTable" to "Tableau de la ligue",
        "schedule.loadingMembers" to "Chargement des membres...",
        "schedule.locationDialogTitle" to "Salle de jeux",
        "schedule.locationInfo" to "Emplacement",
        "schedule.locationName" to "Salle de jeux",
        "schedule.matches" to "matchs",
        "schedule.matchLabel" to "Jeu",
        "schedule.matchOverviewDescription" to "Contrôle quels matchs de la ligue actuellement sélectionnée sont affichés dans le calendrier.",
        "schedule.matchOverviewTitle" to "Aperçu du match",
        "schedule.nextMatch" to "Prochain match",
        "schedule.noActiveMembers" to "Aucun membre actif trouvé",
        "schedule.noGames" to "Aucun match disponible",
        "schedule.noLeagueForTeam" to "Aucune ligue n'est attribuée à cette équipe. Veuillez d'abord attribuer une ligue.",
        "schedule.noMatchesForPDF" to "Aucune correspondance trouvée pour générer un PDF.",
        "schedule.noMatchingTeams" to "Aucune équipe ne correspond à la recherche actuelle.",
        "schedule.noMembersWithImages" to "Aucun membre avec des images trouvé.",
        "schedule.noSelectionMessage" to "Choisissez l'horaire global, l'horaire adulte ou une équipe à gauche.",
        "schedule.noSelectionTitle" to "Aucune sélection active pour le moment",
        "schedule.noTableData" to "Aucune donnée de tableau disponible",
        "schedule.noTeamsFound" to "Aucune équipe trouvée pour cette saison",
        "schedule.openMatchReport" to "Rapport de match ouvert",
        "schedule.otherTeamMatches" to "Autre équipe",
        "schedule.overallSchedule" to "Calendrier global",
        "schedule.ownTeamMatches" to "Propre équipe",
        "schedule.pendingShort" to "Ouvrir",
        "schedule.planned" to "Prévu",
        "schedule.played" to "Joué",
        "schedule.player" to "Joueur",
        "schedule.playerSelection" to "Sélection des joueurs",
        "schedule.playerSelectionSaved" to "Sélection de joueur enregistrée",
        "schedule.pleaseSelectGame" to "Veuillez d'abord sélectionner une correspondance",
        "schedule.points" to "Points",
        "schedule.position" to "Position",
        "schedule.ready" to "Prêt",
        "schedule.refreshTable" to "Actualiser le tableau",
        "schedule.result" to "Résultat",
        "schedule.save" to "Sauvegarder",
        "schedule.scheduleImportSuccess" to "Planification importée avec succès.",
        "schedule.schedulePDF" to "Horaires.pdf",
        "schedule.scheduleTab" to "Calendrier",
        "schedule.searchTeams" to "Rechercher une équipe ou une ligue",
        "schedule.selection" to "Sélection",
        "schedule.selectOtherTeam" to "Sélectionnez une autre équipe",
        "schedule.selectSpecificLeague" to "Veuillez sélectionner une ligue spécifique pour charger le tableau.",
        "schedule.sets" to "Ensembles",
        "schedule.showLocation" to "Voir le lieu du match",
        "schedule.subtitle" to "Sélectionnez les équipes, examinez les calendriers et gardez les classements en vue.",
        "schedule.tableDataLoaded" to "Les données du classement ont été chargées avec succès depuis myTischtennis.",
        "schedule.tableLoading" to "Chargement du tableau…",
        "schedule.tableTab" to "Tableau",
        "schedule.team" to "Team",
        "schedule.teamDataFetched" to "Les données de l'équipe ont été mises à jour avec succès.",
        "schedule.teamDataFetchedDetails" to "Équipe : {team}\nEnregistrements traités : {count}",
        "schedule.teams" to "Teams",
        "schedule.time" to "Temps",
        "schedule.title" to "Horaires",
        "schedule.vs" to "vs",
        "schedule.workspaceScheduleDescription" to "{matches} correspond, {completed} terminé et {pending} ouvert.",
        "schedule.workspaceTableDescription" to "{count} lignes du tableau actuellement chargées.",
        "seasonSelector.addSeason" to "Ajouter une nouvelle saison",
        "seasonSelector.alreadyExists" to "Cette saison existe déjà !",
        "seasonSelector.cancel" to "Annuler",
        "seasonSelector.create" to "Créer",
        "seasonSelector.errorCreating" to "Erreur lors de la création de la saison",
        "seasonSelector.errorLoading" to "Erreur de chargement des saisons",
        "seasonSelector.hint" to "Avis",
        "seasonSelector.label" to "Saison:",
        "seasonSelector.loading" to "Chargement...",
        "seasonSelector.newSeason" to "Créer une nouvelle saison",
        "seasonSelector.placeholder" to "par ex. 2023/2024",
        "seasonSelector.selectSeason" to "Sélectionnez la ou les saisons",
        "settings.language" to "Langue",
        "settings.languageChanged" to "Langue modifiée avec succès",
        "settings.languageDescription" to "Choisissez votre langue préférée pour l'application",
        "settings.personalSettings" to "Paramètres personnels",
        "settings.selectLanguage" to "Sélectionner la langue",
        "settings.title" to "Paramètres",
        "tagHistory.noHistory" to "Aucun historique des balises disponible",
        "tagHistory.selectTags" to "Sélectionnez les balises",
        "tagHistory.title" to "Étiquette : TypePad",
        "teamManagement.activeTeam" to "Équipe active",
        "teamManagement.addPlanningTeam" to "Ajouter une équipe de planification",
        "teamManagement.allMembersAssigned" to "Tous les membres sont actuellement affectés.",
        "teamManagement.assignLeagueBeforeDocuments" to "Veuillez d'abord attribuer une ligue à l'équipe afin que les documents puissent être traités.",
        "teamManagement.assignLeagueBeforeParsing" to "Veuillez d'abord attribuer une ligue à l'équipe pour analyser les fichiers PDF.",
        "teamManagement.assignMemberToTeam" to "Ajouter à l'équipe",
        "teamManagement.association" to "Association",
        "teamManagement.asyncJobStartFailed" to "La tâche asynchrone n'a pas pu être démarrée.",
        "teamManagement.autoFetchEnabled" to "La récupération automatique des données est activée",
        "teamManagement.automaticJobs" to "Travaux automatiques",
        "teamManagement.autoSaved" to "Enregistré automatiquement",
        "teamManagement.autoSaveError" to "Échec de la sauvegarde automatique",
        "teamManagement.availableLineupMembers" to "Joueurs disponibles",
        "teamManagement.basicSettings" to "Paramètres de base",
        "teamManagement.basicSettingsIntro" to "Révisez et ajustez le nom de l’équipe et la ligue sous une forme plus calme.",
        "teamManagement.change" to "Changement",
        "teamManagement.clearFields" to "Effacer les champs",
        "teamManagement.codeList" to "Liste de codes",
        "teamManagement.configurationStatus" to "État de la configuration",
        "teamManagement.configureLeagueDetails" to "Association : {association}\nSaison : {season}\nLigue : {league}\nID de groupe : {groupId}\n\nVoulez-vous configurer cette ligue dans la base de données ? Cela permet la récupération automatique des données du tableau.",
        "teamManagement.configureLeagueTitle" to "Configurer la ligue ?",
        "teamManagement.createAndEdit" to "Créer et modifier",
        "teamManagement.created" to "Créé",
        "teamManagement.createNewTeam" to "Créer une nouvelle équipe",
        "teamManagement.dataFetchFailed" to "Les données n'ont pas pu être récupérées.",
        "teamManagement.delete" to "Supprimer",
        "teamManagement.deleteTeamConfirm" to "Voulez-vous vraiment supprimer l'équipe du club \"{name}\" ?",
        "teamManagement.deleteTeamTitle" to "Supprimer l'équipe du club",
        "teamManagement.documentAvailable" to "Disponible",
        "teamManagement.documentMissing" to "Manquant",
        "teamManagement.documentNotFound" to "Le document sélectionné est introuvable.",
        "teamManagement.documentParsedSummary" to "{label} a été téléchargé et analysé avec succès.\n\nCorrespondances trouvées : {matchesFound}\nNouvelles correspondances créées : {created}\nMatchs mis à jour : {updated}",
        "teamManagement.documents" to "Documents",
        "teamManagement.documentsIntro" to "Téléchargez, examinez et réanalysez les listes de codes et les listes de codes PIN si nécessaire.",
        "teamManagement.documentUploaded" to "{label} \"{fileName}\" a été téléchargé avec succès.",
        "teamManagement.edit" to "Modifier",
        "teamManagement.editTeam" to "Modifier l'équipe",
        "teamManagement.eligibility" to "Éligibilité",
        "teamManagement.eligibilityAdultRelease" to "Autorisé chez les adultes",
        "teamManagement.eligibilityAdultReleaseAndReserve" to "Autorisé + remplaçant chez les adultes",
        "teamManagement.eligibilityAdultReserve" to "Remplaçant chez les adultes",
        "teamManagement.eligibilityRegular" to "Régulier",
        "teamManagement.enterUrlForAutoConfig" to "Entrez une URL myTischtennis pour la configuration automatique",
        "teamManagement.error" to "Erreur",
        "teamManagement.errorConfiguringLeague" to "La ligue n'a pas pu être configurée.",
        "teamManagement.errorConfiguringTeam" to "L'équipe n'a pas pu être configurée.",
        "teamManagement.errorDeletingTeam" to "Échec de la suppression de l'équipe du club.",
        "teamManagement.errorLoadingPdf" to "Échec du chargement du PDF.",
        "teamManagement.errorLoadingStats" to "Les statistiques n'ont pas pu être chargées.",
        "teamManagement.errorParsingPdf" to "Échec de l'analyse du fichier PDF",
        "teamManagement.errorParsingUrl" to "L'URL n'a pas pu être analysée. Veuillez vérifier le format.",
        "teamManagement.errorsCount" to "Erreurs : {count}",
        "teamManagement.errorUploadingDocument" to "Échec du téléchargement et de l'analyse du fichier.",
        "teamManagement.exportLineupPdf" to "Exporter la composition en PDF",
        "teamManagement.fetched" to "récupéré",
        "teamManagement.fetchTimedOut" to "Délai expiré lors de la récupération des données (le travail asynchrone a pris trop de temps).",
        "teamManagement.fetchTimeoutShort" to "Délai expiré lors de la récupération des données.",
        "teamManagement.fileTooLarge" to "{label} ne doit pas dépasser 10 Mo.",
        "teamManagement.fileTooLargeTitle" to "Fichier trop grand ",
        "teamManagement.filterAll" to "Tous",
        "teamManagement.filterConfigured" to "Configuré",
        "teamManagement.filterNeedsAttention" to "Besoin d'un examen",
        "teamManagement.filterNoLeague" to "Sans ligue",
        "teamManagement.firstHalf" to "Phase aller",
        "teamManagement.firstHalfFull" to "Phase aller (juillet - décembre)",
        "teamManagement.fullyConfigured" to "Entièrement configuré",
        "teamManagement.groupId" to "Identifiant du groupe",
        "teamManagement.groupName" to "Nom du groupe",
        "teamManagement.invalidFileExtension" to "{label} doit avoir l'une des extensions suivantes : {extensions}.",
        "teamManagement.invalidFileTypeTitle" to "Type de fichier invalide",
        "teamManagement.invalidMimeType" to "{label} a un type MIME inattendu : {type}.",
        "teamManagement.lastRun" to "Dernière course",
        "teamManagement.lastUpdated" to "Dernière mise à jour",
        "teamManagement.latestUpload" to "Dernier téléchargement : {date}",
        "teamManagement.league" to "Ligue",
        "teamManagement.leagueConfiguredDetails" to "Ligue : {league}\nSaison : {season}\nAssociation : {association}\nID de groupe : {groupId}\n\nLes données du tableau peuvent désormais être récupérées automatiquement.",
        "teamManagement.leagueConfiguredSuccess" to "Ligue configurée avec succès. Les données du tableau peuvent désormais être récupérées automatiquement.",
        "teamManagement.leagueFieldRequired" to "Veuillez sélectionner une classe de ligue et enregistrer.",
        "teamManagement.lineupEmpty" to "Aucun joueur n’a encore été inscrit pour cette équipe.",
        "teamManagement.lineupPdfEmpty" to "Aucun joueur dans la composition – impossible de créer le PDF.",
        "teamManagement.lineupPdfFilePrefix" to "Composition",
        "teamManagement.lineupProposal" to "Composition selon le QTTR",
        "teamManagement.lineupSaved" to "Composition de l'équipe enregistrée.",
        "teamManagement.lineupSaveError" to "La composition de l’équipe n’a pas pu être enregistrée.",
        "teamManagement.lineupUnsavedChanges" to "Il y a des changements non enregistrés dans la composition de l'équipe.",
        "teamManagement.lineupValidationTooLargeGap" to "{higher} a plus de 30 points QTTR d’avance sur {lower}. Veuillez corriger cet ordre.",
        "teamManagement.loadingStats" to "Chargement des statistiques...",
        "teamManagement.manualFetch" to "Aller chercher",
        "teamManagement.markAsInterested" to "Marquer comme intéressé",
        "teamManagement.matchesSummary" to "Correspondances trouvées : {matchesFound}\nNouvelles correspondances créées : {created}\nMatchs mis à jour : {updated}",
        "teamManagement.matchResults" to "Résultats des matchs",
        "teamManagement.missingConfigSummary" to "Informations manquantes :",
        "teamManagement.missingItems" to "Manquant : {items}",
        "teamManagement.missingLeagueForTeam" to "Aucune ligue n'a été prévue pour l'équipe sélectionnée.",
        "teamManagement.moreErrors" to "... et {count} plus",
        "teamManagement.myTischtennis" to "monTischtennis",
        "teamManagement.myTischtennisIntro" to "Collez une URL, vérifiez la configuration et récupérez les données manuellement si nécessaire.",
        "teamManagement.mytischtennisLoginRequired" to "Connexion à myTischtennis requise",
        "teamManagement.myTischtennisUrlPlaceholder" to "URL de myTischtennis...",
        "teamManagement.myTischtennisUrlRequired" to "Collez et analysez l’URL MyTischtennis pour lier l’ID d’équipe et les données de ligue.",
        "teamManagement.never" to "Jamais",
        "teamManagement.newTeam" to "Nouvelle équipe",
        "teamManagement.noAssignment" to "Aucune mission",
        "teamManagement.noAutomaticUpdate" to "Pas encore de mise à jour automatique",
        "teamManagement.noDocumentUploadYet" to "Aucun document téléchargé pour l'instant.",
        "teamManagement.noIssues" to "Aucun problème de configuration ouvert.",
        "teamManagement.noLeague" to "Pas de ligue",
        "teamManagement.noMatchesFoundDetails" to "Remarque : aucune correspondance détectée.\nLignes du document : {lines}",
        "teamManagement.noMatchesFoundTitle" to "Aucune correspondance trouvée",
        "teamManagement.noMatchingTeams" to "Aucune équipe ne correspond à la recherche ou au filtre actuel.",
        "teamManagement.noMembersInPool" to "Aucun membre correspondant trouvé.",
        "teamManagement.noPlannedLeague" to "Pas de ligue programmée",
        "teamManagement.noPlayerStats" to "Aucune apparition enregistrée.",
        "teamManagement.notConfigured" to "Non configuré",
        "teamManagement.notCreated" to "Non créé",
        "teamManagement.noTeamsYet" to "Aucune équipe pour l'instant. Créez votre première équipe.",
        "teamManagement.openDocument" to "Ouvrir",
        "teamManagement.openInWorkspace" to "Ouvrir pour modifier",
        "teamManagement.parseDocument" to "Analyser à nouveau",
        "teamManagement.parseUrlAction" to "Vérifier l'URL",
        "teamManagement.partiallyConfigured" to "Partiellement configuré",
        "teamManagement.pdfFileNotFound" to "Le fichier PDF est introuvable.",
        "teamManagement.pinList" to "Liste des codes PIN",
        "teamManagement.plannedLeague" to "Ligue prévue",
        "teamManagement.plannedLeagueHint" to "Facultatif. Indépendant de la ligue enregistrée (MyTischtennis).",
        "teamManagement.plannedLeaguePlaceholder" to "ex. ligue de district, après la prochaine inscription …",
        "teamManagement.planningSubtitle" to "Répartissez les membres dans les équipes planifiées, définissez l'ordre et consultez les affectations ouvertes.",
        "teamManagement.planningTitle" to "Planification d'équipe",
        "teamManagement.player" to "Joueur",
        "teamManagement.playersPoolSubtitle" to "Tous les membres actifs intéressés par le jeu",
        "teamManagement.playerStats" to "Apparitions",
        "teamManagement.playerStatsIntro" to "Aperçu rapide des apparitions de cette équipe dans la saison en cours.",
        "teamManagement.playersWantToPlay" to "Nous voulons jouer.",
        "teamManagement.qttr" to "Cote (Q)TTR",
        "teamManagement.ratingUpdates" to "Mises à jour des notes",
        "teamManagement.refreshStats" to "Rafraîchir",
        "teamManagement.reuploadFile" to "Veuillez télécharger à nouveau le fichier et réessayer.",
        "teamManagement.searchMembers" to "Rechercher un membre",
        "teamManagement.searchTeams" to "Équipe de recherche",
        "teamManagement.season" to "Saison",
        "teamManagement.seasonFull" to "Pleine saison (à partir du 1er juillet)",
        "teamManagement.seasonUnknown" to "inconnu",
        "teamManagement.secondHalf" to "Phase retour",
        "teamManagement.secondHalfFull" to "Phase retour (à partir du 1er janvier)",
        "teamManagement.selectedLineup" to "Joueurs inscrits",
        "teamManagement.selectMember" to "Sélectionner un membre",
        "teamManagement.selectTeam" to "Sélectionnez une équipe",
        "teamManagement.selectTeamFirst" to "Veuillez d'abord sélectionner une équipe",
        "teamManagement.selectTeamForConfiguration" to "Pour activer la configuration myTischtennis, vous devez d'abord sélectionner une équipe dans la liste.",
        "teamManagement.selectTeamTitle" to "Sélectionner une équipe",
        "teamManagement.showCodeList" to "Afficher la liste des codes",
        "teamManagement.showPinList" to "Afficher la liste des codes PIN",
        "teamManagement.sortFirstLast" to "Tri : Prénom Nom",
        "teamManagement.sortLastFirst" to "Tri : Nom Prénom",
        "teamManagement.status" to "statut",
        "teamManagement.subtitle" to "Sélectionnez les équipes, examinez la configuration et conservez les données de la ligue en un seul endroit.",
        "teamManagement.successful" to "Réussi",
        "teamManagement.tableUpdateLabel" to "Mise à jour du tableau :",
        "teamManagement.tableUrlDetected" to "URL du tableau détectée",
        "teamManagement.team" to "Team",
        "teamManagement.teamAgeGroup" to "Tranche d'âge",
        "teamManagement.teamConfiguredDetails" to "Ligue : {league}\nSaison : {season}\nLa récupération automatique des données est désormais active.",
        "teamManagement.teamConfiguredSuccess" to "Équipe configurée avec succès. La récupération automatique des données est désormais active.",
        "teamManagement.teamDataFetched" to "Les données de l'équipe ont été récupérées avec succès.",
        "teamManagement.teamDataFetchedDetails" to "Équipe : {team}\nEnregistrements récupérés : {count}",
        "teamManagement.teamGender" to "Genre",
        "teamManagement.teamGenderFemale" to "Femelle",
        "teamManagement.teamGenderOpen" to "Ouvrir",
        "teamManagement.teamHasNoLeague" to "Cette équipe n'est pas affectée à une ligue.",
        "teamManagement.teamId" to "ID d'équipe",
        "teamManagement.teamName" to "Nom de l'équipe",
        "teamManagement.teamNamePlaceholder" to "par ex. Hommes 1, Femmes 2",
        "teamManagement.teams" to "Teams",
        "teamManagement.title" to "Gestion d'équipe",
        "teamManagement.unassignedMembers" to "pas encore attribué",
        "teamManagement.unassignedMembersSubtitle" to "Membres sans affectation d'équipe",
        "teamManagement.unknown" to "Inconnu",
        "teamManagement.unknownTeam" to "Équipe inconnue",
        "teamManagement.updated" to "mis à jour",
        "teamManagement.uploadNewVersion" to "Télécharger la nouvelle version",
        "tournament.apply" to "Appliquer les modifications",
        "tournaments.action" to "Action",
        "tournaments.add" to "Ajouter",
        "tournaments.addClass" to "Ajouter une classe",
        "tournaments.addClubMember" to "Ajouter un membre du club",
        "tournaments.addExternalParticipant" to "Ajouter un participant externe",
        "tournaments.addPairing" to "Ajouter une association",
        "tournaments.addPoolRule" to "Ajouter une règle de groupes",
        "tournaments.address" to "Adresse",
        "tournaments.adjustTournamentSearch" to "Ajustez le terme de recherche ou créez un nouveau tournoi.",
        "tournaments.advancersPerGroup" to "Promoteurs par groupe",
        "tournaments.allClasses" to "Tous les cours",
        "tournaments.allDataComplete" to "Toutes les données des participants sont complètes.",
        "tournaments.allDataCompleteTop3" to "Toutes les données des 3 premiers sont complètes.",
        "tournaments.apply" to "Appliquer les modifications",
        "tournaments.assignmentReviewTitle" to "Les participants {count} doivent avoir le choix :",
        "tournaments.atLeastOnePoolRule" to "Veuillez ajouter au moins une règle de groupes pour {label} (p. ex. places 1,2).",
        "tournaments.autoAssignableParticipantsHint" to "{count} d’entre eux peuvent être attribués automatiquement.",
        "tournaments.autoAssignEligible" to "Attribuer automatiquement",
        "tournaments.autoAssignEligibleDone" to "Les participants {count} ont été attribués automatiquement.",
        "tournaments.autoAssignEligibleNone" to "Il n’y a actuellement aucun participant avec un seul devoir de classe automatique.",
        "tournaments.autoAssignEligiblePartial" to "Les participants {successCount} ont été attribués automatiquement, {errorCount} a échoué.",
        "tournaments.birthdate" to "Date de naissance",
        "tournaments.cancel" to "Annuler",
        "tournaments.class" to "Classe",
        "tournaments.classes" to "Cours",
        "tournaments.className" to "Nom de la classe",
        "tournaments.cleanupOrphanedMatches" to "Nettoyer les jeux orphelins",
        "tournaments.club" to "Association",
        "tournaments.clubMember" to "(membre du club)",
        "tournaments.conflictSuggestionLabel" to "Suggestions :",
        "tournaments.correctMatch" to "Corriger",
        "tournaments.create" to "Créer",
        "tournaments.createFinalFromIntermediate" to "Créer le tour final depuis le tour intermédiaire",
        "tournaments.createFinalFromPreliminary" to "Créer le tour final depuis le tour préliminaire",
        "tournaments.createGroupMatches" to "Créer des matchs de groupe",
        "tournaments.createGroups" to "Qui peut créer des groupes",
        "tournaments.createIntermediateFromPreliminary" to "Créer le tour intermédiaire depuis le tour préliminaire",
        "tournaments.createMatches" to "Définir des correspondances",
        "tournaments.createSuggestedPairings" to "Créer des appariements",
        "tournaments.currentClass" to "Classe active",
        "tournaments.dataNotRecorded" to "Pas encore enregistré",
        "tournaments.date" to "Date",
        "tournaments.delete" to "Supprimer",
        "tournaments.deleteClassConfirm" to "Voulez-vous vraiment supprimer la classe \"{name}\" ?",
        "tournaments.deleteClassParticipantsDetached" to "Tous les participants seront dissociés de cette classe.",
        "tournaments.deleteClassTitle" to "Supprimer la classe",
        "tournaments.deleteExistingPairingsConfirm" to "Les paires existantes seront supprimées. Continuer ?",
        "tournaments.deleteKORound" to "Assommer",
        "tournaments.diff" to "Diff",
        "tournaments.distributeTables" to "Distribuer les tables libres",
        "tournaments.distributeTablesResult" to "Distribution des tables",
        "tournaments.doubles" to "Double",
        "tournaments.doublesPairingHint" to "Les participants {count} à ce cours de double ont toujours besoin d'un partenaire.",
        "tournaments.doublesTournament" to "Tournoi de double",
        "tournaments.doublesTournamentHint" to "Bascule toutes les classes existantes en doubles et crée de nouvelles classes en doubles par défaut.",
        "tournaments.edit" to "Modifier",
        "tournaments.eligibleClassesHint" to "Convient pour : {classes}",
        "tournaments.email" to "Adresse email",
        "tournaments.encounter" to "Réunion",
        "tournaments.enterClassName" to "Veuillez saisir un nom de classe.",
        "tournaments.enterExternalParticipantName" to "Veuillez saisir au moins le prénom et le nom.",
        "tournaments.enterMiniLocation" to "Veuillez saisir un lieu.",
        "tournaments.errorCreatingGroups" to "Erreur lors de la création de groupes.",
        "tournaments.errorCreatingTournament" to "Erreur lors de la création du tournoi.",
        "tournaments.errorDistributingTables" to "Erreur lors de la répartition des tables.",
        "tournaments.errorGeneratingPdf" to "Erreur lors de la génération du PDF.",
        "tournaments.errorMergingClasses" to "Échec de la fusion des classes.",
        "tournaments.errorMoreSeededThanUnseeded" to "Il y a plus de joueurs pariés que de joueurs non classés. Impossible de créer des appariements aléatoires.",
        "tournaments.errorResettingKORound" to "Erreur lors de la réinitialisation des huitièmes de finale.",
        "tournaments.errorUpdatingTournament" to "Erreur lors de la mise à jour du tournoi.",
        "tournaments.exportPDF" to "Exporter un PDF",
        "tournaments.external" to "Externe",
        "tournaments.finalPlacements" to "Placements finaux",
        "tournaments.finalRound" to "Tour final",
        "tournaments.finishMatch" to "Terminer",
        "tournaments.firstName" to "Prénom",
        "tournaments.forForwarding" to "pour l'expédition",
        "tournaments.gaveUp" to "Mis",
        "tournaments.gaveUpHint" to "Le joueur s'est rendu – tous les matchs comptent pour l'adversaire (11:0) ou 0:0 pour les deux.",
        "tournaments.genderAll" to "Tous",
        "tournaments.genderMixed" to "Mixed",
        "tournaments.generatingPDF" to "Génération du PDF...",
        "tournaments.group" to "Groupe",
        "tournaments.groupMatches" to "Matchs intergroupes",
        "tournaments.groupNumber" to "Groupe",
        "tournaments.groupPlacements" to "Placements de groupe",
        "tournaments.groupsLabel" to "Groupes",
        "tournaments.groupsOverview" to "Aperçu des groupes",
        "tournaments.groupsPerClass" to "Classement de la poule",
        "tournaments.groupsPerClassHint" to "Pour chaque classe, saisissez le nombre de groupes (0 = aucun groupe pour cette classe) :",
        "tournaments.index" to "Index",
        "tournaments.intermediateRound" to "Tour intermédiaire (tour 2)",
        "tournaments.internalStatsAbsoluteRank" to "Classement du total",
        "tournaments.internalStatsAgeFilter" to "Âge et genre (simple)",
        "tournaments.internalStatsAgeFilterAll" to "Toutes les catégories",
        "tournaments.internalStatsAgeFilterNone" to "Aucune catégorie sélectionnée",
        "tournaments.internalStatsAgeNoClass" to "Sans classe assignée",
        "tournaments.internalStatsAgeSelectAll" to "Tout",
        "tournaments.internalStatsAgeSelectNone" to "Aucune",
        "tournaments.internalStatsAverageRank" to "Classement de la moyenne (par tournoi)",
        "tournaments.internalStatsAvgPoints" to "Moy.",
        "tournaments.internalStatsEmpty" to "Aucune donnée pour la période choisie.",
        "tournaments.internalStatsExportPdf" to "Exporter en PDF",
        "tournaments.internalStatsFilterAgeBands" to "Classes d'âge",
        "tournaments.internalStatsFilterGenderColumn" to "Genre",
        "tournaments.internalStatsGenderScopeAll" to "Tous",
        "tournaments.internalStatsGenderScopeGirls" to "Filles seulement",
        "tournaments.internalStatsLast12Months" to "12 derniers mois",
        "tournaments.internalStatsLast3Months" to "3 derniers mois",
        "tournaments.internalStatsLast6Months" to "6 derniers mois",
        "tournaments.internalStatsOpenButton" to "Statistiques (simple)",
        "tournaments.internalStatsPeriod" to "Période",
        "tournaments.internalStatsPoints" to "Total",
        "tournaments.internalStatsPointsExplain" to "Barème : dans chaque poule, le classement est exprimé en pourcentage (avec N classés : 1er = 100 %, dernier = 0 %, linéaire entre les deux ; ex æquo = même valeur). N compte tous les classés de la poule (invités inclus). Un seul joueur : 100 %. En KO : meilleur score de poule de la catégorie + 1, puis +1 par match KO gagné. Membres du club en simple uniquement.",
        "tournaments.internalStatsTitle" to "Statistiques des tournois internes (simple)",
        "tournaments.internalStatsTournamentsInPeriod" to "{count} tournoi(s) sur la période (hors mini-championnats).",
        "tournaments.internalStatsTtAdult" to "Adultes",
        "tournaments.internalTournaments" to "Tournois internes",
        "tournaments.knockoutLabel" to "KO",
        "tournaments.koRound" to "tour à élimination directe",
        "tournaments.lastName" to "Nom de famille",
        "tournaments.livePosition" to "Siège en direct",
        "tournaments.loadFromTraining" to "Charge du jour de formation",
        "tournaments.markMatchLive" to "Marquer en direct",
        "tournaments.maxGroupSize" to "Taille maximale du groupe",
        "tournaments.mergeClasses" to "Fusionner les classes (phase de groupe commune)",
        "tournaments.mergeDistribute" to "Répartir les joueurs de A à tous les groupes (de B)",
        "tournaments.mergeSingleGroup" to "Tous les joueurs de A dans un groupe (en B)",
        "tournaments.minBirthYear" to "Né dans l'année ou plus tard",
        "tournaments.miniChampionshipLocation" to "Emplacement",
        "tournaments.miniChampionships" to "Mini-championnats",
        "tournaments.miniChampionshipYear" to "Année",
        "tournaments.miniChampionshipYearHint" to "12 = cette année 12 ou 13 ans, 10 = 10 ou 11, 8 = 9 ans et moins",
        "tournaments.minimumParticipantsForPairings" to "Au moins 2 participants sont nécessaires pour créer des paires.",
        "tournaments.missingDataPDF" to "Données manquantes en PDF",
        "tournaments.missingDataPDFSubtitle" to "Veuillez collecter les données manquantes (marquées ____) auprès des participants et les noter ici.",
        "tournaments.missingDataPDFSubtitleTop3" to "Veuillez collecter les données manquantes des 3 premiers (marquées ____) et les noter ici.",
        "tournaments.missingDataPDFTitle" to "Données manquantes des participants – Mini-championnat",
        "tournaments.missingDataPDFTitleTop3" to "Données manquantes – Top 3 Mini-championnat",
        "tournaments.name" to "nom",
        "tournaments.newMiniChampionship" to "Nouveau mini-championnat",
        "tournaments.setShort" to "Set",
        "tournaments.newTournament" to "Ajouter un nouveau tournoi",
        "tournaments.noAssignableMatches" to "Aucun match disponible où les deux joueurs sont libres.",
        "tournaments.noClassesYet" to "Aucun cours disponible pour l'instant. Ajoutez une nouvelle classe.",
        "tournaments.noEligibleClass" to "Aucune catégorie appropriée trouvée.",
        "tournaments.noFreeTables" to "Aucune table libre disponible.",
        "tournaments.noMatchingTournamentsTitle" to "Aucun tournoi correspondant",
        "tournaments.noOrphanedMatchesFound" to "Aucun match orphelin trouvé.",
        "tournaments.noPlacementsYet" to "Aucun emplacement disponible pour l'instant.",
        "tournaments.noPlayerDataAvailable" to "Aucune donnée de joueur disponible",
        "tournaments.noPoolRulesYet12" to "Aucune règle pour le moment. Exemple : places 1 et 2 -> groupes supérieurs du tour 2.",
        "tournaments.noPoolRulesYetFinal" to "Aucune règle pour le moment. Exemple : places 1 et 2 -> tour final.",
        "tournaments.noTop3Yet" to "Les 3 premiers ne sont pas encore déterminés.",
        "tournaments.noTournamentDate" to "Aucune date de tournoi disponible.",
        "tournaments.noTournamentsCreatedYet" to "Aucun tournoi n'a encore été créé.",
        "tournaments.noTrainingOnDate" to "Aucune séance d'entraînement trouvée pour le {date}.",
        "tournaments.noTrainingParticipants" to "Aucun participant n'a été trouvé dans la séance d'entraînement pour cette date.",
        "tournaments.noValidTrainingParticipants" to "Aucun participant valide n'a été trouvé dans la séance d'entraînement pour cette date.",
        "tournaments.numberOfGroups" to "Nb de groupes",
        "tournaments.numberOfTables" to "Nombre de tables",
        "tournaments.openTournaments" to "Tournois ouverts",
        "tournaments.optional" to "optional",
        "tournaments.orphanedMatchesRemoved" to "{count} matchs orphelins supprimés.",
        "tournaments.outOfCompetition" to "Joueur de A hors compétition",
        "tournaments.page" to "Page",
        "tournaments.pairingAlreadyExists" to "Cette paire existe déjà.",
        "tournaments.pairings" to "Doubles appariements",
        "tournaments.pairingsCreatedWithErrors" to "{successCount} paires créées, {errorCount} erreurs.",
        "tournaments.participantConflicts" to "Conflits",
        "tournaments.participantNotFound" to "Participant introuvable.",
        "tournaments.participants" to "Participants",
        "tournaments.participantsNeedClassAssignment" to "Les participants {count} ne sont pas encore affectés à un cours. Ceux-ci doivent être attribués en premier.",
        "tournaments.phone" to "Téléphone",
        "tournaments.placementsPendingFinals" to "Les classements finaux apparaîtront une fois que plusieurs groupes ou un tour final existeront.",
        "tournaments.placementsPendingGroups" to "Les classements de groupe apparaîtront une fois que les matchs de groupe existeront.",
        "tournaments.placementsPendingNoGroups" to "Les classements apparaîtront ici une fois que des matchs de groupe ou un tour final auront lieu.",
        "tournaments.placementsPendingSelectedClass" to "Il n'y a pas encore de classement pour la classe actuellement sélectionnée.",
        "tournaments.placementsPendingTitle" to "Places pas encore disponibles",
        "tournaments.placesFromEachGroup" to "Places de chaque groupe (p. ex. 1,2)",
        "tournaments.player" to "Patineurs",
        "tournaments.playerOne" to "Joueur 1",
        "tournaments.playerTwo" to "Joueur 2",
        "tournaments.playInGroups" to "Jouer en groupe",
        "tournaments.playThirdPlace" to "Jouer la troisième place",
        "tournaments.pleaseEnterDate" to "Veuillez entrer une date",
        "tournaments.pleaseSelectParticipant" to "Veuillez sélectionner un étudiant.",
        "tournaments.points" to "Points",
        "tournaments.pointsRatio" to "Points de jeu",
        "tournaments.poolRuleLabel" to "Règle {number}",
        "tournaments.poolRulePlacesHelp" to "Exemple : 1 ou 1,2",
        "tournaments.poolRulePlacesLabel" to "Quelles places avancent ?",
        "tournaments.poolRulePreview" to "De chaque groupe, les places {places} avancent vers {target}.",
        "tournaments.poolRuleQuickExamples" to "Exemples rapides :",
        "tournaments.poolRuleSummary" to "Lieux {places} vont à {target}",
        "tournaments.poolRuleTargetGroupsDetailed" to "{count} groupes cibles",
        "tournaments.poolRuleTargetKnockout" to "le support défonçable",
        "tournaments.poolRuleTargetLabel" to "Où vont ces lieux ?",
        "tournaments.position" to "La place",
        "tournaments.problemConfigDescription" to "Vérifiez la date, le nom et les sets gagnants.",
        "tournaments.problemConfigTitle" to "Configuration incomplète",
        "tournaments.problemConflictsDescription" to "Examinez les classes invalides, les données manquantes ou les affectations peu claires.",
        "tournaments.problemConflictsTitle" to "{count} participants en conflit",
        "tournaments.problemDoublesAutoDescription" to "La classe ouverte en double peut être jumelée automatiquement immédiatement.",
        "tournaments.problemDoublesDescription" to "Une ou plusieurs classes de double nécessitent encore des affectations de partenaires.",
        "tournaments.problemDoublesTitle" to "{count} partenaires de double ouverts",
        "tournaments.problemGroupMatchesDescription" to "Les groupes sont prêts, mais les matchs ne sont pas encore créés.",
        "tournaments.problemGroupMatchesTitle" to "Matchs de groupe pas encore générés",
        "tournaments.problemGroupsMissingDescription" to "Le tournoi de groupe nécessite que des groupes soient d'abord créés.",
        "tournaments.problemGroupsMissingTitle" to "Groupes pas encore créés",
        "tournaments.problemKnockoutReadyDescription" to "La phase de groupes est terminée et le tour final peut être généré maintenant.",
        "tournaments.problemKnockoutReadyTitle" to "Knockout peut être lancé",
        "tournaments.problemUnassignedAutoDescription" to "{count} d’entre eux peuvent être attribués automatiquement immédiatement.",
        "tournaments.problemUnassignedDescription" to "Ces participants ont toujours besoin d’un devoir manuel en classe.",
        "tournaments.problemUnassignedTitle" to "{count} participants sans cours",
        "tournaments.promotionRule12" to "Qualification : tour préliminaire → tour intermédiaire (1→2)",
        "tournaments.promotionRuleDescription12" to "Définissez les places de chaque groupe préliminaire qui accèdent au tour intermédiaire.",
        "tournaments.promotionRuleDescriptionFinalGroups" to "Définissez les places du tour précédent qui accèdent aux groupes du tour final.",
        "tournaments.promotionRuleDescriptionFinalKnockout" to "Définissez quelles places du tour précédent avancent vers la tranche à élimination directe.",
        "tournaments.promotionRuleFinal" to "Qualification : tour {from} → tour {to}",
        "tournaments.randomizeGroups" to "Randomiser",
        "tournaments.randomPairings" to "Doubles paires aléatoires",
        "tournaments.randomPairingsCreated" to "Des appariements aléatoires ont été créés.",
        "tournaments.resetGroupMatches" to "Matchs intergroupes",
        "tournaments.resetGroups" to "Réinitialiser les groupes",
        "tournaments.result" to "Résultat",
        "tournaments.resultsRanking" to "Classement",
        "tournaments.round" to "Rond",
        "tournaments.roundGroupCount" to "Nombre de groupes",
        "tournaments.roundMode" to "Mode",
        "tournaments.ruleStatusBlocked" to "Bloqué",
        "tournaments.ruleStatusOk" to "Ça a l'air bien",
        "tournaments.ruleStatusOkDescription" to "Cette règle correspond au tour cible actuel et peut être utilisée telle quelle.",
        "tournaments.ruleStatusReview" to "Revoir",
        "tournaments.save" to "Sauvegarder",
        "tournaments.saveRounds" to "Enregistrer les tours",
        "tournaments.seeded" to "Graine",
        "tournaments.selectClass" to "Sélectionnez une classe",
        "tournaments.selectClassPrompt" to "Veuillez sélectionner une classe.",
        "tournaments.selectedTournament" to "Tournoi actif",
        "tournaments.selectParticipant" to "Choisir un utilisateur",
        "tournaments.selectPlayer" to "Sélectionner des joueurs",
        "tournaments.selectTournamentFirst" to "Veuillez d'abord sélectionner un tournoi.",
        "tournaments.selectTwoDifferentPlayers" to "Veuillez sélectionner deux joueurs différents.",
        "tournaments.setDiff" to "Différence de phrase",
        "tournaments.sets" to "phrases",
        "tournaments.showClass" to "Voir la classe",
        "tournaments.showingTournamentCount" to "{visible} de {total}",
        "tournaments.showPlayerDetails" to "Afficher les détails du joueur",
        "tournaments.singles" to "Célibataire",
        "tournaments.sourceClass" to "Source",
        "tournaments.stageActionMissingRulesHint" to "Créez au moins une règle d’avancement avant de faire passer les joueurs au tour suivant.",
        "tournaments.stageActionRun" to "Courez maintenant",
        "tournaments.stageActionsDescription" to "Ces étapes font passer les joueurs qualifiés au tour suivant.",
        "tournaments.stageActionsTitle" to "Actions suivantes",
        "tournaments.stageConfigBadServerResponse" to "Réponse serveur invalide.",
        "tournaments.stageConfigCurrentSetup" to "Structure actuelle",
        "tournaments.stageConfigIntro" to "Le tour intermédiaire est facultatif. Si vous l'activez, un tour final suit toujours. Une phase finale à élimination directe est créée sous forme d'un tableau unique.",
        "tournaments.stageConfigLoadError" to "Erreur lors du chargement de la configuration des tours.",
        "tournaments.stageConfigLoading" to "Chargement de la configuration des tours…",
        "tournaments.stageConfigMissingIds" to "Impossible d'enregistrer : l'identifiant du club ou du tournoi est manquant.",
        "tournaments.stageConfigTitle" to "Tour intermédiaire et finale",
        "tournaments.stageCreated" to "Le tour {round} a été créé.",
        "tournaments.stageFinalDescription" to "Décidez si le tour final doit être joué en groupes ou directement en huitièmes de finale.",
        "tournaments.stageFlowBreakdownActionAddRule" to "Ajouter une règle",
        "tournaments.stageFlowBreakdownActionOpen" to "Règle ouverte",
        "tournaments.stageFlowBreakdownActionReview" to "Problèmes d'examen",
        "tournaments.stageFlowBreakdownErrors" to "{count} erreur(s) bloquante(s)",
        "tournaments.stageFlowBreakdownMissingRule" to "Aucune règle complète n'a encore été ajoutée",
        "tournaments.stageFlowBreakdownOk" to "La configuration semble bonne",
        "tournaments.stageFlowBreakdownWarnings" to "{count} avertissement(s) ouvert(s)",
        "tournaments.stageFlowDirectFinal" to "Tour préliminaire -> tour final ({final})",
        "tournaments.stageFlowHealthBlocked" to "La logique ronde est contradictoire",
        "tournaments.stageFlowHealthBlockedDescription" to "Au moins une règle ne correspond actuellement pas au cycle cible ou contient des erreurs de configuration bloquantes.",
        "tournaments.stageFlowHealthIncomplete" to "La logique du tour est incomplète",
        "tournaments.stageFlowHealthMissingRules" to "Au moins une transition n'a pas encore de règle d'avancement complète.",
        "tournaments.stageFlowHealthOk" to "La logique ronde semble bonne",
        "tournaments.stageFlowHealthOkDescription" to "Les transitions entre les tours sont entièrement configurées et actuellement cohérentes.",
        "tournaments.stageFlowHealthReviewDescription" to "La logique ronde est fondamentalement utilisable, mais devrait quand même être revue en raison d'indices ouverts.",
        "tournaments.stageFlowPreviewMissing" to "Aucune règle n'a encore été configurée.",
        "tournaments.stageFlowPreviewRule" to "Lieux {places} vont à {target}",
        "tournaments.stageFlowPreviewRuleWithCount" to "{base} (qualificatifs attendus : {count})",
        "tournaments.stageFlowQualifiedPreviewEntry" to "G{group} · Lieu {position} · {name}",
        "tournaments.stageFlowQualifiedPreviewTitle" to "Actuellement qualifié",
        "tournaments.stageFlowReadinessIncompleteGroups" to "Le(s) groupe(s) {count} ne sont pas encore complètement décidés",
        "tournaments.stageFlowReadinessNoGroups" to "Aucun groupe correspondant n'existe pour l'instant",
        "tournaments.stageFlowReadinessReady" to "La transition est prête à démarrer",
        "tournaments.stageFlowRecommendationError" to "Examinez d'abord la première erreur de blocage dans la logique du tour.",
        "tournaments.stageFlowRecommendationFixes" to "Les problèmes de configuration typiques peuvent être résolus automatiquement immédiatement.",
        "tournaments.stageFlowRecommendationMissingRule" to "Il manque encore une règle complète pour {label}. C'est le meilleur endroit pour continuer.",
        "tournaments.stageFlowRecommendationSave" to "La logique ronde est cohérente. Vous pouvez maintenant enregistrer la configuration.",
        "tournaments.stageFlowRecommendationTitle" to "Prochaine étape recommandée",
        "tournaments.stageFlowRecommendationWarnings" to "Il existe encore des avertissements qui doivent être examinés avant d'enregistrer.",
        "tournaments.stageFlowWithIntermediate" to "Tour préliminaire -> tour intermédiaire ({stage2}) -> tour final ({final})",
        "tournaments.stageParticipantsTransferred" to "Les joueurs qualifiés ont été déplacés vers {round}.",
        "tournaments.stageStep1" to "Étape 1",
        "tournaments.stageStep1Description" to "Décidez d’abord s’il doit y avoir un tour supplémentaire après le tour préliminaire.",
        "tournaments.stageStep1Title" to "Décider d'un tour intermédiaire",
        "tournaments.stageStep2" to "Étape 2",
        "tournaments.stageStep2Description" to "Définissez à quoi devrait ressembler le tour intermédiaire et le nombre de groupes dont il aura besoin.",
        "tournaments.stageStep3" to "Étape 3",
        "tournaments.stageValidationApplyAllFixes" to "Appliquer la ou les solutions rapides {count}",
        "tournaments.stageValidationApplyFix" to "Appliquer",
        "tournaments.stageValidationApplyTargetGroupFix" to "Définir sur {count} groupes cibles",
        "tournaments.stageValidationApplyTargetTypeFix" to "Passer à {target}",
        "tournaments.stageValidationDescription" to "Corrigez ces points avant de sauvegarder ou de déplacer les joueurs vers le tour suivant.",
        "tournaments.stageValidationGroupCountRequired" to "Veuillez définir au moins un nombre de groupes valide.",
        "tournaments.stageValidationKnockoutByesLikely" to "Avec des qualifications {count} attendues, la tranche à élimination directe comprendra très probablement des byes.",
        "tournaments.stageValidationKnockoutNeedsTwoPlayers" to "Une tranche à élimination directe nécessite au moins 2 joueurs qualifiés.",
        "tournaments.stageValidationKnockoutTargetOnly" to "Pour un tour final à élimination directe, seule la tranche à élimination directe est autorisée comme cible ici.",
        "tournaments.stageValidationNoRules" to "Il n’y a pas encore de règle d’avancement pour {stage}.",
        "tournaments.stageValidationNotEnoughQualifiersForGroups" to "Avec seulement des qualificatifs {count} pour les groupes cibles {groups}, des groupes vides seraient créés.",
        "tournaments.stageValidationRulePlacesDuplicate" to "Une même règle ne doit pas contenir le même endroit plus d’une fois.",
        "tournaments.stageValidationRulePlacesGap" to "La définition du lieu présente des lacunes. Habituellement, un ordre continu tel que 1,2 ou 1,2,3 est prévu.",
        "tournaments.stageValidationRulePlacesInvalid" to "La définition du lieu n'est pas valide. Seuls les nombres entiers positifs tels que 1 ou 1,2 sont autorisés.",
        "tournaments.stageValidationRulePlacesRequired" to "Entrez au moins une place qui devrait avancer.",
        "tournaments.stageValidationRulesOverlap" to "La place {place} est attribuée deux fois, dans la règle {first} et dans la règle {second}.",
        "tournaments.stageValidationSaveBlocked" to "Veuillez d'abord corriger les erreurs de configuration mises en surbrillance.",
        "tournaments.stageValidationSuggestion" to "Suggestions : {value}",
        "tournaments.stageValidationTargetGroupCountMismatch" to "Le nombre de groupes cibles doit correspondre au cycle cible. Attendu : {expected}.",
        "tournaments.stageValidationTargetGroupsRequired" to "Veuillez saisir un nombre valide de groupes cibles.",
        "tournaments.stageValidationTargetTypeMismatch" to "La cible de cette règle doit correspondre au tour cible. Attendu : {target}.",
        "tournaments.stageValidationThinGroupsLikely" to "Avec les qualificatifs {count} dans les groupes cibles {groups}, les groupes seront probablement très petits.",
        "tournaments.stageValidationTitle" to "Vérifier la configuration",
        "tournaments.startKORound" to "Commencer les huitièmes de finale",
        "tournaments.statusActionAssign" to "Attribuer",
        "tournaments.statusActionCreate" to "Créer",
        "tournaments.statusActionGenerate" to "Générer",
        "tournaments.statusActionPair" to "Paire",
        "tournaments.statusActionReview" to "Revoir",
        "tournaments.statusActionStart" to "Commencer",
        "tournaments.statusConfigIncomplete" to "Configuration incomplète",
        "tournaments.statusConfigReady" to "Configuration prête",
        "tournaments.statusFinished" to "Terminé",
        "tournaments.statusGroupsMissing" to "Groupes pas encore créés",
        "tournaments.statusGroupsReady" to "Groupes prêts",
        "tournaments.statusGroupsRunning" to "Phase de groupes en cours",
        "tournaments.statusKnockoutReady" to "KO prêt à commencer",
        "tournaments.statusKnockoutRunning" to "KO en cours",
        "tournaments.statusLive" to "En direct",
        "tournaments.statusOpen" to "Ouvert",
        "tournaments.statusParticipantsConflicts" to "{count} participants en conflit",
        "tournaments.statusParticipantsReady" to "{count} participants sans conflit",
        "tournaments.statusParticipantsUnassigned" to "{count} sans cours",
        "tournaments.statusTournamentCompleted" to "Tournoi terminé",
        "tournaments.statusUnpairedDoubles" to "{count} double sans partenaire",
        "tournaments.strategy" to "Stratégie",
        "tournaments.tabConfig" to "Configuration",
        "tournaments.tabGroups" to "Classement de la poule",
        "tournaments.table" to "Tableau",
        "tournaments.tablesDistributed" to "Les tables ont été distribuées.",
        "tournaments.tabParticipants" to "Participants",
        "tournaments.tabPlacements" to "Placements",
        "tournaments.tabResults" to "Résultats",
        "tournaments.target" to "Cible",
        "tournaments.targetClass" to "Cible",
        "tournaments.targetGroupCount" to "Nombre de groupes cibles",
        "tournaments.targetGroupsLabel" to "Groupes {count}",
        "tournaments.tournamentClassGenderFemale" to "Féminin",
        "tournaments.tournamentClassGenderOpen" to "Tous",
        "tournaments.tournamentName" to "Nom du tournoi",
        "tournaments.tournamentParticipations" to "Tournois et inscriptions officiels",
        "tournaments.transferQualifiedToFinalFromIntermediate" to "Déplacez les joueurs qualifiés vers le tour final",
        "tournaments.transferQualifiedToFinalFromIntermediateDesc" to "Utilise les règles du tour intermédiaire au tour final et déplace les joueurs qualifiés.",
        "tournaments.transferQualifiedToFinalFromPreliminary" to "Déplacez les joueurs qualifiés directement vers le tour final",
        "tournaments.transferQualifiedToFinalFromPreliminaryDesc" to "Utilise les règles du tour préliminaire au tour final et crée les joueurs qualifiés directement là-bas.",
        "tournaments.transferQualifiedToIntermediate" to "Déplacer les joueurs qualifiés vers le tour intermédiaire",
        "tournaments.transferQualifiedToIntermediateDesc" to "Utilise les règles du tour préliminaire au tour intermédiaire et déplace les joueurs qualifiés.",
        "tournaments.unknown" to "Inconnu",
        "tournaments.unknownDate" to "Date inconnue",
        "tournaments.unmarkMatchLive" to "Retirer le marquage en direct",
        "tournaments.unpairedDoubles" to "Double sans partenaire",
        "tournaments.useIntermediateStage" to "Utiliser un tour intermédiaire",
        "tournaments.warningBirthDateMissing" to "La date de naissance manque pour cette catégorie",
        "tournaments.warningClassMissing" to "Catégorie introuvable",
        "tournaments.warningGenderMismatch" to "Le sexe ne correspond pas à la catégorie",
        "tournaments.warningGenderMissing" to "Le sexe manque pour cette catégorie",
        "tournaments.warningMissingPairing" to "Partenaire de double manquant",
        "tournaments.warningTooOldForClass" to "Trop âgé pour cette catégorie",
        "tournaments.warningTooYoungForClass" to "Trop jeune pour cette catégorie",
        "tournaments.winningSets" to "Tarifs gagnants",
        "tournaments.withoutClass" to "Sans cours",
        "tournaments.workspaceProblemsTitle" to "{count} problèmes ouverts",
        "trainingDetails.birthdate" to "Date de naissance",
        "trainingDetails.birthYear" to "Année de naissance",
        "trainingDetails.last12Months" to "12 derniers mois",
        "trainingDetails.last3Months" to "3 derniers mois",
        "trainingDetails.maxBirthYear" to "Né ≤ an",
        "trainingDetails.noTrainings" to "Aucune participation à la formation disponible",
        "trainingDetails.title" to "Détails de la formation",
        "trainingDetails.total" to "Total",
        "trainingDetails.trainingParticipations" to "Participations aux formations (triées par ordre décroissant)",
        "trainingGroupsTab.addMember" to "Ajouter un membre...",
        "trainingGroupsTab.cancel" to "Annuler",
        "trainingGroupsTab.create" to "Créer",
        "trainingGroupsTab.delete" to "Supprimer",
        "trainingGroupsTab.edit" to "Modifier",
        "trainingGroupsTab.editGroup" to "Modifier le groupe",
        "trainingGroupsTab.groupName" to "Nom du groupe",
        "trainingGroupsTab.groups" to "Classement de la poule",
        "trainingGroupsTab.members" to "Membres",
        "trainingGroupsTab.newGroup" to "+ Nouveau groupe",
        "trainingGroupsTab.noMembersAvailable" to "Aucun partenaire affilié disponible",
        "trainingGroupsTab.remove" to "Retirer",
        "trainingStats.actions" to "Actes",
        "trainingStats.activeMembers" to "Membres actifs",
        "trainingStats.allTrainingDays" to "Tous les jours d'entraînement",
        "trainingStats.attendingMembers" to "Membres présents",
        "trainingStats.averageParticipationCurrentMonth" to "Participation moyenne (mois en cours)",
        "trainingStats.averageParticipationHalfYear" to "Participation moyenne (semestre)",
        "trainingStats.averageParticipationLastMonth" to "Participation moyenne (mois précédent)",
        "trainingStats.averageParticipationQuarter" to "Participation moyenne (trimestre)",
        "trainingStats.averageParticipationYear" to "Participation moyenne (année)",
        "trainingStats.birthdate" to "Date de naissance",
        "trainingStats.date" to "Date",
        "trainingStats.lastTraining" to "Dernier entraînement",
        "trainingStats.memberParticipations" to "Participations des membres",
        "trainingStats.name" to "nom",
        "trainingStats.noParticipants" to "Aucun participant",
        "trainingStats.panelAgeGroups" to "Présence par catégorie d'âge",
        "trainingStats.panelBestDay" to "Jour d'entraînement le plus fréquenté",
        "trainingStats.panelGroupPerformance" to "Progression par groupe",
        "trainingStats.panelMemberStructure" to "Structure des membres",
        "trainingStats.panelMonthlyTrend" to "Évolution mensuelle",
        "trainingStats.panelSummary" to "Chiffres clés (filtre)",
        "trainingStats.panelWeekdayStats" to "Jours d'entraînement par jour de la semaine",
        "trainingStats.participants" to "Participants",
        "trainingStats.participations12Months" to "Participations (12 mois)",
        "trainingStats.participations3Months" to "Participations (3 mois)",
        "trainingStats.participationsTotal" to "Participations (total)",
        "trainingStats.qttr" to "QTTR",
        "trainingStats.showDetails" to "Afficher les détails",
        "trainingStats.title" to "Statistiques d'entraînement",
        "trainingStats.trainingDayFilter" to "Jour d'entraînement",
        "trainingStats.trainingDays" to "Jours d'entraînement (12 derniers mois)",
        "trainingStats.ttr" to "TTR",
        "trainingStats.weekday" to "Jour de semaine",
        "trainingTimesTab.addTime" to "Ajouter du temps",
        "trainingTimesTab.cancel" to "Annuler",
        "trainingTimesTab.create" to "Créer",
        "trainingTimesTab.delete" to "Supprimer",
        "trainingTimesTab.edit" to "Modifier",
        "trainingTimesTab.editTime" to "Modifier le temps d'entraînement",
        "trainingTimesTab.excludeFromQuickDiaryCreate" to "Exclure de la création rapide (journal)",
        "trainingTimesTab.excludeFromQuickDiarySaveError" to "Le paramètre n'a pas pu être enregistré.",
        "trainingTimesTab.friday" to "Vendredi",
        "trainingTimesTab.from" to "Depuis:",
        "trainingTimesTab.loading" to "Chargement des temps d'entraînement...",
        "trainingTimesTab.monday" to "Lundi",
        "trainingTimesTab.noTimes" to "Aucun temps de formation défini",
        "trainingTimesTab.saturday" to "Samedi",
        "trainingTimesTab.save" to "Sauvegarder",
        "trainingTimesTab.saveError" to "Erreur lors de l'enregistrement du temps d'entraînement",
        "trainingTimesTab.sunday" to "Dimanche",
        "trainingTimesTab.thursday" to "Jeudi",
        "trainingTimesTab.to" to "À:",
        "trainingTimesTab.tuesday" to "Mardi",
        "trainingTimesTab.wednesday" to "Mercredi",
        "trainingTimesTab.weekday" to "Jours de la semaine:",
        "unknown" to "Inconnu",
    ) }

    private val it: Map<String, String> by lazy { mapOf(
        "accident.accident" to "Incidente",
        "accident.accidentDescription" to "Descrizione dell'incidente...",
        "accident.close" to "Vicino",
        "accident.member" to "Membro",
        "accident.pleaseSelect" to "Seleziona",
        "accident.reportAccident" to "Segnalare incidenti",
        "accident.reportedAccidents" to "Incidenti denunciati",
        "accident.submit" to "Invia",
        "activityStats.activityStatistics" to "Statistiche sugli esercizi",
        "activityStats.last3Participations" to "Ultimi 3 ingressi",
        "activityStats.noParticipations" to "Nessuna voce disponibile",
        "activityStats.noStatistics" to "Nessuna statistica disponibile",
        "activityStats.title" to "Statistiche sugli esercizi",
        "app.name" to "Diario di allenamento",
        "app.title" to "Diario di allenamento",
        "auth.accountActivated" to "Conto attivato! Ora puoi accedere.",
        "auth.activate" to "Attivare",
        "auth.activateAccount" to "Attiva conto",
        "auth.activationFailed" to "Attivazione fallita. Controlla il link.",
        "auth.confirmPassword" to "Conferma password",
        "auth.email" to "E-mail",
        "auth.forgotPassword" to "Password dimenticata?",
        "auth.forgotPasswordDescription" to "Inserisci il tuo indirizzo email. Riceverai un link per reimpostare la password.",
        "auth.hasAccount" to "Hai già un account?",
        "auth.login" to "Accedi",
        "auth.loginFailed" to "Accesso fallito. Controlla le credenziali.",
        "auth.loginSuccess" to "Accesso effettuato con successo",
        "auth.logout" to "Esci",
        "auth.logoutSuccess" to "Uscita effettuata con successo",
        "auth.newPassword" to "Nuova password",
        "auth.noAccount" to "Non hai un account?",
        "auth.password" to "Password",
        "auth.passwordResetSuccess" to "La password è stata cambiata con successo. Ora puoi accedere.",
        "auth.passwordsDoNotMatch" to "Le password non corrispondono.",
        "auth.passwordTooShort" to "La password deve contenere almeno 6 caratteri.",
        "auth.register" to "Registrati",
        "auth.registerFailed" to "La registrazione non è riuscita. Per favore riprova.",
        "auth.registerSuccess" to "Registrazione riuscita! Controlla la tua email per attivare il tuo account.",
        "auth.rememberMe" to "Ricordami",
        "auth.resetEmailSent" to "Se esiste un account con questa email, è stato inviato un link di reimpostazione. Controlla la posta (e lo spam).",
        "auth.resetFailed" to "La password non è stata modificata. Il link potrebbe essere scaduto.",
        "auth.resetPassword" to "Imposta nuova password",
        "auth.resetRequestFailed" to "Richiesta fallita. Riprova.",
        "auth.saveNewPassword" to "Salva password",
        "auth.saving" to "Salvataggio...",
        "auth.sending" to "Invio in corso...",
        "auth.sendResetLink" to "Invia link",
        "auth.sessionExpired" to "La tua sessione è scaduta. Verrai disconnesso.",
        "auth.toLogin" to "Vai al login",
        "baseDialog.close" to "Vicino",
        "baseDialog.minimize" to "minimizzare",
        "baseDialog.resize" to "Ridimensionare",
        "billing.autoSuggestMapping" to "Suggerimenti per l'auto",
        "billing.deleteBilling" to "Eliminare",
        "billing.deleteConfirm" to "Eliminare davvero questa istruzione generata?",
        "billing.deleteError" to "Impossibile eliminare la fatturazione.",
        "billing.deleteSuccess" to "La fatturazione è stata eliminata.",
        "billing.deleteTemplate" to "Elimina modello",
        "billing.deleteTemplateConfirm" to "Eliminare davvero questo modello?",
        "billing.deleteTemplateError" to "Impossibile eliminare il modello.",
        "billing.deleteTemplateSuccess" to "Il modello è stato eliminato.",
        "billing.documentDate" to "Data",
        "billing.downloadError" to "Impossibile scaricare il PDF.",
        "billing.downloadPdf" to "Scarica PDF",
        "billing.generateAndDownloadPdf" to "Genera + scarica PDF",
        "billing.generateError" to "Impossibile creare il PDF.",
        "billing.generateOwnBilling" to "Genera la tua fatturazione",
        "billing.generatePdf" to "Genera PDF",
        "billing.generateSuccess" to "Il PDF è stato creato.",
        "billing.generatingPdf" to "Crea PDF...",
        "billing.hourlyRate" to "Stipendio orario",
        "billing.hoursAutoHint" to "Il numero di ore viene calcolato automaticamente dai giorni di formazione: {hours} h ({count} unità).",
        "billing.hoursTotal" to "Numero di ore",
        "billing.iban" to "IBAN",
        "billing.ibanBoxesReset" to "Le caselle IBAN sono state reimpostate.",
        "billing.ibanLearnCancel" to "Annulla l'apprendimento dell'IBAN",
        "billing.ibanLearnDone" to "Le caselle IBAN sono state assegnate dall'area selezionata.",
        "billing.ibanLearnStart" to "Scopri l'IBAN",
        "billing.ibanLearnStep1" to "Apprendimento IBAN: cliccare sulla prima casella IBAN da utilizzare.",
        "billing.ibanLearnStep2" to "Apprendimento IBAN: cliccare sull'ultima casella IBAN da utilizzare.",
        "billing.ibanWithoutCountry" to "senza prefisso internazionale",
        "billing.locationText" to "Posizione",
        "billing.mappingEditorHint" to "Selezionare il campo, quindi fare clic sul PDF. L'incarico verrà assunto immediatamente.",
        "billing.mappingEditorTitle" to "Assegna i campi nel PDF con un clic",
        "billing.mappingField" to "Campo",
        "billing.mappingHint" to "Regola e salva le coordinate una volta per ciascun campo. Queste posizioni vengono utilizzate in “Crea PDF”.",
        "billing.mappingPreviewError" to "Impossibile caricare l'anteprima PDF per la mappatura.",
        "billing.mappingSaved" to "La mappatura è stata salvata.",
        "billing.mappingSaveError" to "Impossibile salvare la mappatura.",
        "billing.mappingSuggested" to "Sono stati inseriti suggerimenti per l'auto. Si prega di controllare e perfezionare.",
        "billing.mappingSuggestError" to "Impossibile determinare i suggerimenti automatici.",
        "billing.mappingTitle" to "Mappatura della posizione",
        "billing.monthFrom" to "mese di",
        "billing.monthTo" to "mese a",
        "billing.noRuns" to "Nessuna fattura ancora disponibile.",
        "billing.noSessionsInRange" to "Nessuna sessione di formazione trovata nel periodo selezionato.",
        "billing.noTemplates" to "Nessun modello ancora disponibile.",
        "billing.omitField" to "non specificare",
        "billing.openMappingEditor" to "Mappatura con un clic",
        "billing.resetIbanBoxes" to "Azzeramento caselle IBAN",
        "billing.runSection" to "Esecuzione della fatturazione",
        "billing.runsTitle" to "Fatture precedenti",
        "billing.sameAccountCheckbox" to "Stesso conto dell'ultima dichiarazione",
        "billing.saveMapping" to "Salva mappatura",
        "billing.selfRecipientName" to "Proprio nome",
        "billing.sessionHours" to "Ore",
        "billing.sessionLabel" to "Identificatore",
        "billing.sessionTime" to "Tempo",
        "billing.step1" to "Passaggio 1: archivia il modello",
        "billing.step2" to "Passaggio 2: crea un'esecuzione di fatturazione",
        "billing.step3" to "Passaggio 3: genera e scarica il PDF",
        "billing.subtitle" to "Crea la tua fattura mensile per le lezioni di pratica.",
        "billing.template" to "Modello",
        "billing.templateDescription" to "Descrizione",
        "billing.templateName" to "Nome del modello",
        "billing.templatePdf" to "Modello PDF",
        "billing.templateSection" to "Carica modello",
        "billing.title" to "Fattura",
        "billing.uploadTemplate" to "Salva modello",
        "calendar.agendaEmpty" to "Nessun evento questo mese.",
        "calendar.agendaTitle" to "Eventi del mese",
        "calendar.cancelCancellation.confirm" to "Annulla cancellazione",
        "calendar.cancelCancellation.message" to "Annullare davvero la cancellazione “{title}” del {date}?",
        "calendar.cancelCancellation.title" to "Annulla cancellazione allenamento",
        "calendar.cancellation.date" to "Data",
        "calendar.cancellation.description" to "Nasconde i tempi di allenamento regolari.",
        "calendar.cancellation.fallbackTitle" to "Allenamento annullato",
        "calendar.cancellation.reasonPlaceholder" to "Motivo (facoltativo)",
        "calendar.cancellation.saving" to "Risparmio...",
        "calendar.cancellation.submit" to "Aggiungere",
        "calendar.cancellation.subtitle" to "Annullamento della formazione",
        "calendar.cancellation.title" to "Allenamento annullato",
        "calendar.cancellation.trainingGroups" to "Gruppi di formazione",
        "calendar.cancellation.untilOptional" to "Fino a facoltativo",
        "calendar.customEvent.categoryPlaceholder" to "Categoria (facoltativo)",
        "calendar.customEvent.description" to "Riunioni distrettuali, sessioni, riunioni interne, ...",
        "calendar.customEvent.saving" to "Risparmio...",
        "calendar.customEvent.submit" to "Creare",
        "calendar.customEvent.subtitleFallback" to "Evento proprio",
        "calendar.customEvent.title" to "Propri eventi",
        "calendar.customEvent.titlePlaceholder" to "Titolo",
        "calendar.description" to "Giornate di allenamento, tornei di club e partite di campionato in visualizzazione mensile.",
        "calendar.eventTitles.match" to "Partita di campionato",
        "calendar.eventTitles.officialTournament" to "Partecipazione al torneo",
        "calendar.eventTitles.tournament" to "Torneo",
        "calendar.eventTitles.training" to "formazione",
        "calendar.eyebrow" to "Calendario del club",
        "calendar.holidayTypes.holiday" to "Vacanza",
        "calendar.holidayTypes.schoolHoliday" to "Vacanze scolastiche",
        "calendar.legend.customEvent" to "Evento",
        "calendar.legend.holiday" to "Vacanza",
        "calendar.legend.match" to "Partita di campionato",
        "calendar.legend.officialTournament" to "Partecipazione",
        "calendar.legend.schoolHoliday" to "Vacanze scolastiche",
        "calendar.legend.tournament" to "Torneo",
        "calendar.legend.training" to "formazione",
        "calendar.legend.trainingCancellation" to "Annullato",
        "calendar.loadError" to "Impossibile caricare i dati del calendario.",
        "calendar.loading" to "Caricamento dati calendario...",
        "calendar.match.guest" to "Lontano",
        "calendar.match.home" to "Casa",
        "calendar.noClub" to "Seleziona prima un club.",
        "calendar.options.subtitle" to "Cancellazioni ed eventi propri",
        "calendar.options.title" to "Opzioni",
        "calendar.participants" to "{count} partecipanti",
        "calendar.quickCancellation.confirm" to "Aggiungi cancellazione",
        "calendar.quickCancellation.message" to "Contrassegnare \"{title}\" come annullamento dell'allenamento?",
        "calendar.quickCancellation.noGroups" to "Non sono disponibili gruppi di formazione con orari di formazione.",
        "calendar.quickCancellation.title" to "Annullamento della formazione",
        "calendar.quickCancellation.trainingGroups" to "Gruppi di allenamento interessati",
        "calendar.quickCancellation.useWholeRange" to "Applica all'intero periodo (da {start} a {end})",
        "calendar.recurringTrainingTime" to "Tempo di allenamento regolare",
        "calendar.sources.customEvents" to "Propri eventi",
        "calendar.sources.holidays" to "Vacanze/vacanze scolastiche",
        "calendar.sources.matches" to "Partite di campionato",
        "calendar.sources.officialTournaments" to "Partecipazioni ai tornei",
        "calendar.sources.tournaments" to "Tornei",
        "calendar.sources.trainingCancellations" to "Cancellazioni degli allenamenti",
        "calendar.sources.trainingDays" to "Giornate di formazione",
        "calendar.sources.trainingTimes" to "Tempi di formazione",
        "calendar.sourceWarning" to "Impossibile caricare {source}",
        "calendar.starts" to "{count} si avvia",
        "calendar.title" to "Calendario",
        "calendar.today" to "Oggi",
        "calendar.tournament.club" to "Torneo di società",
        "calendar.tournament.open" to "Torneo aperto",
        "calendar.weekdays.friday" to "Ven",
        "calendar.weekdays.monday" to "Lun",
        "calendar.weekdays.saturday" to "Sab",
        "calendar.weekdays.sunday" to "Dom",
        "calendar.weekdays.thursday" to "Gio",
        "calendar.weekdays.tuesday" to "Mar",
        "calendar.weekdays.wednesday" to "Mer",
        "club.accessDenied" to "Accesso al club negato.",
        "club.accessRequested" to "Accesso richiesto.",
        "club.accessRequestFailed" to "Impossibile inviare la richiesta di accesso.",
        "club.accessRequestPending" to "L’accesso a questo club è stato richiesto. Attendere prego.",
        "club.create" to "Crea club",
        "club.createTitle" to "Crea club",
        "club.diary" to "Diario di allenamento",
        "club.errorLoadingRequests" to "Errore durante il caricamento delle richieste aperte",
        "club.load" to "Carica",
        "club.members" to "Membri",
        "club.mobileSelectHint" to "Seleziona prima un club per usare l'app sullo smartphone.",
        "club.name" to "Nome del club",
        "club.new" to "Nuovo club",
        "club.noAccess" to "Non hai ancora accesso a questo club.",
        "club.openAccessRequests" to "Richieste di accesso aperte",
        "club.openRequests" to "Richieste di accesso aperte",
        "club.requestAccess" to "Richiedi accesso",
        "club.select" to "Seleziona club",
        "club.selectPlaceholder" to "Scegli un club...",
        "club.title" to "Club",
        "club.trainingDiary" to "Diario di allenamento",
        "clubSettings.associationMemberNumber" to "Numero di iscrizione all'associazione",
        "clubSettings.associationMemberNumberPlaceholder" to "per esempio. SN-12-3456.",
        "clubSettings.autoFetchRankings" to "Recupera automaticamente le classifiche",
        "clubSettings.greetingHint" to "Questo testo appare nella scheda \"Benvenuto\" del foglio del resoconto del gioco.",
        "clubSettings.greetingPlaceholder" to "Testo di benvenuto per le partite casalinghe...",
        "clubSettings.greetingText" to "Testo di saluto",
        "clubSettings.guestPlayers" to "Giocatore e squadra ospite di doppio",
        "clubSettings.guestTeam" to "Nome della squadra ospite",
        "clubSettings.homePlayers" to "Giocatori e squadra di casa raddoppiano",
        "clubSettings.homeTeam" to "Nome della squadra di casa",
        "clubSettings.loadFailed" to "Impossibile caricare le impostazioni",
        "clubSettings.memberDataQuality" to "Membri della qualità dei dati",
        "clubSettings.memberDataQualityHint" to "Questi campi contano come necessari nella pagina membro. È ancora possibile compilare tutti i campi.",
        "clubSettings.myTischtennisFedNickname" to "Abbreviazione dell'associazione",
        "clubSettings.myTischtennisFedNicknamePlaceholder" to "per esempio. HeTTV",
        "clubSettings.myTischtennisRankings" to "classifiche myTischtennis TTR/QTTR",
        "clubSettings.myTischtennisRankingsHint" to "Recupero automatico della classifica del club per aggiornamenti TTR e QTTR dei membri.",
        "clubSettings.noClubSelected" to "Seleziona prima un medico.",
        "clubSettings.placeholders" to "Distanziatore",
        "clubSettings.rankingsUsesAssociationNumber" to "Il numero di società per il recupero della graduatoria corrisponde al numero di tessera associativa sopra indicato.",
        "clubSettings.requireCity" to "Posizione richiesta",
        "clubSettings.requireEmail" to "E-mail obbligatoria",
        "clubSettings.requirePhone" to "Numero di telefono obbligatorio",
        "clubSettings.requirePostalCode" to "Codice postale richiesto",
        "clubSettings.requireStreet" to "Strada richiesta",
        "clubSettings.save" to "Salva",
        "clubSettings.saved" to "Memorizzato",
        "clubSettings.saveFailed" to "Impossibile salvare",
        "clubSettings.settings" to "Impostazioni",
        "clubSettings.title" to "Impostazioni del club",
        "clubSettings.trainingGroups" to "Gruppi di formazione.",
        "clubSettings.trainingTimes" to "Programma di pratica",
        "common.actions" to "Azioni",
        "common.active" to "Attivo",
        "common.add" to "Aggiungi",
        "common.all" to "Tutti",
        "common.apply" to "Applica",
        "common.back" to "Indietro",
        "common.cancel" to "Annulla",
        "common.choose" to "Scegli",
        "common.clear" to "Cancella",
        "common.close" to "Chiudi",
        "common.confirm" to "Conferma",
        "common.create" to "Crea",
        "common.date" to "Data",
        "common.days" to "giorni",
        "common.delete" to "Elimina",
        "common.description" to "Descrizione",
        "common.details" to "Details",
        "common.disabled" to "Disabilitato",
        "common.download" to "Scarica",
        "common.edit" to "Modifica",
        "common.enabled" to "Abilitato",
        "common.filter" to "filtro",
        "common.hours" to "ore",
        "common.in" to "in",
        "common.inactive" to "Inattivo",
        "common.loading" to "Caricamento...",
        "common.min" to "min",
        "common.minutes" to "minuti",
        "common.months" to "mesi",
        "common.move" to "Sposta",
        "common.name" to "nome",
        "common.new" to "Nuovo",
        "common.next" to "Avanti",
        "common.no" to "NO",
        "common.ok" to "OK",
        "common.optional" to "Optional",
        "common.period" to "Periodo",
        "common.previous" to "Precedente",
        "common.refresh" to "Ricarica",
        "common.remove" to "Rimuovi",
        "common.required" to "Obbligatorio",
        "common.reset" to "Reimposta",
        "common.save" to "Salva",
        "common.saved" to "Salvato",
        "common.saving" to "Salvataggio...",
        "common.search" to "Cerca",
        "common.select" to "Seleziona",
        "common.status" to "stato",
        "common.submit" to "Invia",
        "common.time" to "Ora",
        "common.today" to "Oggi",
        "common.type" to "Tipo",
        "common.update" to "Aggiorna",
        "common.view" to "Visualizza",
        "common.weeks" to "settimane",
        "common.years" to "anni",
        "common.yes" to "Sì",
        "courtDrawing.cancel" to "Cancellare",
        "courtDrawing.durationMinutes" to "Durata (minuti)",
        "courtDrawing.durationText" to "Durata (testo)",
        "courtDrawing.durationTextPlaceholder" to "per esempio. 2x5",
        "courtDrawing.group" to "Gruppo",
        "courtDrawing.ok" to "OK",
        "courtDrawing.selectGroup" to "Seleziona gruppo...",
        "courtDrawing.title" to "Configura l'esercizio di ping pong",
        "courtDrawingRender.animationRunning" to "Animazione in corso...",
        "courtDrawingRender.startAnimation" to "Avvia l'animazione",
        "courtDrawingTool.addStroke" to "Aggiungi colpo",
        "courtDrawingTool.backhand" to "Rovescio",
        "courtDrawingTool.codeLabel" to "Codice",
        "courtDrawingTool.completeFirstStroke" to "Completa il primo colpo",
        "courtDrawingTool.completeFirstStrokeHint" to "Scegli posizione iniziale, lato, effetto e obiettivo. Lo schema apparirà poi.",
        "courtDrawingTool.configureExercise" to "Configura esercizio",
        "courtDrawingTool.counterSpin" to "Controeffetto",
        "courtDrawingTool.forehand" to "Dritto",
        "courtDrawingTool.noAdditionalStrokes" to "Nessun colpo successivo aggiunto finora.",
        "courtDrawingTool.preview" to "Anteprima",
        "courtDrawingTool.previewHint" to "Lo schema appare non appena il primo colpo è configurato completamente.",
        "courtDrawingTool.service" to "Servizio:",
        "courtDrawingTool.serviceTitle" to "Servizio",
        "courtDrawingTool.sidespin" to "Effetto laterale",
        "courtDrawingTool.sideUnderspin" to "Laterale tagliato",
        "courtDrawingTool.spin" to "Effetto:",
        "courtDrawingTool.startLeft" to "sinistra",
        "courtDrawingTool.startMiddle" to "centro",
        "courtDrawingTool.startRight" to "destra",
        "courtDrawingTool.stepAdditionalStrokes" to "4. Colpi successivi",
        "courtDrawingTool.stepAdditionalStrokesHint" to "Aggiungi facoltativamente altre palle come sequenza.",
        "courtDrawingTool.stepFirstStroke" to "2. Primo colpo",
        "courtDrawingTool.stepFirstStrokeHint" to "Definisci il lato e l’effetto della prima palla.",
        "courtDrawingTool.stepStartPosition" to "1. Posizione iniziale",
        "courtDrawingTool.stepStartPositionHint" to "Da quale posizione di servizio inizia l’esercizio?",
        "courtDrawingTool.stepTarget" to "3. Obiettivo",
        "courtDrawingTool.stepTargetHint" to "Scegli la zona bersaglio per il primo colpo.",
        "courtDrawingTool.strokeSide" to "Lato",
        "courtDrawingTool.strokeTypeBlock" to "Block",
        "courtDrawingTool.strokeTypeChopDefense" to "Difesa tagliata",
        "courtDrawingTool.strokeTypeCounter" to "Contro",
        "courtDrawingTool.strokeTypeFlip" to "capovolgere",
        "courtDrawingTool.strokeTypeLabel" to "Tipo di colpo",
        "courtDrawingTool.strokeTypeLobDefense" to "Difesa alta",
        "courtDrawingTool.strokeTypePush" to "Palleggio corto",
        "courtDrawingTool.strokeTypeSmash" to "Schiacciata",
        "courtDrawingTool.strokeTypeTopspin" to "Rotazione superiore",
        "courtDrawingTool.targetBackhandHalfLong" to "Rovescio mezzo-lungo",
        "courtDrawingTool.targetBackhandLong" to "Rovescio lungo",
        "courtDrawingTool.targetBackhandShort" to "Rovescio corto",
        "courtDrawingTool.targetForehandHalfLong" to "Dritto mezzo-lungo",
        "courtDrawingTool.targetForehandLong" to "Dritto lungo",
        "courtDrawingTool.targetForehandShort" to "Dritto corto",
        "courtDrawingTool.targetMiddleHalfLong" to "Centro mezzo-lungo",
        "courtDrawingTool.targetMiddleLong" to "Centro lungo",
        "courtDrawingTool.targetMiddleShort" to "Centro corto",
        "courtDrawingTool.targetPosition" to "Posizione bersaglio:",
        "courtDrawingTool.targetPositionLabel" to "Posizione bersaglio",
        "courtDrawingTool.title" to "Schema di esercizio di tennistavolo",
        "courtDrawingTool.titleLabel" to "Titolo",
        "courtDrawingTool.topspin" to "Topspin",
        "courtDrawingTool.toTarget" to "verso",
        "courtDrawingTool.underspin" to "Taglio",
        "createClub.clubExists" to "L'associazione esiste già.",
        "createClub.clubName" to "nome del club",
        "createClub.create" to "Crea un club",
        "createClub.nameRequired" to "Si prega di dare all'associazione un nome significativo.",
        "createClub.title" to "Crea un club",
        "createClub.unknownError" to "Si è verificato un errore sconosciuto, riprova",
        "csvImport.cancel" to "Cancellare",
        "csvImport.import" to "Importazione",
        "csvImport.title" to "Programma di importazione",
        "csvImport.uploadCsvFile" to "Carica il file CSV",
        "dialogExamples.composableConfirmDetails" to "Questo è un esempio dell'usoConfirm Composable.",
        "dialogExamples.composableConfirmMessage" to "Desideri procedere?",
        "dialogExamples.composableConfirmTitle" to "utilizzare l'esempio Conferma",
        "dialogExamples.composableDialogText" to "Questa finestra di dialogo utilizza useDialog Composable.",
        "dialogExamples.composableDialogText2" to "Questo rende più facile la gestione!",
        "dialogExamples.composableDialogTitle" to "Dialogo con l'usoDialog Composable",
        "dialogExamples.composableUsage" to "Utilizzo componibile",
        "dialogExamples.confirmDeleteMessage" to "Sei sicuro di voler eliminare questa carta regalo?",
        "dialogExamples.confirmDeleteTitle" to "Conferma eliminazione",
        "dialogExamples.confirmDialogs" to "Finestre di dialogo di conferma",
        "dialogExamples.confirmWarningDetails" to "Questa azione non può essere annullata.",
        "dialogExamples.confirmWarningMessage" to "Sei sicuro di voler continuare?",
        "dialogExamples.error" to "Errore",
        "dialogExamples.errorDetails" to "Per favore riprova più tardi.",
        "dialogExamples.errorMessage" to "Si è verificato un errore.",
        "dialogExamples.fullscreenModal" to "Modale a schermo intero",
        "dialogExamples.fullscreenModalText" to "Questa è una finestra di dialogo a schermo intero.",
        "dialogExamples.fullscreenModalText2" to "Occupa quasi tutto lo schermo (90vw x 90vh).",
        "dialogExamples.fullscreenModalTitle" to "Finestra di dialogo modale a schermo intero",
        "dialogExamples.info" to "Informazioni",
        "dialogExamples.infoDialogs" to "Dialoghi informativi",
        "dialogExamples.infoMessage" to "Questo è un messaggio informativo.",
        "dialogExamples.information" to "informazioni",
        "dialogExamples.largeModal" to "Modale grande",
        "dialogExamples.largeModalText" to "Questo è un ottimo dialogo modale.",
        "dialogExamples.largeModalText2" to "Offre più spazio per i contenuti.",
        "dialogExamples.largeModalTitle" to "Ampio dialogo modale",
        "dialogExamples.minimizedDialogs" to "Finestre di dialogo ridotte a icona:",
        "dialogExamples.modalDialogs" to "Dialoghi modali",
        "dialogExamples.multipleDialogs" to "Finestre di dialogo multiple",
        "dialogExamples.nonModalDialog" to "Dialogo non modale",
        "dialogExamples.nonModalDialogs" to "Dialoghi non modali",
        "dialogExamples.nonModalText" to "Questo è un dialogo non modale.",
        "dialogExamples.nonModalText2" to "Puoi spostarlo e aprirne diversi contemporaneamente!",
        "dialogExamples.nonModalTitle" to "Dialogo non modale",
        "dialogExamples.scrollArea" to "Area di scorrimento per molti contenuti...",
        "dialogExamples.secondNonModalText" to "Un altro dialogo non modale!",
        "dialogExamples.secondNonModalTitle" to "Secondo dialogo non modale",
        "dialogExamples.simpleModal" to "Modale semplice",
        "dialogExamples.simpleModalText" to "Questa è una semplice finestra di dialogo modale di medie dimensioni.",
        "dialogExamples.simpleModalText2" to "Fare clic all'esterno o sulla X per chiudere.",
        "dialogExamples.simpleModalTitle" to "Dialogo modale semplice",
        "dialogExamples.success" to "Risultato",
        "dialogExamples.successDetails" to "Tutte le modifiche sono state salvate.",
        "dialogExamples.successMessage" to "L'operazione è stata completata con successo!",
        "dialogExamples.title" to "Esempi di dialoghi",
        "dialogExamples.useConfirmExample" to "utilizzare l'esempio Conferma",
        "dialogExamples.useDialogExample" to "useDialog esempio",
        "dialogExamples.warning" to "Avvertenze",
        "dialogExamples.warningDetails" to "Alcuni campi potrebbero non essere compilati completamente.",
        "dialogExamples.warningMessage" to "I seguenti link potrebbero aiutarti:",
        "dialogManager.close" to "Vicino",
        "dialogManager.minimize" to "minimizzare",
        "dialogManager.noMinimizedDialogs" to "Nessuna finestra di dialogo ridotta a icona",
        "dialogs.confirm.cancel" to "Cancellare",
        "dialogs.confirm.ok" to "OK",
        "dialogs.confirm.title" to "Conferma",
        "dialogs.info.ok" to "OK",
        "dialogs.info.title" to "informazioni",
        "diary.activeTrainingDay" to "Giorno di allenamento attivo",
        "diary.activities" to "Attività",
        "diary.activity" to "Attività",
        "diary.activityDrawing" to "Disegno attività",
        "diary.activityImage" to "Immagine attività",
        "diary.activityNotFound" to "Attività non trovata. Scegline una dalla lista.",
        "diary.activityOrTimeblock" to "Attività / blocco orario",
        "diary.activityPlaceholder" to "Attività",
        "diary.activityRequired" to "Inserisci un’attività.",
        "diary.addActivity" to "Aggiungi attività",
        "diary.addGroup" to "Aggiungi gruppo",
        "diary.addGroupActivity" to "Aggiungi attività di gruppo",
        "diary.addGroupButton" to "+ Gruppo",
        "diary.addTimeblock" to "Blocco orario",
        "diary.all" to "Tutti",
        "diary.applySuggestion" to "Applica suggerimento",
        "diary.assignParticipants" to "Assegna partecipanti",
        "diary.assignParticipantsForGroupActivity" to "Assegna partecipanti all’attività di gruppo",
        "diary.assignShort" to "Assegna",
        "diary.bookAccident" to "Registra incidente",
        "diary.confirmDelete" to "Conferma eliminazione",
        "diary.confirmDeleteDate" to "Vuoi davvero eliminare questa data?",
        "diary.confirmDeleteDateDetails" to "Verranno eliminati anche tutti i dati associati.",
        "diary.confirmDeleteGroup" to "Vuoi davvero eliminare il gruppo \"{name}\"?",
        "diary.createDate" to "Crea data",
        "diary.createDrawing" to "Crea disegno esercizio",
        "diary.createGroups" to "Crea gruppi",
        "diary.createNew" to "Crea",
        "diary.createNewDate" to "Crea nuova data",
        "diary.date" to "Data",
        "diary.dateCannotBeDeleted" to "La data non può essere eliminata",
        "diary.dateCannotBeDeletedDetails" to "Sono ancora presenti contenuti (piano, partecipanti, attività, incidenti o note).",
        "diary.dateNoLongerCurrent" to "La data selezionata non era più attuale. Riprova.",
        "diary.delete" to "Elimina",
        "diary.deleteDate" to "Elimina data",
        "diary.deleteGroup" to "Elimina gruppo",
        "diary.duration" to "Durata",
        "diary.durationExampleLong" to "es. 2x7 o 3*5",
        "diary.durationExampleShort" to "es. 2x7",
        "diary.durationMinutes" to "Durata (min)",
        "diary.editActivity" to "Modifica attività",
        "diary.editGroupActivity" to "Modifica attività di gruppo",
        "diary.editTrainingTimes" to "Modifica orari di allenamento",
        "diary.errorCreatingActivity" to "Errore durante la creazione dell’attività",
        "diary.errorCreatingGroups" to "Errore durante la creazione dei gruppi",
        "diary.errorDeletingGroup" to "Errore durante l’eliminazione del gruppo",
        "diary.errorLoadingPredefinedActivities" to "Errore durante il caricamento delle attività predefinite",
        "diary.errorMarkingForm" to "Errore durante la marcatura del modulo",
        "diary.errorOccurred" to "Si è verificato un errore. Riprova.",
        "diary.existingGroups" to "Gruppi esistenti",
        "diary.filterAbsent" to "Assente",
        "diary.filterAll" to "Tutti",
        "diary.filterExcused" to "Giustificato",
        "diary.filterPresent" to "Presente",
        "diary.filterTest" to "Prova",
        "diary.formHandedOver" to "Modulo di iscrizione consegnato",
        "diary.formMarkedAsHandedOver" to "Modulo di iscrizione contrassegnato come consegnato",
        "diary.freeActivities" to "Attività libere",
        "diary.gallery" to "Galleria membri",
        "diary.galleryCreating" to "Creazione galleria…",
        "diary.group" to "Gruppo...",
        "diary.groupDeletedSuccessfully" to "Gruppo eliminato correttamente.",
        "diary.groupManagement" to "Gestione gruppi",
        "diary.groupsCreated" to "{count} gruppi creati correttamente.",
        "diary.groupsLabel" to "Gruppi",
        "diary.groupsSection" to "Gruppi",
        "diary.leader" to "Responsabile",
        "diary.min" to "Min",
        "diary.minutes" to "Minuti",
        "diary.mustCreateAtLeastTwoGroups" to "La prima volta è necessario creare almeno 2 gruppi.",
        "diary.nextAppointment" to "Prossimo appuntamento",
        "diary.noActiveTrainingDay" to "Nessun giorno di allenamento selezionato.",
        "diary.noEntries" to "Nessuna voce",
        "diary.noFreeActivitiesYet" to "Non sono ancora state registrate attività libere.",
        "diary.noParticipants" to "Nessun partecipante disponibile per questo giorno di allenamento.",
        "diary.numberOfGroups" to "Numero di gruppi",
        "diary.oneGroupAdded" to "1 gruppo aggiunto correttamente.",
        "diary.openPlanItems" to "{count} aperti",
        "diary.openPlanItemsLabel" to "Stato del piano",
        "diary.overallActivity" to "Attività complessiva",
        "diary.participants" to "Partecipanti",
        "diary.participantStatusCancelled" to "Annullato",
        "diary.participantStatusExcused" to "Giustificato",
        "diary.participantStatusNone" to "Nessuno stato",
        "diary.planActivitiesCount" to "Attività pianificate",
        "diary.planAddHint" to "Aggiungi nuovi elementi del piano usando le azioni sopra.",
        "diary.planEmptyState" to "Non è ancora stato inserito nulla nel piano di allenamento.",
        "diary.quickAdd" to "+ Aggiunta rapida",
        "diary.quickCreate" to "Creazione rapida",
        "diary.quickCreateFailed" to "Impossibile creare la giornata di allenamento.",
        "diary.quickCreateNoSlot" to "Nessun giorno di allenamento libero trovato (in base agli orari dei gruppi, entro un anno).",
        "diary.searchParticipants" to "Cerca partecipanti",
        "diary.selectGroup" to "Seleziona gruppo...",
        "diary.selectGroupAndActivity" to "Seleziona un gruppo e inserisci un’attività.",
        "diary.selectParticipantAndNote" to "Seleziona un partecipante e inserisci una nota.",
        "diary.selectTags" to "Seleziona tag",
        "diary.selectTrainingGroup" to "Seleziona gruppo di allenamento",
        "diary.selectTrainingGroupPlaceholder" to "Seleziona...",
        "diary.showImage" to "Mostra immagine/disegno",
        "diary.skipSuggestion" to "Continua senza suggerimento",
        "diary.standardActivities" to "Attività standard",
        "diary.standardActivityAddError" to "Non è stato possibile aggiungere l'attività standard.",
        "diary.standardDurationShort" to "Min",
        "diary.startTime" to "Ora di inizio",
        "diary.statusEmpty" to "Questo giorno di allenamento è ancora vuoto.",
        "diary.statusInProgress" to "Questo giorno di allenamento è preparato solo in parte.",
        "diary.statusOpenShort" to "Aperto",
        "diary.statusReady" to "Orari e piano di allenamento sono impostati.",
        "diary.statusReadyShort" to "Pronto",
        "diary.suggestion" to "Suggerimento",
        "diary.timeblock" to "Blocco orario",
        "diary.timeblocksCount" to "Blocchi orari",
        "diary.title" to "Diario di allenamento",
        "diary.today" to "Oggi",
        "diary.trainingDayAsPDF" to "Scarica il giorno di allenamento in PDF",
        "diary.trainingDayAsPDFShort" to "Giorno di allenamento in PDF",
        "diary.trainingDayChecklist" to "Checklist finale",
        "diary.trainingDaySection" to "Giorno di allenamento",
        "diary.trainingDaySummaryPdfShort" to "Riepilogo partecipanti in PDF",
        "diary.trainingEnd" to "Fine allenamento",
        "diary.trainingPlan" to "Piano di allenamento",
        "diary.trainingPlanAsPDF" to "Piano di allenamento in PDF",
        "diary.trainingPlanPdfShort" to "Programma in PDF",
        "diary.trainingStart" to "Inizio allenamento",
        "diary.trainingTimesUpdated" to "Orari di allenamento aggiornati correttamente.",
        "diary.trainingWindow" to "Fascia di allenamento",
        "diary.trainingWindowUnset" to "Non ancora impostato",
        "diary.unassignedPlanItems" to "{count} aperti",
        "diary.updateTimes" to "Aggiorna orari",
        "errors.ERROR_ACTIVITY_IMAGE_DELETE_FAILED" to "Errore nell'eliminazione dell'immagine.",
        "errors.ERROR_BAD_REQUEST" to "Richiesta non valida.",
        "errors.ERROR_CLUB_ALREADY_EXISTS" to "L'associazione esiste già.",
        "errors.ERROR_CLUB_NAME_REQUIRED" to "Si prega di dare all'associazione un nome significativo.",
        "errors.ERROR_CLUB_NAME_TOO_SHORT" to "Si prega di dare all'associazione un nome significativo.",
        "errors.ERROR_CLUB_NOT_FOUND" to "Club non trovato.",
        "errors.ERROR_DIARY_ACTIVITY_PARTICIPANTS_UPDATE_FAILED" to "Errore durante l'aggiornamento dei partecipanti all'attività",
        "errors.ERROR_DIARY_ASSIGN_ALL_PARTICIPANTS_FAILED" to "Errore nell'assegnazione di tutti i partecipanti",
        "errors.ERROR_DIARY_ASSIGN_GROUP_FAILED" to "Gruppo di mappatura degli errori",
        "errors.ERROR_DIARY_DATE_NOT_FOUND" to "Data non trovata",
        "errors.ERROR_DIARY_DATE_UPDATED" to "La data non era (non più) disponibile. Il selettore della data è stato aggiornato. Per favore riprova.",
        "errors.ERROR_DIARY_GROUP_ASSIGNMENT_UPDATE_FAILED" to "Errore durante l'aggiornamento dell'assegnazione del gruppo",
        "errors.ERROR_DIARY_IMAGE_LOAD_FAILED" to "IMPOSSIBILE CARICARE L'IMMAGINE",
        "errors.ERROR_DIARY_MEMBER_CREATE_FAILED" to "Errore durante la creazione del membro",
        "errors.ERROR_DIARY_NO_EXERCISE_DATA" to "Nessun dato sull'allenamento ricevuto",
        "errors.ERROR_DIARY_NO_PARTICIPANTS" to "Nessun partecipante disponibile per questa giornata di formazione.",
        "errors.ERROR_DIARY_PARTICIPANT_ASSIGN_FAILED" to "Non è stato possibile assegnare i partecipanti.",
        "errors.ERROR_DIARY_PARTICIPANT_GROUP_ASSIGNMENT_UPDATE_FAILED" to "Errore durante l'aggiornamento dell'assegnazione del gruppo di partecipanti",
        "errors.ERROR_DIARY_PDF_GENERATION_FAILED" to "Errore durante la generazione del PDF.",
        "errors.ERROR_DIARY_STATS_LOAD_FAILED" to "Impossibile caricare le statistiche.",
        "errors.ERROR_FORBIDDEN" to "Autorizzazione negata.",
        "errors.ERROR_GROUP_ALREADY_EXISTS" to "Esiste già un gruppo con questo nome.",
        "errors.ERROR_GROUP_CANNOT_RENAME_PRESET" to "I gruppi predefiniti non possono essere rinominati.",
        "errors.ERROR_GROUP_INVALID_PRESET_TYPE" to "Tipo di preimpostazione non valido.",
        "errors.ERROR_GROUP_NAME_REQUIRED" to "Inserisci il nome del gruppo.",
        "errors.ERROR_GROUP_NOT_FOUND" to "Gruppo non trovato.",
        "errors.ERROR_INTERNAL_SERVER_ERROR" to "Si è verificato un errore interno del server.",
        "errors.ERROR_INVALID_PASSWORD" to "Password errata.",
        "errors.ERROR_LOG_NOT_FOUND" to "Voce di registro non trovata",
        "errors.ERROR_LOGIN_FAILED" to "Accesso non riuscito.",
        "errors.ERROR_MEMBER_ALREADY_EXISTS" to "Il membro esiste già",
        "errors.ERROR_MEMBER_FIRSTNAME_REQUIRED" to "Il nome è obbligatorio.",
        "errors.ERROR_MEMBER_LASTNAME_REQUIRED" to "Il cognome è obbligatorio.",
        "errors.ERROR_MEMBER_NOT_FOUND" to "Membri non trovati",
        "errors.ERROR_MEMBER_TRANSFER_BULK_FAILED" to "Errore di trasferimento collettivo: {message}",
        "errors.ERROR_MYTISCHTENNIS_ACCOUNT_NOT_LINKED" to "Nessun account myTischtennis collegato.",
        "errors.ERROR_MYTISCHTENNIS_CAPTCHA_REQUIRED" to "CAPTCHA obbligatorio. MyTischtennis ora utilizza un CAPTCHA quando effettua l'accesso. Accedi direttamente a mytischtennis.de per risolvere il CAPTCHA o contatta l'assistenza.",
        "errors.ERROR_MYTISCHTENNIS_INVALID_PASSWORD" to "Password myTischtennis non valida.",
        "errors.ERROR_MYTISCHTENNIS_LOGIN_FAILED" to "Accesso non riuscito. Controlla le tue credenziali.",
        "errors.ERROR_MYTISCHTENNIS_NO_PASSWORD_SAVED" to "Nessuna password salvata e sessione scaduta. Inserisci la tua password.",
        "errors.ERROR_MYTISCHTENNIS_PASSWORD_NOT_SAVED" to "Nessuna password salvata. Inserisci la tua password.",
        "errors.ERROR_MYTISCHTENNIS_SESSION_EXPIRED" to "Sessione scaduta. Effettua nuovamente l'accesso.",
        "errors.ERROR_MYTISCHTENNIS_USER_NOT_FOUND" to "Utente myTischtennis non trovato.",
        "errors.ERROR_NOT_FOUND" to "Non trovato.",
        "errors.ERROR_OFFICIAL_TOURNAMENT_PDF_UPLOAD" to "Errore durante il caricamento del PDF.",
        "errors.ERROR_SESSION_EXPIRED" to "Sessione scaduta.",
        "errors.ERROR_TEAM_LINK_TO_LEAGUE_REQUIRED" to "Assegna prima un campionato alla squadra in modo che i documenti possano essere elaborati.",
        "errors.ERROR_TEAM_NOT_LINKED_TO_LEAGUE" to "Questa squadra non è assegnata a nessun campionato.",
        "errors.ERROR_TEAM_PDF_LOAD_FAILED" to "Impossibile caricare il PDF",
        "errors.ERROR_TEAM_STATS_LOAD_FAILED" to "Impossibile caricare le statistiche",
        "errors.ERROR_TOURNAMENT_CLASS_NAME_REQUIRED" to "Inserisci il nome della classe!",
        "errors.ERROR_TOURNAMENT_NO_DATE" to "Nessuna data del torneo disponibile!",
        "errors.ERROR_TOURNAMENT_NO_PARTICIPANTS" to "Nessun partecipante trovato nella giornata di formazione per questa data!",
        "errors.ERROR_TOURNAMENT_NO_TRAINING_DAY" to "Nessun giorno di allenamento trovato per {date}!",
        "errors.ERROR_TOURNAMENT_NO_VALID_PARTICIPANTS" to "Nessun partecipante valido trovato nella giornata di formazione per questa data!",
        "errors.ERROR_TOURNAMENT_NOT_FOUND" to "Torneo non trovato",
        "errors.ERROR_TOURNAMENT_PDF_GENERATION_FAILED" to "Errore durante la generazione del PDF",
        "errors.ERROR_TOURNAMENT_SELECT_FIRST" to "Seleziona prima un torneo.",
        "errors.ERROR_TRAINING_STATS_LOAD_FAILED" to "Errore durante il caricamento delle statistiche di formazione",
        "errors.ERROR_UNAUTHORIZED" to "Non autorizzato.",
        "errors.ERROR_UNKNOWN_ERROR" to "Si è verificato un errore sconosciuto.",
        "errors.ERROR_USER_NOT_FOUND" to "Utente non trovato.",
        "errors.ERROR_VALIDATION_FAILED" to "Convalida non riuscita",
        "errors.SUCCESS_DIARY_GROUP_ASSIGNMENT_UPDATED" to "Mappatura dei gruppi aggiornata",
        "errors.SUCCESS_DIARY_MEMBER_CREATED" to "Il membro \"{name}\" è stato creato e aggiunto con successo!",
        "errors.SUCCESS_OFFICIAL_TOURNAMENT_PDF_UPLOAD" to "Caricamento riuscito.",
        "home.authenticatedFeatures.keepDiary" to "Tieni un diario di allenamento",
        "home.authenticatedFeatures.keepDiaryDesc" to "Documentare le attività di formazione, i partecipanti, le attività e le note per ogni giornata di formazione.",
        "home.authenticatedFeatures.manageMembers" to "Gestisci i membri",
        "home.authenticatedFeatures.manageMembersDesc" to "Gestisci i membri del tuo club, crea gruppi di formazione e tieni traccia di tutti i partecipanti.",
        "home.authenticatedFeatures.manageTournaments" to "Gestisci i tornei",
        "home.authenticatedFeatures.manageTournamentsDesc" to "Crea tornei interni e aperti, importa tornei ufficiali e gestisci le iscrizioni.",
        "home.authenticatedFeatures.myTischtennisIntegration" to "Integrazione di MyTable Tennis",
        "home.authenticatedFeatures.myTischtennisIntegrationDesc" to "Sincronizza automaticamente i risultati di gioco e le statistiche con MyTischtennis.de.",
        "home.authenticatedFeatures.pdfExport" to "Esportazione PDF",
        "home.authenticatedFeatures.pdfExportDesc" to "Esporta le giornate di formazione in PDF con partecipanti, attività e statistiche.",
        "home.authenticatedFeatures.statistics" to "Statistiche e valutazioni",
        "home.authenticatedFeatures.statisticsDesc" to "Ottieni panoramiche dettagliate sulla formazione e sulla partecipazione, nonché statistiche sulle attività.",
        "home.authenticatedFeatures.teamManagement" to "Gestione della squadra",
        "home.authenticatedFeatures.teamManagementDesc" to "Gestisci squadre, campionati, partite e risultati per il tuo club.",
        "home.authenticatedFeatures.trainingGroups" to "Gruppi e orari di allenamento",
        "home.authenticatedFeatures.trainingGroupsDesc" to "Organizza gruppi di formazione, definisci i tempi di formazione e gestisci le assegnazioni dei gruppi.",
        "home.faq" to "Domande frequenti",
        "home.faqFree.answer" to "Sì, puoi iniziare gratuitamente. Le estensioni possono seguire in seguito.",
        "home.faqFree.question" to "L'uso è gratuito?",
        "home.faqInstallation.answer" to "No, è un'applicazione web. Lo usi direttamente nel browser: su desktop, tablet e smartphone.",
        "home.faqInstallation.question" to "Ho bisogno di installazione?",
        "home.faqMyTischtennis.answer" to "Sì, dopo la configurazione l'applicazione si sincronizza automaticamente con MyTischtennis.de e importa risultati e statistiche di gioco.",
        "home.faqMyTischtennis.question" to "L'integrazione MyTischtennis funziona automaticamente?",
        "home.faqPermissions.answer" to "Esistono quattro ruoli: amministratore, coach, team leader e membro. Ogni ruolo ha autorizzazioni specifiche che possono essere personalizzate.",
        "home.faqPermissions.question" to "Come funziona il sistema di autorizzazione?",
        "home.faqPrivacy.answer" to "Facciamo affidamento sull'economia dei dati, sulle approvazioni trasparenti, sull'accesso basato sui ruoli e sui registri delle attività completi. L'applicazione è conforme al GDPR.",
        "home.faqPrivacy.question" to "E la protezione dei dati?",
        "home.faqTournaments.answer" to "Puoi gestire tornei interni, tornei aperti e tornei ufficiali (ad esempio delle associazioni). I tornei ufficiali possono essere importati.",
        "home.faqTournaments.question" to "Quali tipi di tornei sono supportati?",
        "home.faqTrainingGroups.answer" to "Sì, puoi creare gruppi di formazione, definire i tempi di formazione e assegnare i membri ai gruppi. Il diario dell'allenamento suggerisce automaticamente i gruppi e gli orari adatti.",
        "home.faqTrainingGroups.question" to "Posso gestire gruppi e orari degli allenamenti?",
        "home.features.activityLog" to "Registro delle attività",
        "home.features.activityLogDesc" to "Registrazione completa di tutte le azioni per trasparenza e tracciabilità.",
        "home.features.keepDiary" to "Tieni un diario di allenamento",
        "home.features.keepDiaryDesc" to "Documentare il contenuto, l'ambito e la frequenza di ciascuna unità in modo comprensibile e strutturato.",
        "home.features.manageMembers" to "Gestisci i membri",
        "home.features.manageMembersDesc" to "Crea profili dei membri, forma gruppi e mantieni aggiornati gli stati di contatto e approvazione.",
        "home.features.myTischtennisIntegration" to "Integrazione di MyTable Tennis",
        "home.features.myTischtennisIntegrationDesc" to "Sincronizzazione automatica con MyTischtennis.de per risultati di gioco e statistiche.",
        "home.features.officialTournaments" to "Tornei ufficiali",
        "home.features.officialTournamentsDesc" to "Importa e gestisci tornei ufficiali, gestisci iscrizioni e risultati.",
        "home.features.organizeSchedules" to "Organizza i piani di gioco",
        "home.features.organizeSchedulesDesc" to "Pianifica giochi, tornei ed eventi inclusi gruppi, round e risultati.",
        "home.features.pdfExport" to "Esportazione PDF",
        "home.features.pdfExportDesc" to "Esporta le giornate di formazione in PDF con partecipanti, attività e statistiche.",
        "home.features.permissionSystem" to "Sistema di autorizzazione",
        "home.features.permissionSystemDesc" to "Accesso basato sui ruoli (amministratore, allenatore, capitano della squadra, membro) con autorizzazioni individuali.",
        "home.features.predefinedActivities" to "Attività predefinite",
        "home.features.predefinedActivitiesDesc" to "Utilizza i modelli per esercizi ricorrenti e velocizza la documentazione.",
        "home.features.security" to "Sicurezza e GDPR",
        "home.features.securityDesc" to "Architettura rispettosa della protezione dei dati, approvazioni dei membri e accesso trasparente.",
        "home.features.statistics" to "Statistiche e valutazione",
        "home.features.statisticsDesc" to "Ricevi panoramiche sulla formazione e sulla partecipazione, riconosci lo sviluppo e pianifica in modo specifico.",
        "home.features.teamManagement" to "Gestione della squadra",
        "home.features.teamManagementDesc" to "Gestisci squadre, campionati, partite e risultati per il tuo club.",
        "home.features.trainingGroups" to "Gruppi e orari di allenamento",
        "home.features.trainingGroupsDesc" to "Organizza gruppi di formazione, definisci i tempi di formazione e gestisci le assegnazioni dei gruppi.",
        "home.forWhom" to "A chi è rivolto il diario di allenamento?",
        "home.forWhomText" to "TrainingDiary è la piattaforma completa per club, dipartimenti e squadre di allenatori. Combina la gestione dei membri con gruppi e orari di allenamento, un diario dettagliato degli allenamenti, un'organizzazione completa dei tornei (tornei interni, aperti e ufficiali), la gestione della squadra con l'integrazione dei campionati, la sincronizzazione MyTischtennis, statistiche e valutazioni significative nonché un sistema di autorizzazione flessibile in una moderna applicazione web. Attraverso ruoli chiari (amministratore, formatore, team leader, membro) e autorizzazioni individuali, i responsabili mantengono il controllo, mentre i membri possono partecipare in modo autodeterminato. Ideale per gli sport di squadra, di racchetta e individuali, dal livello junior a quello avanzato. Conforme al GDPR con approvazioni trasparenti e registro completo delle attività.",
        "home.haveAccount" to "Ho già un account",
        "home.heroFeatures.memberManagement" to "Gestione dei membri e dei gruppi",
        "home.heroFeatures.myTischtennis" to "Integrazione di MyTable Tennis",
        "home.heroFeatures.statistics" to "Statistiche e valutazioni",
        "home.heroFeatures.teamManagement" to "Gestione della squadra e campionati",
        "home.heroFeatures.tournaments" to "Tornei (interni, aperti, ufficiali)",
        "home.heroFeatures.trainingDiary" to "Diario e documentazione dell'allenamento",
        "home.heroFeatures.trainingGroups" to "Gruppi di allenamento e tempi di allenamento",
        "home.heroSubtitle" to "TrainingDiary è la soluzione completa per i club: gestione dei membri, gruppi di allenamento, tempi di allenamento, diario degli allenamenti, organizzazione dei tornei, gestione della squadra, integrazione MyTable Tennis, statistiche e altro ancora - conforme al GDPR e facile da usare.",
        "home.heroTitle" to "Gestione del club, pianificazione degli allenamenti e tornei: tutto in un unico posto",
        "home.howItWorks" to "Ecco come funziona",
        "home.registerNow" to "Registrati ora gratuitamente",
        "home.rolesAndPrivacy" to "Ruoli, autorizzazioni e GDPR",
        "home.startFree" to "Inizia gratuitamente",
        "home.step1.description" to "Crea un account gratuitamente e attivalo via e-mail.",
        "home.step1.title" to "Registro",
        "home.step2.description" to "Crea il tuo club, invita membri e imposta gruppi.",
        "home.step2.title" to "Crea un club",
        "home.step3.description" to "Pianifica gli appuntamenti, documenta la formazione e monitora i progressi.",
        "home.step3.title" to "Pianifica e documenta",
        "home.welcome" to "Benvenuti nel diario di allenamento",
        "home.welcomeBack" to "Bentornato! Hai effettuato l'accesso con successo.",
        "home.whatCanYouDo" to "Cosa puoi fare con il diario di allenamento?",
        "imageDialog.close" to "Vicino",
        "imageDialog.noImageAvailable" to "Nessuna immagine disponibile",
        "imageDialog.title" to "Schermo",
        "imageViewer.camera" to "Telecamera",
        "imageViewer.delete" to "Eliminare",
        "imageViewer.deleteImage" to "Elimina immagine",
        "imageViewer.nextImage" to "Immagine successiva",
        "imageViewer.noImageAvailable" to "Nessuna immagine disponibile",
        "imageViewer.previousImage" to "immagine precedente",
        "imageViewer.rotateLeft" to "Ruota di 90° a sinistra",
        "imageViewer.rotateRight" to "Ruota di 90° a destra",
        "imageViewer.selectFiles" to "Seleziona File",
        "imageViewer.setAsPrimary" to "imposta come immagine principale",
        "imageViewer.setAsPrimaryButton" to "Imposta l'immagine in primo piano",
        "imprint.contact" to "Contatto",
        "imprint.serviceProvider" to "Nome del fornitore di servizi",
        "imprint.title" to "Avviso legale",
        "languages.de" to "Deutsch (Tedesco)",
        "languages.de-CH" to "Schwiizerdütsch (Tedesco svizzero)",
        "languages.en-AU" to "English (Inglese (AU))",
        "languages.en-GB" to "English (Inglese (GB))",
        "languages.en-US" to "English (Inglese (US))",
        "languages.es" to "Español (Spagnolo)",
        "languages.fil" to "filippino",
        "languages.fr" to "Français (Francese)",
        "languages.it" to "Italiano",
        "languages.ja" to "日本語 (Giapponese)",
        "languages.pl" to "Polski (Polacco)",
        "languages.th" to "ไทย (Tailandese)",
        "languages.tl" to "Tagalog",
        "languages.zh" to "中文 (Cinese)",
        "legal.backToHome" to "Torna alla home page",
        "legal.imprint" to "Avviso legale",
        "legal.privacyPolicy" to "Politica sulla riservatezza",
        "logs.actions" to "Azioni",
        "logs.all" to "Tutto",
        "logs.apiRequests" to "Richieste API",
        "logs.applyFilters" to "Applica filtro",
        "logs.backend" to "Impostazioni del back-end",
        "logs.clearFilters" to "Ripristina",
        "logs.cronJobs" to "Lavori Cron",
        "logs.details" to "Details",
        "logs.displayed" to "visualizzato",
        "logs.displayedLabel" to "Visualizzato",
        "logs.error" to "Errore",
        "logs.errorLabel" to "Errore",
        "logs.errorLoading" to "Errore durante il caricamento dei log",
        "logs.executionTime" to "Tempo di esecuzione",
        "logs.from" to "Da",
        "logs.httpMethod" to "Metodo HTTP",
        "logs.justNow" to "proprio adesso",
        "logs.loadingLogs" to "Caricamento registri...",
        "logs.logDetails" to "Dettagli del registro",
        "logs.logDetailsLabels.error" to "Errore",
        "logs.logDetailsLabels.executionTime" to "Tempo di esecuzione",
        "logs.logDetailsLabels.ip" to "IP",
        "logs.logDetailsLabels.method" to "Metodo",
        "logs.logDetailsLabels.path" to "sentiero",
        "logs.logDetailsLabels.requestBody" to "Richiedi corpo",
        "logs.logDetailsLabels.responseBody" to "Corpo di risposta",
        "logs.logDetailsLabels.schedulerJob" to "Lavoro di pianificazione",
        "logs.logDetailsLabels.status" to "stato",
        "logs.logDetailsLabels.time" to "Tempo",
        "logs.logDetailsLabels.type" to "Tipo",
        "logs.logType" to "Tipo di registro",
        "logs.logTypeLabels.api_request" to "Richiesta API",
        "logs.logTypeLabels.cron_job" to "Lavoro Cron",
        "logs.logTypeLabels.manual" to "Manuale",
        "logs.logTypeLabels.scheduler" to "pianificatore",
        "logs.manual" to "Esecuzioni manuali",
        "logs.method" to "Metodo",
        "logs.minutesAgo" to "{n} minuti fa",
        "logs.mytischtennis" to "mioTennis da tavolo",
        "logs.next" to "Prossimo",
        "logs.of" to "di",
        "logs.ownBackend" to "Proprio back-end",
        "logs.page" to "Pagina",
        "logs.path" to "sentiero",
        "logs.pathPlaceholder" to "per esempio. /api/diario",
        "logs.previous" to "Precedente",
        "logs.recordsFound" to "Documenti trovati",
        "logs.scheduler" to "pianificatore",
        "logs.secondsAgo" to "{n} secondi fa",
        "logs.status" to "stato",
        "logs.subtitle" to "Panoramica di tutte le richieste, risposte ed esecuzioni API",
        "logs.successfullyLoaded" to "Caricato con successo",
        "logs.time" to "Tempo",
        "logs.title" to "Registri di sistema",
        "logs.to" to "A",
        "logs.total" to "Totale",
        "logs.type" to "Tipo",
        "matchReport.analyzeNuscore" to "analisi del nuscore",
        "matchReport.createLocalCopy" to "Crea copia locale",
        "matchReport.hideAnalyzer" to "Nascondi analizzatore",
        "matchReportApi.availablePlayers" to "Giocatori disponibili",
        "matchReportApi.bothTeamsAppeared" to "Entrambe le squadre hanno gareggiato",
        "matchReportApi.clickToRemove" to "Fare clic per rimuovere",
        "matchReportApi.completed" to "Chiuso",
        "matchReportApi.completion" to "Completamento",
        "matchReportApi.endTime" to "ora di fine",
        "matchReportApi.errorLoading" to "Errore durante il caricamento dei dati",
        "matchReportApi.general" to "Generale",
        "matchReportApi.greeting" to "Accogliente",
        "matchReportApi.guestLineup" to "Configurazione ospite",
        "matchReportApi.guestPin" to "PIN Club Ospiti",
        "matchReportApi.guestTeamNotAppeared" to "La squadra ospite {team} non ha gareggiato",
        "matchReportApi.homeLineup" to "Installazione a casa",
        "matchReportApi.homePin" to "PIN del club di casa",
        "matchReportApi.homeTeamNotAppeared" to "La squadra di casa {team} non ha gareggiato",
        "matchReportApi.loading" to "Caricamento dati del resoconto della partita...",
        "matchReportApi.noLineupData" to "Nessun dato di installazione disponibile",
        "matchReportApi.notAppeared" to "Non partecipato per tutti",
        "matchReportApi.pending" to "In attesa di",
        "matchReportApi.pinInput" to "Inserimento del PIN",
        "matchReportApi.playSystem" to "Sistema di gioco",
        "matchReportApi.rank" to "Cerchio",
        "matchReportApi.result" to "Immissione dei risultati",
        "matchReportApi.retry" to "Riprova",
        "matchReportApi.selectedPlayers" to "Giocatore selezionato",
        "matchReportApi.setCurrentTime" to "Imposta l'ora corrente",
        "matchReportApi.signLineup" to "Installazione del segno",
        "matchReportApi.startTime" to "ora di inizio",
        "matchReportApi.status" to "stato",
        "matchReportApi.vs" to "vs",
        "matchReportHeaderActions.copied" to "Copiato!",
        "matchReportHeaderActions.copyError" to "Errore durante la copia del pin",
        "matchReportHeaderActions.copyPin" to "Copia PIN",
        "matchReportHeaderActions.copyPinTitle" to "Copia negli appunti",
        "matchReportHeaderActions.insertPin" to "INSERISCI IL TUO PIN",
        "matchReportHeaderActions.insertPinTitle" to "Inserimento automatico",
        "matchReportHeaderActions.noPinAvailable" to "Nessun PIN DISPONIBILE",
        "memberActivities.activity" to "Esercizio",
        "memberActivities.all" to "Tutto",
        "memberActivities.close" to "Vicino",
        "memberActivities.dates" to "Dati",
        "memberActivities.frequency" to "Frequenza",
        "memberActivities.last3Months" to "Ultimi 3 mesi",
        "memberActivities.last4Weeks" to "ultimi 2 mesi",
        "memberActivities.last6Months" to "ultimo semestre",
        "memberActivities.lastYear" to "L'anno scorso",
        "memberActivities.loading" to "Caricamento esercizi...",
        "memberActivities.more" to "altro",
        "memberActivities.noActivities" to "Nessun esercizio trovato nel periodo selezionato.",
        "memberActivities.period" to "Periodo di tempo",
        "memberActivities.showLess" to "mostrare di meno",
        "memberActivities.title" to "Esercizi di",
        "memberGallery.imageSize" to "Dimensione dell'immagine",
        "memberGallery.loading" to "Caricamento galleria...",
        "memberGallery.noImage" to "Nessuna immagine",
        "memberGallery.noMembersWithImages" to "Nessun membro trovato con immagini.",
        "memberGallery.title" to "Galleria dei membri",
        "memberGallery.titleWithDate" to "Galleria membri: fai clic su un'immagine per aggiungerla come partecipante",
        "memberNotes.add" to "Aggiungere",
        "memberNotes.memberImage" to "Membro immagine",
        "memberNotes.newNote" to "Nuova nota",
        "memberNotes.notes" to "Note",
        "memberNotes.phone" to "Telefono n.",
        "memberNotes.selectTags" to "Seleziona Tag",
        "memberNotes.tags" to "Tags",
        "memberNotes.title" to "Note per",
        "members.actions" to "Azioni",
        "members.active" to "Attivo",
        "members.activeMembers" to "Membri attivi",
        "members.addEmail" to "Aggiungi indirizzo e-mail",
        "members.addGroup" to "Aggiungi gruppo...",
        "members.addPhone" to "Aggiungi numero di telefono",
        "members.address" to "Indirizzo",
        "members.adultReleaseApproved" to "Approvato per adulti",
        "members.adultReserveApproved" to "Riserva adulti",
        "members.adults" to "Adulti (20+)",
        "members.age" to "Età",
        "members.ageFromPlaceholder" to "da",
        "members.ageGroup" to "Fascia d’età",
        "members.ageRange" to "Età da - a",
        "members.ageToPlaceholder" to "a",
        "members.batchFormsMarkedEmpty" to "Nessun modulo non verificato nella selezione attuale.",
        "members.batchFormsMarkedSuccess" to "{count} modulo/i contrassegnato/i come verificato/i.",
        "members.batchMarkedRegularEmpty" to "Nessun membro in prova nella selezione attuale.",
        "members.batchMarkedRegularSuccess" to "{count} membro/i in prova contrassegnato/i come regolare/i.",
        "members.batchPartialFailure" to "{success} riusciti, {failed} falliti.",
        "members.birthdate" to "Data di nascita",
        "members.bulkActions" to "Azioni di gruppo",
        "members.camera" to "Fotocamera",
        "members.change" to "Modifica",
        "members.city" to "Città",
        "members.clearFields" to "Svuota campi",
        "members.clearFilters" to "Reimposta filtri",
        "members.clickTtRequestAction" to "Richiedi autorizzazione Click-TT",
        "members.clickTtRequestConfirm" to "Vuoi avviare la richiesta Click-TT automatizzata per {name}?",
        "members.clickTtRequestError" to "Impossibile inviare la richiesta Click-TT.",
        "members.clickTtRequestFailedLog" to "Richiesta Click-TT non riuscita",
        "members.clickTtRequestHint" to "La richiesta viene elaborata automaticamente dal workflow Click-TT del backend.",
        "members.clickTtRequestPending" to "Richiesta Click-TT in corso",
        "members.clickTtRequestPendingShort" to "In corso...",
        "members.clickTtRequestShort" to "Fare clic su TT",
        "members.clickTtRequestSuccess" to "Accedi ancora a click-tt e invia lì la richiesta.",
        "members.clickTtRequestTitle" to "Avvia richiesta Click-TT",
        "members.clickTtSubmitted" to "Click-TT inviato",
        "members.closeEditor" to "Chiudi editor",
        "members.composeEmail" to "Prepara e-mail",
        "members.contact" to "Contatto",
        "members.copyContactSummary" to "Copia riepilogo contatti",
        "members.copyContactSummarySuccess" to "Riepilogo contatti copiato negli appunti.",
        "members.copyEmails" to "Copia e-mail",
        "members.copyEmailsEmpty" to "Nessun indirizzo e-mail nella selezione attuale.",
        "members.copyEmailsSuccess" to "Elenco e-mail copiato negli appunti.",
        "members.copyPhones" to "Copia telefoni",
        "members.copyPhonesEmpty" to "Nessun numero di telefono nella selezione attuale.",
        "members.copyPhonesSuccess" to "Elenco telefonico copiato negli appunti.",
        "members.create" to "Crea",
        "members.createNewMember" to "Crea nuovo membro",
        "members.dataIssueAddress" to "Indirizzo mancante",
        "members.dataIssueBirthdate" to "Data di nascita mancante",
        "members.dataIssueCity" to "Città mancante",
        "members.dataIssueEmail" to "E-mail mancante",
        "members.dataIssueGender" to "Genere non definito",
        "members.dataIssuePhone" to "Telefono mancante",
        "members.dataIssuePostalCode" to "CAP mancante",
        "members.dataIssueStreet" to "Via mancante",
        "members.dataIssueTrainingGroup" to "Gruppo di allenamento mancante",
        "members.dataQuality" to "Qualità dei dati",
        "members.dataQualityComplete" to "Dati completi",
        "members.deactivateMember" to "Disattiva membro",
        "members.deactivateMemberConfirm" to "Vuoi davvero disattivare \"{name}\"?",
        "members.deactivateMemberTitle" to "Disattiva membro",
        "members.deleteImageConfirm" to "Vuoi davvero eliminare questa immagine?",
        "members.deleteImageTitle" to "Elimina immagine",
        "members.editHint" to "Un clic su una riga apre l’editor.",
        "members.editMember" to "Modifica membro",
        "members.editorAssignTrainingGroupHint" to "Assegna almeno un gruppo di allenamento.",
        "members.editorCreateHint" to "Crea un nuovo membro e inserisci subito i dati di contatto.",
        "members.editorEditHint" to "Modifica i dati di {name}.",
        "members.editorRecommendedEntry" to "Voce consigliata",
        "members.emailAddress" to "Indirizzo e-mail",
        "members.emailAddressShort" to "E-mail",
        "members.emails" to "Indirizzi e-mail",
        "members.errorAddingToGroup" to "Errore durante l’aggiunta al gruppo",
        "members.errorDeactivatingMember" to "Errore durante la disattivazione del membro",
        "members.errorDeletingImage" to "Impossibile eliminare l’immagine",
        "members.errorLoadingImage" to "Errore durante il caricamento dell’immagine",
        "members.errorLoadingMembers" to "Impossibile caricare la lista dei membri.",
        "members.errorLoadingTrainingParticipations" to "Errore durante il caricamento delle partecipazioni",
        "members.errorMarkingForm" to "Errore durante la marcatura del modulo.",
        "members.errorRemovingFromGroup" to "Errore durante la rimozione dal gruppo",
        "members.errorRemovingTestMembership" to "Errore durante la rimozione dell’iscrizione di prova.",
        "members.errorRotatingImage" to "Errore durante la rotazione dell’immagine",
        "members.errorSavingMember" to "Errore durante il salvataggio del membro",
        "members.errorSettingPrimaryImage" to "Impossibile impostare l’immagine principale",
        "members.errorTransfer" to "Errore durante il trasferimento",
        "members.errorUpdatingRatings" to "Errore durante l’aggiornamento dei valori TTR/QTTR",
        "members.errorUploadingImage" to "Impossibile caricare l’immagine",
        "members.exercises" to "Esercizi",
        "members.exportCsv" to "Esporta CSV",
        "members.exportCsvFile" to "selezione-membri.csv",
        "members.exportEmails" to "E-mail",
        "members.exportMembersSelected" to "membri attualmente selezionati",
        "members.exportPhones" to "Telefono",
        "members.exportPreview" to "Anteprima esportazione",
        "members.exportPreviewEmpty" to "Nessun membro nella selezione attuale",
        "members.exportPreviewNames" to "Anteprima",
        "members.exportReachableByEmail" to "con indirizzo e-mail",
        "members.exportReachableByPhone" to "con numero di telefono",
        "members.firstName" to "Nome",
        "members.formHandedOver" to "Modulo di iscrizione consegnato",
        "members.formMarkedAsHandedOver" to "Modulo di iscrizione contrassegnato come consegnato.",
        "members.gender" to "Genere",
        "members.genderDiverse" to "Diverso",
        "members.genderFemale" to "Femminile",
        "members.genderMale" to "Maschile",
        "members.genderUnknown" to "Sconosciuto",
        "members.generatePhoneList" to "Genera elenco telefonico",
        "members.groupPhotoCrop" to "Elabora foto di gruppo",
        "members.groupPhotoCropSaved" to "Foto del membro salvata dalla foto di gruppo.",
        "members.image" to "Immagine",
        "members.imageDeleted" to "Immagine eliminata.",
        "members.imageInternet" to "Immagine (web?)",
        "members.imagePreview" to "Anteprima immagine membro",
        "members.imageUpdated" to "Immagine aggiornata",
        "members.inactive" to "inattivo",
        "members.inactiveMembers" to "Membri inattivi",
        "members.j11" to "U11",
        "members.j13" to "U13",
        "members.j15" to "U15",
        "members.j17" to "U17 (17 anni o meno)",
        "members.j19" to "U19",
        "members.j9" to "U9",
        "members.lastName" to "Cognome",
        "members.lastTrainingFilter" to "Ultimo allenamento",
        "members.lastTrainingFilterHasDate" to "Con data registrata",
        "members.lastTrainingFilterHint" to "Tabella: stagione corrente nella colonna AK. Dettaglio completo (entrambe le stagioni, ultimo allenamento, partecipazioni) al passaggio del mouse sulla riga.",
        "members.lastTrainingFilterNoDate" to "Senza ultimo allenamento",
        "members.lastTrainingFilterNotInTraining" to "« Non più in allenamento »",
        "members.loadingMembers" to "Caricamento membri...",
        "members.m11" to "G11",
        "members.m13" to "G13",
        "members.m15" to "G15",
        "members.m19" to "G19",
        "members.m9" to "G9",
        "members.markFormReceived" to "Segna modulo come verificato",
        "members.markFormsForSelection" to "Verifica moduli della selezione",
        "members.markRegular" to "Segna come regolare",
        "members.markRegularForSelection" to "Segna la selezione come regolare",
        "members.memberDeactivated" to "Membro disattivato",
        "members.memberDetails" to "Dettagli membro",
        "members.memberFormHandedOver" to "Modulo di iscrizione consegnato",
        "members.memberImage" to "Immagine membro",
        "members.memberImages" to "Immagini membro",
        "members.memberInfo" to "Informazioni membro",
        "members.memberScope" to "Ambito membri",
        "members.missingTtrHistoryId" to "Nessun ID myTischtennis memorizzato",
        "members.name" to "Cognome, nome",
        "members.newMember" to "Nuovo membro",
        "members.noAddressShort" to "Nessun indirizzo",
        "members.noEmailShort" to "Nessuna e-mail",
        "members.noGroupsAssigned" to "Nessun gruppo assegnato",
        "members.noGroupsAvailable" to "Nessun gruppo disponibile",
        "members.noOpenTasks" to "Nessuna attività aperta",
        "members.noPhoneShort" to "Nessun telefono",
        "members.notes" to "Note",
        "members.noTestMembership" to "Non più membro in prova",
        "members.notInTrainingTooltip" to "Nessuna partecipazione da {weeks} settimane di allenamento",
        "members.onlyActiveMembers" to "Sono inclusi solo i membri attivi",
        "members.openTasks" to "Attività aperte",
        "members.parent" to "Genitore",
        "members.parentFallback" to "Genitore",
        "members.parentName" to "Nome (es. madre, padre)",
        "members.phoneList" to "elenco-telefonico.pdf",
        "members.phoneListForSelection" to "Elenco telefonico per la selezione",
        "members.phoneListSelectionFile" to "elenco-telefonico-selezione.pdf",
        "members.phoneNumber" to "Numero di telefono",
        "members.phoneNumberShort" to "Tel.",
        "members.phones" to "Numeri di telefono",
        "members.picsInInternetAllowed" to "Foto consentite online",
        "members.postalCode" to "CAP",
        "members.previewLastTraining" to "Ultimo allenamento",
        "members.previewNoLastTraining" to "Ancora nessuna partecipazione",
        "members.primary" to "Principale",
        "members.primaryImageUpdated" to "Immagine principale aggiornata.",
        "members.remove" to "Rimuovi",
        "members.resultsVisible" to "membri visibili",
        "members.rowTooltipSeparator" to "·",
        "members.scopeActive" to "Attivi",
        "members.scopeActiveDataIncomplete" to "Attivo + dati incompleti",
        "members.scopeActiveTest" to "Attivo + prova",
        "members.scopeAll" to "Tutti",
        "members.scopeDataIncomplete" to "Dati incompleti",
        "members.scopeInactive" to "Inattivi",
        "members.scopeNeedsForm" to "Modulo non verificato",
        "members.scopeNotTraining" to "Non si allena più",
        "members.scopeTest" to "Prova",
        "members.search" to "Cerca",
        "members.searchAndFilter" to "Ricerca e filtri",
        "members.searchPlaceholder" to "Cerca per nome, città, telefono o e-mail",
        "members.selectFile" to "Seleziona file",
        "members.showInactiveMembers" to "Mostra membri inattivi",
        "members.showTrainingParticipationsColumn" to "Mostra colonna « Partecipazioni »",
        "members.showTtrHistory" to "Mostra cronologia TTR",
        "members.sixOrMoreParticipations" to "6 o più partecipazioni agli allenamenti",
        "members.sortAge" to "Età",
        "members.sortBirthday" to "Data di nascita",
        "members.sortBy" to "Ordina per",
        "members.sortFirstName" to "Nome",
        "members.sortLastName" to "Cognome",
        "members.sortLastTraining" to "Ultimo allenamento",
        "members.sortOpenTasks" to "Attività aperte",
        "members.sortQttr" to "Valore QTTR",
        "members.status" to "stato",
        "members.street" to "Via",
        "members.subtitle" to "Cerca, filtra e modifica direttamente i membri.",
        "members.taskActionMarkRegular" to "Segna come regolare",
        "members.taskActionRequest" to "Richiedi",
        "members.taskActionReview" to "Apri",
        "members.taskActionVerify" to "Verifica",
        "members.taskAssignTrainingGroup" to "Assegna gruppo di allenamento",
        "members.taskCheckClickTt" to "Controlla autorizzazione Click-TT",
        "members.taskCheckDataQuality" to "Controlla qualità dati",
        "members.taskCheckTrainingStatus" to "Controlla stato allenamento",
        "members.taskReviewTrialStatus" to "Controlla stato di prova",
        "members.taskVerifyForm" to "Verifica modulo",
        "members.testMember" to "Prova",
        "members.testMembers" to "Membri in prova",
        "members.testMembership" to "Iscrizione di prova",
        "members.testMembershipRemoved" to "Iscrizione di prova rimossa.",
        "members.threeOrMoreParticipations" to "3 o più partecipazioni agli allenamenti",
        "members.title" to "Membri",
        "members.toggleSortDirection" to "Cambia direzione di ordinamento",
        "members.trainingGroups" to "Gruppi di allenamento",
        "members.trainingParticipations" to "Partecipazioni agli allenamenti",
        "members.transferErrorTitle" to "Errore di trasferimento",
        "members.transferMembers" to "Trasferisci membri",
        "members.transferSuccessTitle" to "Trasferimento riuscito",
        "members.ttAdult" to "Adulti (non giovanili secondo la data)",
        "members.ttAgeClassCol" to "Classe (TT)",
        "members.ttFilterGroupJ" to "Ragazze e ragazzi (misto)",
        "members.ttFilterGroupM" to "Solo ragazze",
        "members.ttrQttr" to "TTR/QTTR",
        "members.ttSeasonCurrentTag" to "attuale",
        "members.ttSeasonFilter" to "Stagione (data di riferimento)",
        "members.ttSeasonNextTag" to "prossima",
        "members.ttStichtagHint" to "Data di riferimento 1° gennaio (DTTB). Ragazzi: solo classi J. Ragazze: J e M.",
        "members.updateRatings" to "Aggiorna TTR/QTTR da myTischtennis",
        "members.updating" to "Aggiornamento in corso...",
        "members.visibleMembers" to "Membri visibili",
        "members.wantsToPlay" to "Vuole giocare",
        "memberSelection.close" to "Vicino",
        "memberSelection.deselectAll" to "Deseleziona tutto",
        "memberSelection.generatePdf" to "Genera PDF",
        "memberSelection.members" to "Membri",
        "memberSelection.noRecommendations" to "Nessun suggerimento corrispondente trovato.",
        "memberSelection.recommendations" to "Raccomandazioni",
        "memberSelection.selectAll" to "Seleziona tutto",
        "memberSelection.title" to "Seleziona Membri",
        "memberTransfer.additionalField" to "Campo aggiuntivo",
        "memberTransfer.additionalFieldExample1" to "Campo aggiuntivo (ad esempio client_id)",
        "memberTransfer.additionalFieldExample2" to "Campo aggiuntivo (ad esempio client_secret)",
        "memberTransfer.analyzeAndImport" to "Analizza e importa modello",
        "memberTransfer.availablePlaceholders" to "Segnaposto disponibili",
        "memberTransfer.bulkMode" to "Modalità di importazione in blocco (trasferisci tutti i membri contemporaneamente)",
        "memberTransfer.bulkModeActive" to "Modalità attiva",
        "memberTransfer.bulkModeActiveDescription" to "Il modello definisce il formato per un singolo membro. I membri vengono automaticamente racchiusi in un array. Facoltativamente è possibile definire la struttura esterna nel \"modello di bulk wrapper\" (vedere di seguito).",
        "memberTransfer.bulkModeHint" to "Se abilitato, tutti i membri in una richiesta vengono trasferiti come array.",
        "memberTransfer.bulkWrapperDescription" to "Facoltativamente, è possibile definire la struttura esterna in cui verrà inserita la matrice dei membri. Utilizza PLACEHOLDER_MEMBERS come segnaposto per l'array di membri.",
        "memberTransfer.bulkWrapperNote" to "Nota: se non viene specificato alcun modello wrapper, viene utilizzato automaticamente un array di membri.",
        "memberTransfer.bulkWrapperTemplate" to "Modello di confezionamento sfuso (facoltativo)",
        "memberTransfer.bulkWrapperWhat" to "Cos'è un modello di wrapper sfuso?",
        "memberTransfer.configDeleted" to "Configurazione eliminata con successo!",
        "memberTransfer.configInfo" to "Configura qui le impostazioni per il trasferimento dei membri a sistemi esterni. Queste impostazioni vengono salvate su base specifica del club.",
        "memberTransfer.configSaved" to "Configurazione salvata con successo",
        "memberTransfer.confirmDelete" to "Elimina configurazione",
        "memberTransfer.confirmDeleteMessage" to "Sei sicuro di voler rimborsare questa transazione?",
        "memberTransfer.deleteConfig" to "Elimina configurazione",
        "memberTransfer.deleting" to "pulizia...",
        "memberTransfer.errorDeleting" to "Eliminazione dell'errore",
        "memberTransfer.errorLoading" to "Errore durante il caricamento della configurazione",
        "memberTransfer.errorParsingTemplate" to "Errore durante l'analisi del modello",
        "memberTransfer.errorSaving" to "Errore durante il salvataggio",
        "memberTransfer.example" to "Esempio",
        "memberTransfer.exampleFormData" to "Esempio di formato dati del modulo",
        "memberTransfer.exampleJson" to "Esempio di formato JSON (consigliato)",
        "memberTransfer.exampleXml" to "Esempio di formato XML",
        "memberTransfer.formDataHint" to "Per i dati del modulo, utilizza un modello di testo semplice con righe nel formato feldname=placeholder:",
        "memberTransfer.httpMethod" to "Metodo HTTP",
        "memberTransfer.importTemplate" to "Importa il modello dall'esempio completo",
        "memberTransfer.importTemplateHint" to "Includere un modello di esempio completo (con membri di esempio). Il sistema rileverà automaticamente il modello del membro e il modello del wrapper di massa.",
        "memberTransfer.importTemplatePlaceholder" to "Inserisci qui un modello di esempio completo, ad esempio:\nLBRACE\n  Dicembre: [\n    LBRACE\n      D .firstNameD.: D .MaxD.,\n      D. CognomeD.: D. MustermannD.,\n      DMail: DMaxATexample.comMail: DMaxATexample.com\n    RBRACE\n  ]\nRBRACE",
        "memberTransfer.invalidJson" to "Assicurati che venga utilizzato un JSON valido.",
        "memberTransfer.invalidTemplateFormat" to "Formato modello non valido",
        "memberTransfer.loadingConfig" to "Caricamento configurazione...",
        "memberTransfer.loginConfiguration" to "Configurazione dell'accesso",
        "memberTransfer.loginData" to "Dati di accesso",
        "memberTransfer.loginEndpointHint" to "Facoltativo: percorso relativo all'endpoint di accesso (ad esempio /api/auth/login)",
        "memberTransfer.loginEndpointPath" to "Percorso dell'endpoint di accesso",
        "memberTransfer.loginEndpointPlaceholder" to "/api/auth/login",
        "memberTransfer.loginFormat" to "Formato di accesso",
        "memberTransfer.membersArray" to "Array di membri",
        "memberTransfer.password" to "Password",
        "memberTransfer.passwordEncrypted" to "Le password vengono archiviate crittografate.",
        "memberTransfer.placeholderHint" to "Fare clic su un segnaposto per inserirlo nella posizione corrente del cursore:",
        "memberTransfer.placeholders.address" to "Indirizzo combinato",
        "memberTransfer.placeholders.addressDesc" to "Strada e città insieme",
        "memberTransfer.placeholders.birthDate" to "Data di nascita",
        "memberTransfer.placeholders.birthDateAlt" to "Data di nascita (vecchia)",
        "memberTransfer.placeholders.birthDateAltDesc" to "Data di nascita nel formato AAAA-MM-GG (nome alternativo)",
        "memberTransfer.placeholders.birthDateDesc" to "nel formato AAAA-MM-GG",
        "memberTransfer.placeholders.city" to "Posizione",
        "memberTransfer.placeholders.cityDesc" to "Luogo di residenza",
        "memberTransfer.placeholders.email" to "Indirizzo e-mail",
        "memberTransfer.placeholders.emailDesc" to "Indirizzo e-mail del membro",
        "memberTransfer.placeholders.firstName" to "Nome di battesimo",
        "memberTransfer.placeholders.firstNameDesc" to "Nome del membro",
        "memberTransfer.placeholders.fullName" to "Nome e cognome",
        "memberTransfer.placeholders.fullNameDesc" to "Nome e cognome combinati",
        "memberTransfer.placeholders.gender" to "Sesso",
        "memberTransfer.placeholders.genderDesc" to "Sesso del membro",
        "memberTransfer.placeholders.lastName" to "Cognome",
        "memberTransfer.placeholders.lastNameDesc" to "Cognome del membro",
        "memberTransfer.placeholders.phone" to "Numero di telefono",
        "memberTransfer.placeholders.phoneDesc" to "Telefono del membro dello staff",
        "memberTransfer.placeholders.qttr" to "Valore QTTR",
        "memberTransfer.placeholders.qttrDesc" to "Valore QTTR del membro",
        "memberTransfer.placeholders.street" to "Strada",
        "memberTransfer.placeholders.streetDesc" to "Via e numero civico",
        "memberTransfer.placeholders.ttr" to "Valore TTR",
        "memberTransfer.placeholders.ttrDesc" to "Valore TTR del membro",
        "memberTransfer.save" to "Salva",
        "memberTransfer.saving" to "Risparmio...",
        "memberTransfer.serverBaseUrl" to "URL di base del server",
        "memberTransfer.serverBaseUrlHint" to "URL di base del server (ad esempio https://example.com)",
        "memberTransfer.serverBaseUrlPlaceholder" to "https://esempio.com",
        "memberTransfer.serverConfiguration" to "Configurazione del server",
        "memberTransfer.templateDescription" to "Il modello definisce il formato in cui i dati del membro vengono trasferiti al sistema esterno. Utilizza segnaposto come PLACEHOLDER_FIRSTNAME per sostituire automaticamente i dati.",
        "memberTransfer.templateImported" to "Modello importato correttamente.",
        "memberTransfer.templateImportedBulk" to "Modello membro rilevato, modalità collettiva abilitata.",
        "memberTransfer.templateImportedDetails" to "I modelli di membri e wrapper di massa sono stati rilevati e completati.",
        "memberTransfer.templateImportedSingle" to "Rilevato modello a membro singolo.",
        "memberTransfer.templateTip" to "Suggerimento: posiziona il cursore nel punto desiderato del modello e fai clic su un segnaposto per inserirlo. I segnaposto vengono automaticamente sostituiti dai dati effettivi del membro quando vengono trasferiti.",
        "memberTransfer.templateWhat" to "Cos'è un modello?",
        "memberTransfer.title" to "Trasferimento membro - Impostazioni",
        "memberTransfer.transferConfiguration" to "Configurazione della trasmissione",
        "memberTransfer.transferConfigurationTitle" to "Configurazione della trasmissione",
        "memberTransfer.transferEndpointHint" to "Percorso relativo all'endpoint di trasmissione (ad esempio /api/members/bulk)",
        "memberTransfer.transferEndpointPath" to "Percorso dell'endpoint di trasmissione",
        "memberTransfer.transferEndpointPlaceholder" to "/api/members/bulk",
        "memberTransfer.transferFormat" to "Formato di trasmissione",
        "memberTransfer.transferTemplate" to "Modello di trasferimento",
        "memberTransfer.usernameEmail" to "Nome utente/e-mail",
        "memberTransferDialog.additionalErrors" to "ulteriori colpe",
        "memberTransferDialog.additionalFieldPlaceholder" to "Campo aggiuntivo (ad esempio client_id)",
        "memberTransferDialog.additionalFieldPlaceholderForm" to "Nome campo: Valore (ad esempio client_id: abc123)",
        "memberTransferDialog.bulkImport" to "Importazione in blocco",
        "memberTransferDialog.cancel" to "Cancellare",
        "memberTransferDialog.editConfig" to "Modifica la configurazione.",
        "memberTransferDialog.endpoint" to "Endpoint",
        "memberTransferDialog.excludedMembers" to "Membri esclusi (campi obbligatori mancanti)",
        "memberTransferDialog.format" to "Format",
        "memberTransferDialog.goToSettings" to "Impostazioni Dove si va?",
        "memberTransferDialog.loadingConfig" to "Caricamento della configurazione salvata",
        "memberTransferDialog.loginData" to "Dati di accesso",
        "memberTransferDialog.loginDataHint" to "I dettagli di accesso vengono utilizzati dalle impostazioni. Se necessario, puoi sovrascriverli qui.",
        "memberTransferDialog.loginDataOverride" to "Dettagli di accesso (sovrascrittura facoltativa)",
        "memberTransferDialog.loginDataOverrideHint" to "Compila solo se vuoi sovrascrivere i dati di login salvati. I campi vuoti utilizzano i valori memorizzati.",
        "memberTransferDialog.method" to "Metodo",
        "memberTransferDialog.mode" to "modalità",
        "memberTransferDialog.noConfigFound" to "Nessuna configurazione trovata",
        "memberTransferDialog.noConfigMessage" to "Configura prima il trasferimento del membro nelle impostazioni.",
        "memberTransferDialog.passwordPlaceholder" to "Password (lascia vuoto per salvato)",
        "memberTransferDialog.server" to "Server",
        "memberTransferDialog.single" to "Separare",
        "memberTransferDialog.title" to "Trasferisci membri",
        "memberTransferDialog.transfer" to "Trasferito",
        "memberTransferDialog.transferConfiguration" to "Configurazione della trasmissione",
        "memberTransferDialog.transferError" to "Errore durante la trasmissione",
        "memberTransferDialog.transferFailed" to "Trasferimento non riuscito",
        "memberTransferDialog.transferring" to "Comunicare...",
        "memberTransferDialog.transferSuccess" to "{transferred} trasferito con successo dai membri {total}.",
        "memberTransferDialog.usernameEmail" to "Nome utente/e-mail",
        "messages.cancel" to "Annulla",
        "messages.confirm" to "Conferma",
        "messages.error" to "Errore",
        "messages.fileTooLarge" to "File troppo grande",
        "messages.imageMaxSize" to "L'immagine deve essere di massimo 5 MB.",
        "messages.info" to "Informazione",
        "messages.invalidFile" to "File non valido",
        "messages.note" to "Avviso",
        "messages.pleaseSelectImageFile" to "Seleziona un file immagine.",
        "messages.recordsDisplayed" to "visualizzato",
        "messages.recordsFound" to "Documenti trovati",
        "messages.success" to "Successo",
        "messages.successfullyLoaded" to "Caricato con successo",
        "messages.warning" to "Avviso",
        "mobile.active" to "Aktiv",
        "mobile.add" to "Hinzufügen",
        "mobile.appLoading" to "App wird geladen",
        "mobile.calendarAgendaEmpty" to "Nessun appuntamento in questo mese.",
        "mobile.calendarAgendaTitle" to "Appuntamenti del mese",
        "mobile.calendarAllSourcesFailed" to "Impossibile caricare il calendario.",
        "mobile.calendarCancellationEnd" to "Fino al (opzionale)",
        "mobile.calendarCancellationHint" to "Nasconde gli orari ricorrenti in quei giorni.",
        "mobile.calendarCancellationInMonth" to "Cancellazioni questo mese",
        "mobile.calendarCancellationReason" to "Motivo",
        "mobile.calendarCancellationSave" to "Salva",
        "mobile.calendarCancellationStart" to "Data (AAAA-MM-GG)",
        "mobile.calendarCancellationTitle" to "Allenamento annullato",
        "mobile.calendarGridTitle" to "Mese",
        "mobile.calendarLegend" to "Vista",
        "mobile.calendarLegendCancellation" to "Cancellazione",
        "mobile.calendarLegendHoliday" to "Festività",
        "mobile.calendarLegendMatch" to "Partita",
        "mobile.calendarLegendOfficial" to "Partecipazione",
        "mobile.calendarLegendSchool" to "Vacanze scolastiche",
        "mobile.calendarLegendTournament" to "Torneo",
        "mobile.calendarLegendTraining" to "Allenamento",
        "mobile.calendarSourceCancellations" to "Cancellazioni",
        "mobile.calendarSourceDiary" to "Diario",
        "mobile.calendarSourceFailed" to "non caricato",
        "mobile.calendarSourceHolidays" to "Vacanze / festività",
        "mobile.calendarSourceMatches" to "Partite campionato",
        "mobile.calendarSourceOfficial" to "Partecipazioni ufficiali",
        "mobile.calendarSourceTournaments" to "Tornei",
        "mobile.calendarSourceTrainingTimes" to "Orari allenamento",
        "mobile.calendarSubtitle" to "Allenamenti, tornei, partite e festività del mese.",
        "mobile.calendarTitle" to "Calendario",
        "mobile.calendarToday" to "Oggi",
        "mobile.cancel" to "Abbrechen",
        "mobile.clubRequest" to "Zugriff anfragen",
        "mobile.clubRequested" to "Angefragt",
        "mobile.createDiaryEntry" to "Eintrag erstellen",
        "mobile.deleteNote" to "Notiz löschen",
        "mobile.deleteTag" to "Tag entfernen",
        "mobile.editTimes" to "Zeiten bearbeiten",
        "mobile.emailAndPasswordRequired" to "E-Mail und Passwort sind erforderlich",
        "mobile.entry" to "Eintrag",
        "mobile.inactive" to "Inaktiv",
        "mobile.language" to "Sprache",
        "mobile.lastTraining" to "Letztes Training",
        "mobile.loginFailed" to "Login fehlgeschlagen",
        "mobile.loginInProgress" to "Anmelden...",
        "mobile.more" to "Mehr",
        "mobile.new" to "Neu",
        "mobile.newNote" to "Neue Notiz",
        "mobile.newTag" to "Neuer Tag",
        "mobile.noDiaryEntries" to "Noch keine Tagebuch-Einträge",
        "mobile.noMembers" to "Keine Mitglieder gefunden",
        "mobile.noResults" to "Keine Treffer",
        "mobile.noTimes" to "Keine Zeiten",
        "mobile.offlineCacheHint" to "Nessuna connessione – dati dell’ultimo caricamento.",
        "mobile.participationTop" to "Top Teilnahmen",
        "mobile.refresh" to "Aktualisieren",
        "mobile.requestedAccess" to "Angefragt",
        "mobile.role" to "Rolle",
        "mobile.saveEntry" to "Speichern",
        "mobile.search" to "Suche",
        "mobile.select" to "Auswählen",
        "mobile.sessionCheck" to "Session prüfen",
        "mobile.sessionCheckFailed" to "Session check fehlgeschlagen",
        "mobile.sessionInvalid" to "Session ungültig",
        "mobile.sessionValid" to "Session gültig",
        "mobile.status" to "Status",
        "mobile.user" to "Benutzer",
        "myTischtennis.about" to "Informazioni su myTischtennis",
        "myTischtennis.aboutFeatures.fetch" to "Recupera direttamente i dati della concorrenza",
        "myTischtennis.aboutFeatures.import" to "Importa automaticamente i dati dei tornei",
        "myTischtennis.aboutFeatures.sync" to "Sincronizza i risultati del lettore",
        "myTischtennis.aboutText" to "Collegando il tuo account myTischtennis potrai:",
        "myTischtennis.autoUpdates" to "Aggiornamento automatico",
        "myTischtennis.club" to "Associazione (myTischtennis)",
        "myTischtennis.deleteAccount" to "Disconnetti l'account",
        "myTischtennis.disabled" to "Non controllato",
        "myTischtennis.editAccount" to "Modifica account",
        "myTischtennis.enabled" to "SU",
        "myTischtennis.fetchStatistics" to "Statistiche di recupero dei dati",
        "myTischtennis.lastFetch" to "Ultimo recupero:",
        "myTischtennis.lastLoginAttempt" to "Ultimo tentativo di accesso",
        "myTischtennis.lastSuccessfulLogin" to "Ultimo accesso riuscito",
        "myTischtennis.leagueTables" to "Classifica JoomSport",
        "myTischtennis.linkAccount" to "Collega account",
        "myTischtennis.linkedAccount" to "Conto collegato",
        "myTischtennis.loadingStats" to "Caricamento statistiche",
        "myTischtennis.matchResults" to "Risultati dell'evento",
        "myTischtennis.neverFetched" to "Mai recuperato",
        "myTischtennis.no" to "NO",
        "myTischtennis.noAccount" to "Nessun account myTischtennis collegato.",
        "myTischtennis.passwordNote" to "Nota: il salvataggio della password è facoltativo. Se non lo salvi, ti verrà richiesta la password ogni volta che effettui la sincronizzazione.",
        "myTischtennis.passwordSaved" to "Password salvata",
        "myTischtennis.passwordsEncrypted" to "Le password vengono archiviate crittografate.",
        "myTischtennis.playerRatings" to "Valutazioni dei giocatori",
        "myTischtennis.refreshStats" to "Ricarica le statistiche",
        "myTischtennis.testLogin" to "Effettuare nuovamente l'accesso",
        "myTischtennis.title" to "myTischtennis-Account",
        "myTischtennis.updateHistory" to "Aggiorna cronologia",
        "myTischtennis.yes" to "SÌ",
        "myTischtennisAccount.aboutDescription" to "Collegando il tuo account myTischtennis potrai:",
        "myTischtennisAccount.aboutFeature1" to "Importa automaticamente i dati dei tornei",
        "myTischtennisAccount.aboutFeature2" to "Sincronizza i risultati del lettore",
        "myTischtennisAccount.aboutFeature3" to "Recupera direttamente i dati della concorrenza",
        "myTischtennisAccount.aboutHint" to "Il salvataggio della password è facoltativo. Se non lo salvi, ti verrà richiesta la password ogni volta che effettui la sincronizzazione.",
        "myTischtennisAccount.aboutMyTischtennis" to "Informazioni su myTischtennis",
        "myTischtennisAccount.accountSaved" to "Account myTischtennis salvato con successo",
        "myTischtennisAccount.accountUnlinked" to "Account myTischtennis disconnesso con successo",
        "myTischtennisAccount.autoUpdates" to "Aggiornamenti automatici:",
        "myTischtennisAccount.club" to "Associazione (myTischtennis):",
        "myTischtennisAccount.daysAgo" to "{count} giorni fa",
        "myTischtennisAccount.disabled" to "Non controllato",
        "myTischtennisAccount.editAccount" to "Modifica account",
        "myTischtennisAccount.email" to "E-mail:",
        "myTischtennisAccount.enabled" to "SU",
        "myTischtennisAccount.errorLoadingAccount" to "Errore durante il caricamento dell'account myTischtennis",
        "myTischtennisAccount.errorLoadingStatistics" to "Errore durante il caricamento delle statistiche di recupero",
        "myTischtennisAccount.errorUnlinking" to "Errore durante la disconnessione dell'account",
        "myTischtennisAccount.fetchStatistics" to "Statistiche di recupero dei dati",
        "myTischtennisAccount.hoursAgo" to "{count} ore fa",
        "myTischtennisAccount.justNow" to "proprio adesso",
        "myTischtennisAccount.lastFetch" to "Ultimo recupero:",
        "myTischtennisAccount.lastLoginAttempt" to "Ultimo tentativo di accesso:",
        "myTischtennisAccount.lastSuccessfulLogin" to "Ultimo accesso riuscito:",
        "myTischtennisAccount.leagueTables" to "Classifica JoomSport",
        "myTischtennisAccount.linkAccount" to "Collega account",
        "myTischtennisAccount.linkedAccount" to "Conto collegato",
        "myTischtennisAccount.loading" to "Caricamento...",
        "myTischtennisAccount.loadingStatistics" to "Caricamento statistiche",
        "myTischtennisAccount.loginAgain" to "Effettuare nuovamente l'accesso",
        "myTischtennisAccount.loginFailed" to "Accesso non riuscito",
        "myTischtennisAccount.loginSuccessful" to "Accesso riuscito! Dettagli di connessione aggiornati.",
        "myTischtennisAccount.matchResults" to "Risultati dell'evento",
        "myTischtennisAccount.minutesAgo" to "{count} minuti fa",
        "myTischtennisAccount.never" to "Mai",
        "myTischtennisAccount.neverFetched" to "Mai recuperato",
        "myTischtennisAccount.no" to "NO",
        "myTischtennisAccount.noAccountLinked" to "Nessun account myTischtennis collegato.",
        "myTischtennisAccount.passwordRequired" to "È richiesta la password",
        "myTischtennisAccount.passwordSaved" to "Password salvata",
        "myTischtennisAccount.playerRatings" to "Valutazioni dei giocatori",
        "myTischtennisAccount.playersUpdated" to "Giocatore aggiornato",
        "myTischtennisAccount.refreshStatistics" to "Ricarica le statistiche",
        "myTischtennisAccount.results" to "Risultati",
        "myTischtennisAccount.teams" to "Teams",
        "myTischtennisAccount.title" to "Conto myTischtennis",
        "myTischtennisAccount.unlinkAccount" to "Disconnetti l'account",
        "myTischtennisAccount.unlinkAccountConfirm" to "Sei sicuro di voler scollegare l'account myTischtennis?",
        "myTischtennisAccount.unlinkAccountTitle" to "Disconnetti l'account",
        "myTischtennisAccount.updateHistory" to "Aggiorna cronologia",
        "myTischtennisAccount.yes" to "SÌ",
        "myTischtennisAccount.yesterday" to "Ieri",
        "myTischtennisDialog.appPassword" to "La password dell'app per confermare",
        "myTischtennisDialog.appPasswordHint" to "Per motivi di sicurezza abbiamo bisogno della password dell'app per salvare la password di myTischtennis.",
        "myTischtennisDialog.appPasswordPlaceholder" to "La tua password per questa app",
        "myTischtennisDialog.autoUpdateRatings" to "Abilita le valutazioni di aggiornamento automatico",
        "myTischtennisDialog.autoUpdateRatingsHint" to "Le ultime valutazioni di myTischtennis vengono recuperate automaticamente ogni giorno alle 6:00. Richiede una password salvata.",
        "myTischtennisDialog.autoUpdateWarning" to "Per gli aggiornamenti automatici è necessario salvare la password myTischtennis.",
        "myTischtennisDialog.cancel" to "Cancellare",
        "myTischtennisDialog.editAccount" to "modifica il mio account Tischtennis",
        "myTischtennisDialog.email" to "myTischtennis-Email",
        "myTischtennisDialog.emailPlaceholder" to "Il tuo indirizzo email myTischtennis",
        "myTischtennisDialog.errorLogin" to "Errore di accesso.",
        "myTischtennisDialog.errorSaving" to "Errore durante il salvataggio dell'account",
        "myTischtennisDialog.linkAccount" to "collega l'account myTischtennis",
        "myTischtennisDialog.loadingLoginForm" to "Caricamento modulo di accesso...",
        "myTischtennisDialog.loggingIn" to "Login...",
        "myTischtennisDialog.login" to "Login",
        "myTischtennisDialog.password" to "myTischtennis-Password",
        "myTischtennisDialog.passwordPlaceholder" to "La tua password myTischtennis",
        "myTischtennisDialog.passwordPlaceholderKeep" to "Lascia vuoto per mantenere",
        "myTischtennisDialog.save" to "Salva",
        "myTischtennisDialog.savePassword" to "salva la password di mytabletennis",
        "myTischtennisDialog.savePasswordHint" to "Se abilitato, la tua password myTischtennis verrà archiviata crittografata in modo da rendere possibili sincronizzazioni automatiche.",
        "myTischtennisDialog.saving" to "Risparmio...",
        "myTischtennisHistory.close" to "Vicino",
        "myTischtennisHistory.failed" to "Non ha funzionato.",
        "myTischtennisHistory.loading" to "Caricamento cronologia...",
        "myTischtennisHistory.noHistory" to "Nessun aggiornamento automatico ancora eseguito.",
        "myTischtennisHistory.ratingsUpdated" to "Valutazioni aggiornate",
        "myTischtennisHistory.successful" to "Riuscito",
        "myTischtennisHistory.title" to "Aggiorna la cronologia delle valutazioni",
        "navigation.approvals" to "Approvazioni",
        "navigation.backToHome" to "Torna alla home",
        "navigation.billing" to "Fatturazione",
        "navigation.clickTtAccount" to "Account HTTV / click-TT",
        "navigation.clickTtBrowser" to "HTTV / click-TT",
        "navigation.clubSettings" to "Impostazioni del club",
        "navigation.clubTournaments" to "Tornei del club",
        "navigation.competitions" to "Competizioni",
        "navigation.dailyBusiness" to "Gestione quotidiana",
        "navigation.diary" to "Diario",
        "navigation.home" to "Casa",
        "navigation.login" to "Accedi",
        "navigation.logout" to "Disconnetti",
        "navigation.logs" to "Log di sistema",
        "navigation.members" to "Membri",
        "navigation.memberTransfer" to "Trasferimento membri",
        "navigation.myTischtennisAccount" to "Account myTischtennis",
        "navigation.orders" to "Ordini",
        "navigation.permissions" to "Permessi",
        "navigation.personalSettings" to "Impostazioni personali",
        "navigation.predefinedActivities" to "Attività predefinite",
        "navigation.register" to "Registrati",
        "navigation.schedule" to "Calendari",
        "navigation.settings" to "Impostazioni",
        "navigation.statistics" to "Statistiche di allenamento",
        "navigation.teamManagement" to "Gestione squadre",
        "navigation.tournamentParticipations" to "Partecipazioni ai tornei",
        "navigation.tournaments" to "Tornei",
        "nuscoreAnalyzer.analysisComplete" to "✅ Analisi completata: {count} risorse trovate",
        "nuscoreAnalyzer.analyze" to "🔍analisi nuscore",
        "nuscoreAnalyzer.analyzing" to "Analizzando...",
        "nuscoreAnalyzer.createLocalCopy" to "Crea 🏗️ copia locale",
        "nuscoreAnalyzer.creating" to "🏗️ Creare...",
        "nuscoreAnalyzer.description" to "Analizza e scarica le risorse nuscore per uso locale",
        "nuscoreAnalyzer.downloading" to "⬇️ Download...",
        "nuscoreAnalyzer.downloadResources" to "Scarica risorse",
        "nuscoreAnalyzer.foundResources" to "📋 Risorse trovate:",
        "nuscoreAnalyzer.log" to "Tronco d'albero",
        "nuscoreAnalyzer.pageLoaded" to "✅pagina nuscore caricata",
        "nuscoreAnalyzer.startAnalysis" to "🔍 Avvio analisi nuscore...",
        "nuscoreAnalyzer.title" to "🔍 nuscore Analyzer",
        "officialTournaments.action" to "Azione",
        "officialTournaments.age" to "Età",
        "officialTournaments.ageClassCompetition" to "Gruppo d'età/competizione",
        "officialTournaments.ageClasses" to "Classi di età",
        "officialTournaments.all" to "Tutto",
        "officialTournaments.birthDate" to "Data di nascita",
        "officialTournaments.checkBoxToActivate" to "Abilita casella di controllo",
        "officialTournaments.competition" to "Concorrente",
        "officialTournaments.competitions" to "Concorsi",
        "officialTournaments.competitionTypes" to "Tipi di competizione:",
        "officialTournaments.cutoffDate" to "Data di entrata in vigore:",
        "officialTournaments.date" to "Data",
        "officialTournaments.dateTime" to "Data:",
        "officialTournaments.deadlineDate" to "Termine ultimo per la registrazione (data):",
        "officialTournaments.deadlineOnline" to "Scadenza iscrizioni (online):",
        "officialTournaments.deadlines" to "Scadenze per la registrazione:",
        "officialTournaments.deadlinesByAgeClass" to "Scadenze per la registrazione per ciascun AK:",
        "officialTournaments.delete" to "Eliminare",
        "officialTournaments.editTitle" to "Modifica titolo",
        "officialTournaments.eligible" to "Idoneo a partecipare",
        "officialTournaments.entryFee" to "contanti iniziali",
        "officialTournaments.entryFees" to "Quote di partecipazione:",
        "officialTournaments.events" to "Avvenimenti",
        "officialTournaments.finalRound" to "Concorso finale",
        "officialTournaments.hasPlayed" to "{0} ha giocato il suo turno.",
        "officialTournaments.last12Months" to "Ultimi 12 mesi",
        "officialTournaments.last2Years" to "Ultimi 2 anni",
        "officialTournaments.last3Months" to "Ultimi 3 mesi",
        "officialTournaments.last6Months" to "Ultimi 6 mesi",
        "officialTournaments.markAsParticipated" to "Segna come frequentato",
        "officialTournaments.markAsRegistered" to "Contrassegna come effettuato l'accesso",
        "officialTournaments.member" to "Membro",
        "officialTournaments.name" to "nome",
        "officialTournaments.noEvents" to "Nessun evento ancora disponibile. Carica un PDF per iniziare.",
        "officialTournaments.notInterested" to "Non interessato",
        "officialTournaments.openTo" to "Aperto a",
        "officialTournaments.participants" to "Partecipanti",
        "officialTournaments.participantsPdf" to "PDF del partecipante",
        "officialTournaments.participated" to "Partecipato",
        "officialTournaments.participations" to "Partecipazioni ai tornei",
        "officialTournaments.pdfForSelectedMembers" to "PDF per i membri segnalati",
        "officialTournaments.placement" to "Posizionamento",
        "officialTournaments.preliminaryRound" to "1a fase:",
        "officialTournaments.previousSeason" to "Stagione precedente",
        "officialTournaments.registered" to "Effettuato l'accesso",
        "officialTournaments.resetStatus" to "Ripristina stato",
        "officialTournaments.results" to "Risultati",
        "officialTournaments.savedEvents" to "Eventi salvati",
        "officialTournaments.selectMembers" to "Seleziona Membri",
        "officialTournaments.showCompetitions" to "Visualizza concorsi",
        "officialTournaments.showEvents" to "Visualizza eventi salvati",
        "officialTournaments.showParticipants" to "Visualizza partecipante",
        "officialTournaments.showParticipations" to "Visualizza le condivisioni del torneo",
        "officialTournaments.showResults" to "Visualizza risultati",
        "officialTournaments.startTime" to "ora di inizio",
        "officialTournaments.startTimes" to "Orari di inizio:",
        "officialTournaments.status" to "stato",
        "officialTournaments.timeRange" to "Periodo:",
        "officialTournaments.title" to "Titolo:",
        "officialTournaments.tournament" to "Torneo",
        "officialTournaments.updatePlacementError" to "Errore durante l'aggiornamento del posizionamento",
        "officialTournaments.updateStatusError" to "Impossibile aggiornare lo stato",
        "officialTournaments.updateTitleError" to "Non è stato possibile salvare questo.",
        "officialTournaments.uploadError" to "Errore durante il caricamento del PDF.",
        "officialTournaments.uploadPdf" to "Carica PDF",
        "officialTournaments.venues" to "Luoghi",
        "officialTournaments.wantsToParticipate" to "Vuoi iscriverti",
        "orders.addOrder" to "Crea ordine",
        "orders.budget" to "bilancio",
        "orders.club" to "Club",
        "orders.cost" to "Costo",
        "orders.dateAutoHint" to "La data viene impostata automaticamente e ogni modifica viene registrata con una data.",
        "orders.errorLoading" to "Impossibile caricare gli ordini.",
        "orders.errorSaving" to "Impossibile salvare l'ordine.",
        "orders.filterAllClubs" to "Tutti i club",
        "orders.filterAllCompletionStates" to "Tutti i gradi",
        "orders.filterAllStatuses" to "Tutti gli stati",
        "orders.filterHandedOver" to "Articolo distribuito",
        "orders.filterPaid" to "Pagato",
        "orders.globalSubtitle" to "Qui è possibile visualizzare e gestire tutti gli ordini di tutti i club.",
        "orders.globalTitle" to "Ordini di tutti i club",
        "orders.history" to "Cronologia",
        "orders.item" to "Articolo",
        "orders.itemPlaceholder" to "ad es. maglia, felpa o custodia per racchetta",
        "orders.loading" to "Caricamento ordini...",
        "orders.member" to "Membro",
        "orders.memberTitle" to "Ordini: {name}",
        "orders.noOrdersGlobal" to "Attualmente non ci sono ordini.",
        "orders.noOrdersMember" to "Non ci sono ancora ordini per questo membro.",
        "orders.open" to "Da pagare",
        "orders.orderDate" to "Creato il",
        "orders.paid" to "Pagato",
        "orders.paidConfirmed" to "Pagato",
        "orders.searchPlaceholder" to "Cerca per club, membro o articolo",
        "orders.showCompleted" to "Mostra quelli completati",
        "orders.status" to "Stato",
        "orders.statusArrived" to "articolo arrivato",
        "orders.statusDate" to "Ultima modifica",
        "orders.statusHandedOver" to "articolo consegnato",
        "orders.statusOrdered" to "ordinato",
        "orders.statusRequested" to "richiesto",
        "orders.title" to "Ordini",
        "pdfGenerator.activityTimeBlock" to "Attività/Blocco temporale",
        "pdfGenerator.allGames" to "Tutte le città",
        "pdfGenerator.alsoPlayable" to "Anche giocabile",
        "pdfGenerator.birthDate" to "Data di nascita",
        "pdfGenerator.clubLabel" to "Società:",
        "pdfGenerator.competition" to "Evento",
        "pdfGenerator.competitionName" to "Concorrente",
        "pdfGenerator.date" to "Data:",
        "pdfGenerator.diff" to "Diff",
        "pdfGenerator.duration" to "Minuti al blocco",
        "pdfGenerator.fee" to "Tassa",
        "pdfGenerator.generatedAt" to "Creato:",
        "pdfGenerator.group" to "Gruppo",
        "pdfGenerator.groupLabel" to "Gruppo",
        "pdfGenerator.groupMatrices" to "Matrici di gruppo",
        "pdfGenerator.hallShoes" to "Scarpe da interni (non devono sfregare sul pavimento)",
        "pdfGenerator.hints" to "Note:",
        "pdfGenerator.informTrainer" to "Poiché il club vuole farsi carico della registrazione, informate gli allenatori della partecipazione almeno una settimana prima del torneo",
        "pdfGenerator.leagueLabel" to "Campionato:",
        "pdfGenerator.lineupQttr" to "(Q)TTR",
        "pdfGenerator.member" to "Membri:",
        "pdfGenerator.nameFirstName" to "Cognome, nome",
        "pdfGenerator.noActivities" to "Nessuna attività registrata per questa giornata di formazione.",
        "pdfGenerator.noWhiteJersey" to "Niente maglia bianca",
        "pdfGenerator.officialTournament" to "Torneo ufficiale",
        "pdfGenerator.oneHourBefore" to "Presentarsi in sala un'ora prima dell'inizio della competizione",
        "pdfGenerator.overallRanking" to "Classifica generale (round ad eliminazione diretta)",
        "pdfGenerator.periodLabel" to "Iscrizione per:",
        "pdfGenerator.phoneList" to "Elenco telefonico - Membri attivi",
        "pdfGenerator.phoneNumber" to "Telefono n.",
        "pdfGenerator.place" to "La piazza",
        "pdfGenerator.placement" to "Posizionamento",
        "pdfGenerator.plannedLeagueLabel" to "Campionato previsto:",
        "pdfGenerator.player" to "Pattinatori",
        "pdfGenerator.player1" to "Giocatore 1",
        "pdfGenerator.player2" to "4 minuti e mezzo",
        "pdfGenerator.points" to "Punti",
        "pdfGenerator.recommendations" to "Raccomandazioni",
        "pdfGenerator.result" to "Risultato",
        "pdfGenerator.round" to "Girare",
        "pdfGenerator.seasonLabel" to "Stagione:",
        "pdfGenerator.sets" to "frasi",
        "pdfGenerator.sportShorts" to "Pantaloncini sportivi (o gonne sportive), preferibilmente non bianchi",
        "pdfGenerator.startTime" to "ora di inizio",
        "pdfGenerator.status" to "stato",
        "pdfGenerator.teamAgeGroupLabel" to "Categoria età squadra:",
        "pdfGenerator.teamGenderLabel" to "Genere squadra:",
        "pdfGenerator.teamLineupTitle" to "Formazione della squadra",
        "pdfGenerator.teamNameLabel" to "Squadra:",
        "pdfGenerator.time" to "Tempo:",
        "pdfGenerator.timeBlock" to "Blocco temporale",
        "pdfGenerator.tournament" to "Torneo",
        "pdfGenerator.trainersPresent" to "Gli allenatori cercano di essere presenti a tutti i tornei.",
        "pdfGenerator.trainingPlan" to "Piano di formazione",
        "pdfGenerator.venue" to "Posizione",
        "pdfGenerator.venues" to "Luoghi",
        "pdfGenerator.waterBottle" to "Porta con te una bottiglia d'acqua",
        "pendingApprovals.actions" to "Azioni",
        "pendingApprovals.approve" to "Approvare",
        "pendingApprovals.email" to "Email",
        "pendingApprovals.errorApproving" to "Errore durante l'approvazione dell'utente",
        "pendingApprovals.errorLoadingRequests" to "impossibile caricare i pendenti per %<%E%s%E%>",
        "pendingApprovals.errorRejecting" to "Errore durante il rifiuto dell'utente",
        "pendingApprovals.firstName" to "Nome di battesimo",
        "pendingApprovals.lastName" to "Cognome",
        "pendingApprovals.noPendingRequests" to "Nessuna richiesta utente in sospeso.",
        "pendingApprovals.noPermission" to "Nessun permesso",
        "pendingApprovals.noPermissionDetails" to "Solo gli amministratori possono modificare le richieste dei membri.",
        "pendingApprovals.noPermissionMessage" to "Non hai l'autorizzazione per gestire le condivisioni.",
        "pendingApprovals.reject" to "Congedare",
        "pendingApprovals.title" to "Richieste utente in sospeso",
        "permissions.actions" to "Azioni",
        "permissions.active" to "Attivo",
        "permissions.availableRoles" to "Ruoli disponibili",
        "permissions.baseRole" to "Ruolo Base",
        "permissions.cancel" to "Cancellare",
        "permissions.clickToActivate" to "Fare clic per attivare.",
        "permissions.clickToDeactivate" to "Fare clic per disattivare",
        "permissions.clubMembers" to "Membri del club",
        "permissions.creator" to "Creatore",
        "permissions.customize" to "Personalizza",
        "permissions.customizeInfo" to "Qui è possibile apportare modifiche individuali.",
        "permissions.email" to "Email",
        "permissions.errorLoadingData" to "Errore durante il caricamento dei dati",
        "permissions.errorSavingPermissions" to "Errore durante il salvataggio delle autorizzazioni",
        "permissions.errorUpdatingRole" to "Impossibile aggiornare il ruolo",
        "permissions.inactive" to "Non controllato",
        "permissions.loadingMembers" to "Invito dei membri...",
        "permissions.permissionsFor" to "Autorizzazioni per",
        "permissions.reset" to "Ripristina",
        "permissions.resetAll" to "Reimposta tutto",
        "permissions.role" to "Ruolo",
        "permissions.save" to "Salva",
        "permissions.status" to "stato",
        "permissions.subtitle" to "Gestire i diritti di accesso per i membri del club",
        "permissions.title" to "Gestione delle credenziali",
        "predefinedActivities.addImage" to "Aggiungi immagine",
        "predefinedActivities.cancel" to "Cancellare",
        "predefinedActivities.code" to "Abbreviazione",
        "predefinedActivities.createDrawing" to "Crea il disegno dell'esercizio",
        "predefinedActivities.deduplicate" to "Unisci duplicati",
        "predefinedActivities.delete" to "Eliminare",
        "predefinedActivities.description" to "Descrizione",
        "predefinedActivities.duration" to "Durata minuti",
        "predefinedActivities.durationText" to "Durata (testo)",
        "predefinedActivities.durationTextPlaceholder" to "per esempio. 2x7",
        "predefinedActivities.editActivity" to "Modifica attività",
        "predefinedActivities.editDrawing" to "Modifica il disegno dell'esercizio",
        "predefinedActivities.excludeFromStats" to "Escludi dalle statistiche",
        "predefinedActivities.filterAll" to "Tutto",
        "predefinedActivities.filterCustom" to "Costume",
        "predefinedActivities.filterStandard" to "Attività standard",
        "predefinedActivities.imageHelp" to "Puoi inserire un collegamento a un'immagine o caricare un'immagine:",
        "predefinedActivities.imageLink" to "Link immagine (facoltativo)",
        "predefinedActivities.imageLinkPlaceholder" to "per esempio. https://example.com/bild.jpg o /api/prefine-activities/:id/image/:imageId",
        "predefinedActivities.merge" to "Unisci",
        "predefinedActivities.min" to "min",
        "predefinedActivities.name" to "nome",
        "predefinedActivities.new" to "Nuovo",
        "predefinedActivities.newActivity" to "Nuova attività",
        "predefinedActivities.orUploadImage" to "Oppure carica l'immagine:",
        "predefinedActivities.reload" to "Ricaricare",
        "predefinedActivities.searchPlaceholder" to "Cerca abbreviazioni (ad esempio 'as vh us' o 'vh as us')...",
        "predefinedActivities.selectSource" to "Scegli la fonte",
        "predefinedActivities.selectTarget" to "Seleziona la destinazione",
        "predefinedActivities.title" to "Attività predefinite",
        "predefinedActivities.upload" to "Caricamento",
        "predefinedActivities.uploadAfterSave" to "Carica dopo aver salvato",
        "predefinedActivities.uploadedImages" to "Video caricati:",
        "predefinedActivities.uploadNote" to "Nota: l'immagine non verrà caricata finché l'attività non verrà salvata.",
        "privacy.clubData" to "Dati del club/attività",
        "privacy.consent" to "Operazioni basate sul consenso",
        "privacy.cookies" to "Cookie/Archiviazione locale",
        "privacy.dataCategories" to "Categorie di dati personali",
        "privacy.logData" to "File di registro",
        "privacy.memberData" to "Dettagli del membro",
        "privacy.myTischtennisData" to "Dati MyTischtennis",
        "privacy.purposes" to "Finalità e basi giuridiche del trattamento",
        "privacy.recipients" to "Destinatario",
        "privacy.registrationData" to "Dati di registrazione/profilo",
        "privacy.responsible" to "Titolare del trattamento",
        "privacy.title" to "Politica sulla riservatezza",
        "privacy.tournamentData" to "Dati del torneo",
        "privacy.trainingData" to "Dati di allenamento",
        "privacy.usage" to "Utilizzo del diario di allenamento",
        "privacy.usageData" to "Dati di utilizzo",
        "privacy.website" to "Preparazione del sito web",
        "quickAddMember.birthDate" to "Data di nascita (facoltativa)",
        "quickAddMember.cancel" to "Cancellare",
        "quickAddMember.createAndAdd" to "Crea e aggiungi nuovo",
        "quickAddMember.firstName" to "Nome di battesimo",
        "quickAddMember.gender" to "Sesso",
        "quickAddMember.lastName" to "Cognome (facoltativo)",
        "quickAddMember.pleaseSelect" to "Seleziona",
        "quickAddMember.title" to "Aggiungi nuovo membro",
        "schedule.activeSelection" to "Selezione attiva",
        "schedule.addressLabel" to "Indirizzo",
        "schedule.adultSchedule" to "Programma per adulti",
        "schedule.ageClass" to "Gruppo di età",
        "schedule.allLeagueMatches" to "Tutte le partite",
        "schedule.balls" to "Palle",
        "schedule.cancel" to "Cancellare",
        "schedule.cityLabel" to "Codice postale/città",
        "schedule.code" to "Code",
        "schedule.completedShort" to "Completato",
        "schedule.copyCode" to "Copia il codice",
        "schedule.copyGuestPin" to "Copia il PIN",
        "schedule.copyHomePin" to "Copia il PIN di casa",
        "schedule.date" to "Data",
        "schedule.downloadPDF" to "Scarica PDF",
        "schedule.errorCopying" to "Errore durante la copia",
        "schedule.errorImportingCSV" to "Impossibile importare il file CSV",
        "schedule.errorLoadingAdultSchedule" to "Impossibile caricare il programma per adulti",
        "schedule.errorLoadingGallery" to "Impossibile caricare la galleria.",
        "schedule.errorLoadingMatches" to "Impossibile caricare le corrispondenze",
        "schedule.errorLoadingMembers" to "Impossibile caricare l'elenco dei membri.",
        "schedule.errorLoadingOverallSchedule" to "Impossibile caricare la pianificazione generale",
        "schedule.errorLoadingTable" to "Impossibile caricare i dati della classifica da myTischtennis",
        "schedule.errorLoadingTeams" to "Impossibile caricare le squadre",
        "schedule.errorSavingPlayerSelection" to "Impossibile salvare la selezione del giocatore",
        "schedule.fetchDataFailed" to "Impossibile recuperare i dati del team.",
        "schedule.fetchingTeamData" to "Recupero…",
        "schedule.fetchStartFailed" to "Impossibile avviare il recupero.",
        "schedule.fetchTeamData" to "Recupera pianificazione e risultati",
        "schedule.fetchTimedOut" to "Timeout durante il recupero dei dati.",
        "schedule.gallery" to "Galleria dei membri",
        "schedule.galleryLoading" to "Caricamento galleria…",
        "schedule.galleryTitle" to "Galleria membri: fai clic su un'immagine per contrassegnarla come pronta",
        "schedule.gamesFor" to "Corrispondenze per",
        "schedule.guestPin" to "PIN di assenza",
        "schedule.guestTeam" to "Squadra ospite",
        "schedule.homePin" to "PIN di casa",
        "schedule.homeTeam" to "Squadra di casa",
        "schedule.imageSize" to "Dimensione dell'immagine",
        "schedule.importSchedule" to "Importa pianificazione",
        "schedule.leagueTable" to "Classifica della lega",
        "schedule.loadingMembers" to "Caricamento membri...",
        "schedule.locationDialogTitle" to "Sala giochi",
        "schedule.locationInfo" to "Posizione",
        "schedule.locationName" to "Sala giochi",
        "schedule.matches" to "partite",
        "schedule.matchLabel" to "Gioco",
        "schedule.matchOverviewDescription" to "Controlla quali partite del campionato attualmente selezionato vengono mostrate nel calendario.",
        "schedule.matchOverviewTitle" to "Panoramica della partita",
        "schedule.nextMatch" to "Prossima partita",
        "schedule.noActiveMembers" to "Nessun membro attivo trovato",
        "schedule.noGames" to "Nessuna corrispondenza disponibile",
        "schedule.noLeagueForTeam" to "A questa squadra non è assegnato nessun campionato. Assegna prima un campionato.",
        "schedule.noMatchesForPDF" to "Nessuna corrispondenza trovata per generare un PDF.",
        "schedule.noMatchingTeams" to "Nessuna squadra corrisponde alla ricerca corrente.",
        "schedule.noMembersWithImages" to "Nessun membro con immagini trovato.",
        "schedule.noSelectionMessage" to "Scegli il programma generale, il programma per adulti o una squadra da sinistra.",
        "schedule.noSelectionTitle" to "Nessuna selezione attiva ancora",
        "schedule.noTableData" to "Nessun dato della tabella disponibile",
        "schedule.noTeamsFound" to "Nessuna squadra trovata per questa stagione",
        "schedule.openMatchReport" to "Apri il resoconto della partita",
        "schedule.otherTeamMatches" to "Altra squadra",
        "schedule.overallSchedule" to "Programma generale",
        "schedule.ownTeamMatches" to "La propria squadra",
        "schedule.pendingShort" to "Aprire",
        "schedule.planned" to "Pianificato",
        "schedule.played" to "Giocato",
        "schedule.player" to "Giocatore",
        "schedule.playerSelection" to "Selezione del giocatore",
        "schedule.playerSelectionSaved" to "Selezione del giocatore salvata",
        "schedule.pleaseSelectGame" to "Seleziona prima una corrispondenza",
        "schedule.points" to "Pt",
        "schedule.position" to "Posizione",
        "schedule.ready" to "Pronto",
        "schedule.refreshTable" to "Aggiorna tabella",
        "schedule.result" to "Risultato",
        "schedule.save" to "Salva",
        "schedule.scheduleImportSuccess" to "Pianificazione importata correttamente.",
        "schedule.schedulePDF" to "Orari.pdf",
        "schedule.scheduleTab" to "Programma",
        "schedule.searchTeams" to "Cerca squadra o campionato",
        "schedule.selection" to "Selezione",
        "schedule.selectOtherTeam" to "Seleziona un'altra squadra",
        "schedule.selectSpecificLeague" to "Seleziona un campionato specifico per caricare la tabella.",
        "schedule.sets" to "Imposta",
        "schedule.showLocation" to "Visualizza la sede del gioco",
        "schedule.subtitle" to "Seleziona le squadre, rivedi le partite e tieni sotto controllo le classifiche.",
        "schedule.tableDataLoaded" to "Dati della classifica caricati correttamente da myTischtennis.",
        "schedule.tableLoading" to "Caricamento tabella...",
        "schedule.tableTab" to "Tavolo",
        "schedule.team" to "Team",
        "schedule.teamDataFetched" to "Dati del team aggiornati correttamente.",
        "schedule.teamDataFetchedDetails" to "Squadra: {team}\nRecord elaborati: {count}",
        "schedule.teams" to "Teams",
        "schedule.time" to "Tempo",
        "schedule.title" to "Orari",
        "schedule.vs" to "vs",
        "schedule.workspaceScheduleDescription" to "{matches} corrispondenze, {completed} completate e {pending} aperte.",
        "schedule.workspaceTableDescription" to "{count} righe della tabella attualmente caricate.",
        "seasonSelector.addSeason" to "Aggiungi nuova stagione",
        "seasonSelector.alreadyExists" to "Questa stagione esiste già!",
        "seasonSelector.cancel" to "Cancellare",
        "seasonSelector.create" to "Creare",
        "seasonSelector.errorCreating" to "Errore durante la creazione della stagione",
        "seasonSelector.errorLoading" to "Errore durante il caricamento delle stagioni",
        "seasonSelector.hint" to "Avviso",
        "seasonSelector.label" to "Stagione:",
        "seasonSelector.loading" to "Caricamento...",
        "seasonSelector.newSeason" to "Crea una nuova stagione",
        "seasonSelector.placeholder" to "per esempio. 2023/2024",
        "seasonSelector.selectSeason" to "Seleziona stagione/i",
        "settings.language" to "Lingua",
        "settings.languageChanged" to "Lingua modificata con successo",
        "settings.languageDescription" to "Scegli la tua lingua preferita per l'applicazione",
        "settings.personalSettings" to "Impostazioni personali",
        "settings.selectLanguage" to "Seleziona lingua",
        "settings.title" to "Impostazioni",
        "tagHistory.noHistory" to "Nessuna cronologia dei tag disponibile",
        "tagHistory.selectTags" to "Seleziona Tag",
        "tagHistory.title" to "Etichetta: TypePad",
        "teamManagement.activeTeam" to "Squadra attiva",
        "teamManagement.addPlanningTeam" to "Aggiungi team di pianificazione",
        "teamManagement.allMembersAssigned" to "Tutti i membri sono attualmente assegnati.",
        "teamManagement.assignLeagueBeforeDocuments" to "Assegna prima un campionato alla squadra in modo che i documenti possano essere elaborati.",
        "teamManagement.assignLeagueBeforeParsing" to "Assegna prima un campionato alla squadra per analizzare i file PDF.",
        "teamManagement.assignMemberToTeam" to "Aggiungi alla squadra",
        "teamManagement.association" to "Associazione",
        "teamManagement.asyncJobStartFailed" to "Impossibile avviare il processo asincrono.",
        "teamManagement.autoFetchEnabled" to "Il recupero automatico dei dati è abilitato",
        "teamManagement.automaticJobs" to "Lavori automatici",
        "teamManagement.autoSaved" to "Salvataggio automatico",
        "teamManagement.autoSaveError" to "Salvataggio automatico non riuscito",
        "teamManagement.availableLineupMembers" to "Giocatori disponibili",
        "teamManagement.basicSettings" to "Impostazioni di base",
        "teamManagement.basicSettingsIntro" to "Rivedi e modifica il nome della squadra e il campionato in una forma più tranquilla.",
        "teamManagement.change" to "Modifica",
        "teamManagement.clearFields" to "Cancella campi",
        "teamManagement.codeList" to "Elenco dei codici",
        "teamManagement.configurationStatus" to "Stato della configurazione",
        "teamManagement.configureLeagueDetails" to "Associazione: {association}\nStagione: {season}\nLega: {league}\nID gruppo: {groupId}\n\nVuoi configurare questo campionato nel database? Ciò consente il recupero automatico dei dati della tabella.",
        "teamManagement.configureLeagueTitle" to "Configurare il campionato?",
        "teamManagement.createAndEdit" to "Crea e modifica",
        "teamManagement.created" to "Creato",
        "teamManagement.createNewTeam" to "Crea una nuova squadra",
        "teamManagement.dataFetchFailed" to "Impossibile recuperare i dati.",
        "teamManagement.delete" to "Eliminare",
        "teamManagement.deleteTeamConfirm" to "Vuoi davvero eliminare la squadra del club \"{name}\"?",
        "teamManagement.deleteTeamTitle" to "Elimina la squadra del club",
        "teamManagement.documentAvailable" to "Disponibile",
        "teamManagement.documentMissing" to "Mancante",
        "teamManagement.documentNotFound" to "Impossibile trovare il documento selezionato.",
        "teamManagement.documentParsedSummary" to "{label} caricato e analizzato correttamente.\n\nCorrispondenze trovate: {matchesFound}\nNuove corrispondenze create: {created}\nPartite aggiornate: {updated}",
        "teamManagement.documents" to "Documenti",
        "teamManagement.documentsIntro" to "Carica, rivedi e analizza nuovamente elenchi di codici ed elenchi di PIN quando necessario.",
        "teamManagement.documentUploaded" to "{label} \"{fileName}\" è stato caricato correttamente.",
        "teamManagement.edit" to "Modificare",
        "teamManagement.editTeam" to "Modifica squadra",
        "teamManagement.eligibility" to "Idoneità",
        "teamManagement.eligibilityAdultRelease" to "Autorizzato per adulti",
        "teamManagement.eligibilityAdultReleaseAndReserve" to "Autorizzato + riserva negli adulti",
        "teamManagement.eligibilityAdultReserve" to "Riserva negli adulti",
        "teamManagement.eligibilityRegular" to "Regolare",
        "teamManagement.enterUrlForAutoConfig" to "Inserisci un URL myTischtennis per la configurazione automatica",
        "teamManagement.error" to "Errore",
        "teamManagement.errorConfiguringLeague" to "Impossibile configurare il campionato.",
        "teamManagement.errorConfiguringTeam" to "Impossibile configurare la squadra.",
        "teamManagement.errorDeletingTeam" to "Impossibile eliminare la squadra del club.",
        "teamManagement.errorLoadingPdf" to "Impossibile caricare il PDF.",
        "teamManagement.errorLoadingStats" to "Impossibile caricare le statistiche.",
        "teamManagement.errorParsingPdf" to "Impossibile analizzare il file PDF",
        "teamManagement.errorParsingUrl" to "Impossibile analizzare l'URL. Si prega di verificare il formato.",
        "teamManagement.errorsCount" to "Errori: {count}",
        "teamManagement.errorUploadingDocument" to "Impossibile caricare e analizzare il file.",
        "teamManagement.exportLineupPdf" to "Esporta formazione come PDF",
        "teamManagement.fetched" to "recuperato",
        "teamManagement.fetchTimedOut" to "Timeout durante il recupero dei dati (il processo asincrono ha richiesto troppo tempo).",
        "teamManagement.fetchTimeoutShort" to "Timeout durante il recupero dei dati.",
        "teamManagement.fileTooLarge" to "{label} non deve superare i 10 MB.",
        "teamManagement.fileTooLargeTitle" to "File troppo grande",
        "teamManagement.filterAll" to "Tutto",
        "teamManagement.filterConfigured" to "Configurato",
        "teamManagement.filterNeedsAttention" to "Necessita di revisione",
        "teamManagement.filterNoLeague" to "Senza campionato",
        "teamManagement.firstHalf" to "Girone d’andata",
        "teamManagement.firstHalfFull" to "Girone d’andata (luglio - dicembre)",
        "teamManagement.fullyConfigured" to "Completamente configurato",
        "teamManagement.groupId" to "Identificativo del gruppo",
        "teamManagement.groupName" to "Nome del gruppo",
        "teamManagement.invalidFileExtension" to "{label} deve avere una delle seguenti estensioni: {extensions}.",
        "teamManagement.invalidFileTypeTitle" to "Tipo di file non valido",
        "teamManagement.invalidMimeType" to "{label} ha un tipo MIME imprevisto: {type}.",
        "teamManagement.lastRun" to "Ultima corsa",
        "teamManagement.lastUpdated" to "Ultimo aggiornamento",
        "teamManagement.latestUpload" to "Ultimo caricamento: {date}",
        "teamManagement.league" to "Lega",
        "teamManagement.leagueConfiguredDetails" to "Lega: {league}\nStagione: {season}\nAssociazione: {association}\nID gruppo: {groupId}\n\nI dati della tabella possono ora essere recuperati automaticamente.",
        "teamManagement.leagueConfiguredSuccess" to "Campionato configurato correttamente. I dati della tabella possono ora essere recuperati automaticamente.",
        "teamManagement.leagueFieldRequired" to "Seleziona una classe di campionato e salva.",
        "teamManagement.lineupEmpty" to "Nessun giocatore è ancora stato assegnato a questa squadra.",
        "teamManagement.lineupPdfEmpty" to "Nessun giocatore in formazione – impossibile creare il PDF.",
        "teamManagement.lineupPdfFilePrefix" to "Formazione",
        "teamManagement.lineupProposal" to "Formazione in base al QTTR",
        "teamManagement.lineupSaved" to "La formazione della squadra è salvata.",
        "teamManagement.lineupSaveError" to "Impossibile salvare la formazione della squadra.",
        "teamManagement.lineupUnsavedChanges" to "Sono presenti modifiche non salvate nella formazione della squadra.",
        "teamManagement.lineupValidationTooLargeGap" to "{higher} ha più di 30 punti QTTR di vantaggio su {lower}. Correggi questo ordine.",
        "teamManagement.loadingStats" to "Caricamento statistiche...",
        "teamManagement.manualFetch" to "Andare a prendere",
        "teamManagement.markAsInterested" to "Segna come interessato",
        "teamManagement.matchesSummary" to "Corrispondenze trovate: {matchesFound}\nNuove corrispondenze create: {created}\nPartite aggiornate: {updated}",
        "teamManagement.matchResults" to "Risultati delle partite",
        "teamManagement.missingConfigSummary" to "Dati mancanti:",
        "teamManagement.missingItems" to "Mancante: {items}",
        "teamManagement.missingLeagueForTeam" to "Per la squadra selezionata non è stato previsto alcun campionato.",
        "teamManagement.moreErrors" to "... e {count} altro",
        "teamManagement.myTischtennis" to "myTischtennis",
        "teamManagement.myTischtennisIntro" to "Incolla un URL, rivedi la configurazione e recupera i dati manualmente quando necessario.",
        "teamManagement.mytischtennisLoginRequired" to "È richiesto il login a myTischtennis",
        "teamManagement.myTischtennisUrlPlaceholder" to "URL di myTischtennis...",
        "teamManagement.myTischtennisUrlRequired" to "Incolla e analizza l’URL MyTischtennis per collegare l’ID squadra e i dati della lega.",
        "teamManagement.never" to "Mai",
        "teamManagement.newTeam" to "Nuova squadra",
        "teamManagement.noAssignment" to "Nessun incarico",
        "teamManagement.noAutomaticUpdate" to "Nessun aggiornamento automatico ancora",
        "teamManagement.noDocumentUploadYet" to "Nessun documento ancora caricato.",
        "teamManagement.noIssues" to "Nessun problema di configurazione aperto.",
        "teamManagement.noLeague" to "Nessun campionato",
        "teamManagement.noMatchesFoundDetails" to "Nota: nessuna corrispondenza rilevata.\nRighe nel documento: {lines}",
        "teamManagement.noMatchesFoundTitle" to "Nessuna corrispondenza trovata",
        "teamManagement.noMatchingTeams" to "Nessuna squadra corrisponde alla ricerca o al filtro corrente.",
        "teamManagement.noMembersInPool" to "Nessun membro corrispondente trovato.",
        "teamManagement.noPlannedLeague" to "Nessun campionato in programma",
        "teamManagement.noPlayerStats" to "Nessuna apparizione registrata.",
        "teamManagement.notConfigured" to "Non configurato",
        "teamManagement.notCreated" to "Non creato",
        "teamManagement.noTeamsYet" to "Nessuna squadra ancora Crea la tua prima squadra.",
        "teamManagement.openDocument" to "Aprire",
        "teamManagement.openInWorkspace" to "Apri per modificare",
        "teamManagement.parseDocument" to "Analizzare di nuovo",
        "teamManagement.parseUrlAction" to "Controlla l'URL",
        "teamManagement.partiallyConfigured" to "Parzialmente configurato",
        "teamManagement.pdfFileNotFound" to "Impossibile trovare il file PDF.",
        "teamManagement.pinList" to "Elenco PIN",
        "teamManagement.plannedLeague" to "Campionato previsto",
        "teamManagement.plannedLeagueHint" to "Facoltativo. Indipendente dal campionato registrato (MyTischtennis).",
        "teamManagement.plannedLeaguePlaceholder" to "es. campionato di zona, dopo la prossima iscrizione …",
        "teamManagement.planningSubtitle" to "Distribuisci i membri ai team pianificati, imposta l'ordine e visualizza i compiti aperti.",
        "teamManagement.planningTitle" to "Pianificazione del gruppo",
        "teamManagement.player" to "Giocatore",
        "teamManagement.playersPoolSubtitle" to "Tutti i membri attivi con interesse per il gioco",
        "teamManagement.playerStats" to "Apparenze",
        "teamManagement.playerStatsIntro" to "Una rapida panoramica delle presenze di questa squadra nella stagione in corso.",
        "teamManagement.playersWantToPlay" to "Vogliamo giocare.",
        "teamManagement.qttr" to "Valutazione (Q)TTR",
        "teamManagement.ratingUpdates" to "Aggiornamenti della valutazione",
        "teamManagement.refreshStats" to "Aggiorna",
        "teamManagement.reuploadFile" to "Carica nuovamente il file e riprova.",
        "teamManagement.searchMembers" to "Cerca membro",
        "teamManagement.searchTeams" to "Squadra di ricerca",
        "teamManagement.season" to "Stagione",
        "teamManagement.seasonFull" to "Tutta la stagione (dal 1 luglio)",
        "teamManagement.seasonUnknown" to "sconosciuto",
        "teamManagement.secondHalf" to "Girone di ritorno",
        "teamManagement.secondHalfFull" to "Girone di ritorno (dal 1° gennaio)",
        "teamManagement.selectedLineup" to "Giocatori schierati",
        "teamManagement.selectMember" to "Seleziona membro",
        "teamManagement.selectTeam" to "Seleziona Squadra",
        "teamManagement.selectTeamFirst" to "Seleziona prima una squadra",
        "teamManagement.selectTeamForConfiguration" to "Per attivare la configurazione myTischtennis è necessario prima selezionare una squadra dalla lista.",
        "teamManagement.selectTeamTitle" to "Seleziona squadra",
        "teamManagement.showCodeList" to "Mostra l'elenco dei codici",
        "teamManagement.showPinList" to "Mostra elenco PIN",
        "teamManagement.sortFirstLast" to "Ordinamento: Nome Cognome",
        "teamManagement.sortLastFirst" to "Ordinamento: Cognome Nome",
        "teamManagement.status" to "stato",
        "teamManagement.subtitle" to "Seleziona le squadre, rivedi la configurazione e mantieni i dati del campionato in un unico posto.",
        "teamManagement.successful" to "Riuscito",
        "teamManagement.tableUpdateLabel" to "Aggiornamento tabella:",
        "teamManagement.tableUrlDetected" to "URL della tabella rilevato",
        "teamManagement.team" to "Team",
        "teamManagement.teamAgeGroup" to "Gruppo di età",
        "teamManagement.teamConfiguredDetails" to "Lega: {league}\nStagione: {season}\nIl recupero automatico dei dati è ora attivo.",
        "teamManagement.teamConfiguredSuccess" to "Squadra configurata correttamente. Il recupero automatico dei dati è ora attivo.",
        "teamManagement.teamDataFetched" to "I dati del team sono stati recuperati correttamente.",
        "teamManagement.teamDataFetchedDetails" to "Squadra: {team}\nRecord recuperati: {count}",
        "teamManagement.teamGender" to "Genere",
        "teamManagement.teamGenderFemale" to "Femmina",
        "teamManagement.teamGenderOpen" to "Aprire",
        "teamManagement.teamHasNoLeague" to "Questa squadra non è assegnata a un campionato.",
        "teamManagement.teamId" to "Identificativo della squadra",
        "teamManagement.teamName" to "Nome della squadra",
        "teamManagement.teamNamePlaceholder" to "per esempio. Uomini 1, Donne 2",
        "teamManagement.teams" to "Teams",
        "teamManagement.title" to "Gestione della squadra",
        "teamManagement.unassignedMembers" to "non ancora assegnato",
        "teamManagement.unassignedMembersSubtitle" to "Membri senza assegnazione di squadra",
        "teamManagement.unknown" to "Sconosciuto",
        "teamManagement.unknownTeam" to "Squadra sconosciuta",
        "teamManagement.updated" to "aggiornato",
        "teamManagement.uploadNewVersion" to "Carica la nuova versione",
        "tournament.apply" to "Applica modifiche",
        "tournaments.action" to "Azione",
        "tournaments.add" to "Aggiungere",
        "tournaments.addClass" to "Aggiungi classe",
        "tournaments.addClubMember" to "Aggiungi membro del club",
        "tournaments.addExternalParticipant" to "Aggiungi partecipante esterno",
        "tournaments.addPairing" to "Aggiungi abbinamento",
        "tournaments.addPoolRule" to "Aggiungi regola del girone",
        "tournaments.address" to "Indirizzo",
        "tournaments.adjustTournamentSearch" to "Modifica il termine di ricerca o crea un nuovo torneo.",
        "tournaments.advancersPerGroup" to "Promotori per gruppo",
        "tournaments.allClasses" to "Tutte le classi",
        "tournaments.allDataComplete" to "Tutti i dati dei partecipanti sono completi.",
        "tournaments.allDataCompleteTop3" to "Tutti i dati dei primi 3 classificati sono completi.",
        "tournaments.apply" to "Applica modifiche",
        "tournaments.assignmentReviewTitle" to "I partecipanti {count} hanno bisogno di una scelta:",
        "tournaments.atLeastOnePoolRule" to "Aggiungi almeno una regola del girone per {label} (es. posizioni 1,2).",
        "tournaments.autoAssignableParticipantsHint" to "{count} di essi possono essere assegnati automaticamente.",
        "tournaments.autoAssignEligible" to "Assegna automaticamente",
        "tournaments.autoAssignEligibleDone" to "{count} i partecipanti sono stati assegnati automaticamente.",
        "tournaments.autoAssignEligibleNone" to "Al momento non ci sono partecipanti con un'unica assegnazione automatica della classe.",
        "tournaments.autoAssignEligiblePartial" to "{successCount} partecipanti sono stati assegnati automaticamente, {errorCount} non è riuscito.",
        "tournaments.birthdate" to "Data di nascita",
        "tournaments.cancel" to "Cancellare",
        "tournaments.class" to "Classe",
        "tournaments.classes" to "Classi",
        "tournaments.className" to "Nome della classe",
        "tournaments.cleanupOrphanedMatches" to "Pulisci i giochi orfani",
        "tournaments.club" to "Associazione",
        "tournaments.clubMember" to "(Membro del club)",
        "tournaments.conflictSuggestionLabel" to "Suggerimenti:",
        "tournaments.correctMatch" to "Correggi",
        "tournaments.create" to "Creare",
        "tournaments.createFinalFromIntermediate" to "Crea il turno finale dall'intermedio",
        "tournaments.createFinalFromPreliminary" to "Crea il turno finale dal preliminare",
        "tournaments.createGroupMatches" to "Crea partite di gruppo",
        "tournaments.createGroups" to "Chi può creare gruppi",
        "tournaments.createIntermediateFromPreliminary" to "Crea il turno intermedio dal preliminare",
        "tournaments.createMatches" to "Imposta le partite",
        "tournaments.createSuggestedPairings" to "Crea abbinamenti",
        "tournaments.currentClass" to "Classe attiva",
        "tournaments.dataNotRecorded" to "Non ancora registrato",
        "tournaments.date" to "Data",
        "tournaments.delete" to "Eliminare",
        "tournaments.deleteClassConfirm" to "Vuoi davvero eliminare la classe \"{name}\"?",
        "tournaments.deleteClassParticipantsDetached" to "Tutti i partecipanti saranno scollegati da questa classe.",
        "tournaments.deleteClassTitle" to "Elimina classe",
        "tournaments.deleteExistingPairingsConfirm" to "Le coppie esistenti verranno eliminate. Continuare?",
        "tournaments.deleteKORound" to "Tramortire",
        "tournaments.diff" to "Diff",
        "tournaments.distributeTables" to "Distribuire tavoli liberi",
        "tournaments.distributeTablesResult" to "Distribuzione dei tavoli",
        "tournaments.doubles" to "Raddoppiare",
        "tournaments.doublesPairingHint" to "I {count} partecipanti a questa lezione di doppio necessitano ancora di un partner.",
        "tournaments.doublesTournament" to "Torneo di doppio",
        "tournaments.doublesTournamentHint" to "Cambia tutte le classi esistenti in doppie e crea nuove classi come doppie per impostazione predefinita.",
        "tournaments.edit" to "Modificare",
        "tournaments.eligibleClassesHint" to "Adatto per: {classes}",
        "tournaments.email" to "Indirizzo e-mail",
        "tournaments.encounter" to "Incontro",
        "tournaments.enterClassName" to "Inserisci un nome classe.",
        "tournaments.enterExternalParticipantName" to "Inserisci almeno nome e cognome.",
        "tournaments.enterMiniLocation" to "Inserisci una località.",
        "tournaments.errorCreatingGroups" to "Errore durante la creazione dei gruppi.",
        "tournaments.errorCreatingTournament" to "Errore durante la creazione del torneo.",
        "tournaments.errorDistributingTables" to "Errore durante la distribuzione dei tavoli.",
        "tournaments.errorGeneratingPdf" to "Errore durante la generazione del PDF.",
        "tournaments.errorMergingClasses" to "Impossibile unire le classi.",
        "tournaments.errorMoreSeededThanUnseeded" to "Ci sono più giocatori scommessi che non teste di serie. Impossibile creare abbinamenti casuali.",
        "tournaments.errorResettingKORound" to "Errore durante la reimpostazione della fase a eliminazione diretta.",
        "tournaments.errorUpdatingTournament" to "Errore durante l'aggiornamento del torneo.",
        "tournaments.exportPDF" to "Esporta PDF",
        "tournaments.external" to "Esterno",
        "tournaments.finalPlacements" to "Posizionamenti finali",
        "tournaments.finalRound" to "Turno finale",
        "tournaments.finishMatch" to "Concludi",
        "tournaments.firstName" to "Nome di battesimo",
        "tournaments.forForwarding" to "per l'inoltro",
        "tournaments.gaveUp" to "Posizionato",
        "tournaments.gaveUpHint" to "Il giocatore si è arreso: tutte le partite contano per l'avversario (11:0) o 0:0 per entrambi.",
        "tournaments.genderAll" to "Tutto",
        "tournaments.genderMixed" to "Mixed",
        "tournaments.generatingPDF" to "Generazione PDF...",
        "tournaments.group" to "Gruppo",
        "tournaments.groupMatches" to "Partite dell'Inter girone",
        "tournaments.groupNumber" to "Gruppo",
        "tournaments.groupPlacements" to "Posizionamenti di gruppo",
        "tournaments.groupsLabel" to "Gruppi",
        "tournaments.groupsOverview" to "Panoramica dei gruppi",
        "tournaments.groupsPerClass" to "Classifiche della piscina",
        "tournaments.groupsPerClassHint" to "Per ogni classe, inserisci il numero di gruppi (0 = nessun gruppo per questa classe):",
        "tournaments.index" to "Index",
        "tournaments.intermediateRound" to "Turno intermedio (turno 2)",
        "tournaments.internalStatsAbsoluteRank" to "Classifica somma",
        "tournaments.internalStatsAgeFilter" to "Età e genere (singolo)",
        "tournaments.internalStatsAgeFilterAll" to "Tutte le categorie",
        "tournaments.internalStatsAgeFilterNone" to "Nessuna categoria selezionata",
        "tournaments.internalStatsAgeNoClass" to "Senza classe assegnata",
        "tournaments.internalStatsAgeSelectAll" to "Tutte",
        "tournaments.internalStatsAgeSelectNone" to "Nessuna",
        "tournaments.internalStatsAverageRank" to "Classifica media (per torneo)",
        "tournaments.internalStatsAvgPoints" to "Media",
        "tournaments.internalStatsEmpty" to "Nessun dato nel periodo selezionato.",
        "tournaments.internalStatsExportPdf" to "Esporta PDF",
        "tournaments.internalStatsFilterAgeBands" to "Classi di età",
        "tournaments.internalStatsFilterGenderColumn" to "Genere",
        "tournaments.internalStatsGenderScopeAll" to "Tutto",
        "tournaments.internalStatsGenderScopeGirls" to "Solo ragazze",
        "tournaments.internalStatsLast12Months" to "Ultimi 12 mesi",
        "tournaments.internalStatsLast3Months" to "Ultimi 3 mesi",
        "tournaments.internalStatsLast6Months" to "Ultimi 6 mesi",
        "tournaments.internalStatsOpenButton" to "Statistiche tornei (singolo)",
        "tournaments.internalStatsPeriod" to "Periodo",
        "tournaments.internalStatsPoints" to "Totale",
        "tournaments.internalStatsPointsExplain" to "Punteggio: in ogni girone la posizione è in percentuale (con N classificati: 1° = 100 %, ultimo = 0 %, lineare in mezzo; stesso posto = stesso valore). N include tutti i classificati nel girone (ospiti inclusi). Un solo giocatore: 100 %. In KO: massimo girone della classe + 1, poi +1 per partita KO vinta. Solo soci al singolo.",
        "tournaments.internalStatsTitle" to "Statistiche tornei interni (singolo)",
        "tournaments.internalStatsTournamentsInPeriod" to "{count} torneo/i nel periodo (esclusi i mini-campionati).",
        "tournaments.internalStatsTtAdult" to "Adulti",
        "tournaments.internalTournaments" to "Tornei interni",
        "tournaments.knockoutLabel" to "KO",
        "tournaments.koRound" to "turno ad eliminazione diretta",
        "tournaments.lastName" to "Cognome",
        "tournaments.livePosition" to "Posto dal vivo",
        "tournaments.loadFromTraining" to "Carico dal giorno dell'allenamento",
        "tournaments.markMatchLive" to "Segna come live",
        "tournaments.maxGroupSize" to "Dimensione massima del gruppo",
        "tournaments.mergeClasses" to "Unisci classi (fase di gruppo comune)",
        "tournaments.mergeDistribute" to "Distribuire i giocatori da A a tutti i gruppi (da B)",
        "tournaments.mergeSingleGroup" to "Tutti i giocatori di A in un gruppo (in B)",
        "tournaments.minBirthYear" to "Nato nell'anno o successivo",
        "tournaments.miniChampionshipLocation" to "Posizione",
        "tournaments.miniChampionships" to "Minicampionati",
        "tournaments.miniChampionshipYear" to "Anno",
        "tournaments.miniChampionshipYearHint" to "12 = quest'anno 12 o 13 anni, 10 = 10 o 11, 8 = 9 e più giovani",
        "tournaments.minimumParticipantsForPairings" to "Sono necessari almeno 2 partecipanti per le coppie.",
        "tournaments.missingDataPDF" to "Dati mancanti come PDF",
        "tournaments.missingDataPDFSubtitle" to "Si prega di raccogliere i dati mancanti (contrassegnati con ____) dai partecipanti e annotarli qui.",
        "tournaments.missingDataPDFSubtitleTop3" to "Si prega di raccogliere i dati mancanti dei primi 3 (contrassegnati con ____) e annotarli qui.",
        "tournaments.missingDataPDFTitle" to "Dati mancanti dei partecipanti – Mini campionato",
        "tournaments.missingDataPDFTitleTop3" to "Dati mancanti – Top 3 Mini campionato",
        "tournaments.name" to "nome",
        "tournaments.newMiniChampionship" to "Nuovo Mini Campionato",
        "tournaments.setShort" to "Set",
        "tournaments.newTournament" to "Aggiungi nuovo torneo",
        "tournaments.noAssignableMatches" to "Nessuna partita disponibile in cui entrambi i giocatori sono liberi.",
        "tournaments.noClassesYet" to "Nessuna lezione ancora disponibile. Aggiungi una nuova classe.",
        "tournaments.noEligibleClass" to "Nessuna classe adatta trovata.",
        "tournaments.noFreeTables" to "Nessun tavolo libero disponibile.",
        "tournaments.noMatchingTournamentsTitle" to "Nessun torneo corrispondente",
        "tournaments.noOrphanedMatchesFound" to "Nessuna partita orfana trovata.",
        "tournaments.noPlacementsYet" to "Nessun posizionamento ancora disponibile.",
        "tournaments.noPlayerDataAvailable" to "Nessun dato del giocatore disponibile",
        "tournaments.noPoolRulesYet12" to "Nessuna regola ancora. Esempio: posizioni 1 e 2 -> gruppi superiori del turno 2.",
        "tournaments.noPoolRulesYetFinal" to "Nessuna regola ancora. Esempio: posizioni 1 e 2 -> turno finale.",
        "tournaments.noTop3Yet" to "I primi 3 posti non sono ancora stati determinati.",
        "tournaments.noTournamentDate" to "Nessuna data torneo disponibile.",
        "tournaments.noTournamentsCreatedYet" to "Nessun torneo è stato ancora creato.",
        "tournaments.noTrainingOnDate" to "Nessuna sessione di allenamento trovata per {date}.",
        "tournaments.noTrainingParticipants" to "Nessun partecipante trovato nella sessione di allenamento per questa data.",
        "tournaments.noValidTrainingParticipants" to "Nessun partecipante valido trovato nella sessione di allenamento per questa data.",
        "tournaments.numberOfGroups" to "N. di gruppi",
        "tournaments.numberOfTables" to "Numero di tavoli",
        "tournaments.openTournaments" to "Tornei aperti",
        "tournaments.optional" to "optional",
        "tournaments.orphanedMatchesRemoved" to "{count} partite orfane rimosse.",
        "tournaments.outOfCompetition" to "Giocatore di A fuori competizione",
        "tournaments.page" to "Pagina",
        "tournaments.pairingAlreadyExists" to "Questa coppia esiste già.",
        "tournaments.pairings" to "Doppi accoppiamenti",
        "tournaments.pairingsCreatedWithErrors" to "{successCount} coppie create, {errorCount} errori.",
        "tournaments.participantConflicts" to "Conflitti",
        "tournaments.participantNotFound" to "Partecipante non trovato.",
        "tournaments.participants" to "Partecipanti",
        "tournaments.participantsNeedClassAssignment" to "I partecipanti {count} non sono ancora stati assegnati a una classe. Questi dovrebbero essere assegnati per primi.",
        "tournaments.phone" to "Telefono",
        "tournaments.placementsPendingFinals" to "Le classifiche finali verranno visualizzate quando esistono più gruppi o un round finale.",
        "tournaments.placementsPendingGroups" to "Le classifiche dei gironi verranno visualizzate una volta esistenti le partite dei gironi.",
        "tournaments.placementsPendingNoGroups" to "I piazzamenti verranno visualizzati qui una volta che si terranno le partite dei gironi o la fase finale.",
        "tournaments.placementsPendingSelectedClass" to "Non ci sono ancora posizionamenti per la classe attualmente selezionata.",
        "tournaments.placementsPendingTitle" to "Posti non ancora disponibili",
        "tournaments.placesFromEachGroup" to "Posizioni da ogni gruppo (es. 1,2)",
        "tournaments.player" to "Pattinatori",
        "tournaments.playerOne" to "Giocatore 1",
        "tournaments.playerTwo" to "Giocatore 2",
        "tournaments.playInGroups" to "Giocare in gruppo",
        "tournaments.playThirdPlace" to "Giocare la finale per il terzo posto",
        "tournaments.pleaseEnterDate" to "Inserisci una data",
        "tournaments.pleaseSelectParticipant" to "Seleziona uno studente.",
        "tournaments.points" to "Punti",
        "tournaments.pointsRatio" to "Punti di gioco",
        "tournaments.poolRuleLabel" to "Regola {number}",
        "tournaments.poolRulePlacesHelp" to "Esempio: 1 o 1,2",
        "tournaments.poolRulePlacesLabel" to "Quali luoghi avanzano?",
        "tournaments.poolRulePreview" to "Da ciascun gruppo, i luoghi {places} avanzano a {target}.",
        "tournaments.poolRuleQuickExamples" to "Esempi rapidi:",
        "tournaments.poolRuleSummary" to "Luoghi {places} vai a {target}",
        "tournaments.poolRuleTargetGroupsDetailed" to "{count} gruppi target",
        "tournaments.poolRuleTargetKnockout" to "il girone ad eliminazione diretta",
        "tournaments.poolRuleTargetLabel" to "Dove vanno questi posti?",
        "tournaments.position" to "La piazza",
        "tournaments.problemConfigDescription" to "Controlla data, nome e set vincenti.",
        "tournaments.problemConfigTitle" to "Configurazione incompleta",
        "tournaments.problemConflictsDescription" to "Controlla le classi non valide, i dati mancanti o i compiti poco chiari.",
        "tournaments.problemConflictsTitle" to "{count} partecipanti con conflitti",
        "tournaments.problemDoublesAutoDescription" to "La lezione di doppio aperto può essere accoppiata automaticamente subito.",
        "tournaments.problemDoublesDescription" to "Una o più classi di doppio necessitano ancora dell'assegnazione dei partner.",
        "tournaments.problemDoublesTitle" to "{count} partner di doppio aperto",
        "tournaments.problemGroupMatchesDescription" to "I gironi sono pronti, ma le partite non sono ancora state create.",
        "tournaments.problemGroupMatchesTitle" to "Partite di gruppo non ancora generate",
        "tournaments.problemGroupsMissingDescription" to "Il torneo a gruppi richiede prima la creazione dei gruppi.",
        "tournaments.problemGroupsMissingTitle" to "Gruppi non ancora creati",
        "tournaments.problemKnockoutReadyDescription" to "La fase a gironi è completata e ora è possibile generare la fase finale.",
        "tournaments.problemKnockoutReadyTitle" to "Si può iniziare il knockout",
        "tournaments.problemUnassignedAutoDescription" to "{count} di essi possono essere assegnati automaticamente immediatamente.",
        "tournaments.problemUnassignedDescription" to "Questi partecipanti necessitano ancora di un compito manuale in classe.",
        "tournaments.problemUnassignedTitle" to "{count} partecipanti senza lezione",
        "tournaments.promotionRule12" to "Avanzamento: turno preliminare → turno intermedio (1→2)",
        "tournaments.promotionRuleDescription12" to "Definire quali posti di ciascun girone preliminare avanzano al turno intermedio.",
        "tournaments.promotionRuleDescriptionFinalGroups" to "Definisci quali posti del turno precedente avanzano ai gironi del turno finale.",
        "tournaments.promotionRuleDescriptionFinalKnockout" to "Definisci quali posti del turno precedente avanzeranno al girone a eliminazione diretta.",
        "tournaments.promotionRuleFinal" to "Avanzamento: turno {from} → turno {to}",
        "tournaments.randomizeGroups" to "Randomizzare",
        "tournaments.randomPairings" to "Doppie coppie casuali",
        "tournaments.randomPairingsCreated" to "Sono stati creati abbinamenti casuali.",
        "tournaments.resetGroupMatches" to "Partite dell'Inter girone",
        "tournaments.resetGroups" to "Reimposta gruppi",
        "tournaments.result" to "Risultato",
        "tournaments.resultsRanking" to "Classifica",
        "tournaments.round" to "Girare",
        "tournaments.roundGroupCount" to "Numero di gruppi",
        "tournaments.roundMode" to "Modalità",
        "tournaments.ruleStatusBlocked" to "Bloccato",
        "tournaments.ruleStatusOk" to "Sembra buono",
        "tournaments.ruleStatusOkDescription" to "Questa regola corrisponde al round target corrente e può essere utilizzata così com'è.",
        "tournaments.ruleStatusReview" to "Revisione",
        "tournaments.save" to "Salva",
        "tournaments.saveRounds" to "Salva turni",
        "tournaments.seeded" to "Seme",
        "tournaments.selectClass" to "Seleziona Classe",
        "tournaments.selectClassPrompt" to "Seleziona una classe.",
        "tournaments.selectedTournament" to "Torneo attivo",
        "tournaments.selectParticipant" to "Scegli utente",
        "tournaments.selectPlayer" to "Seleziona i giocatori",
        "tournaments.selectTournamentFirst" to "Seleziona prima un torneo.",
        "tournaments.selectTwoDifferentPlayers" to "Seleziona due giocatori diversi.",
        "tournaments.setDiff" to "Differenza di frase",
        "tournaments.sets" to "frasi",
        "tournaments.showClass" to "Visualizza classe",
        "tournaments.showingTournamentCount" to "{visible} di {total}",
        "tournaments.showPlayerDetails" to "Visualizza i dettagli del giocatore",
        "tournaments.singles" to "Separare",
        "tournaments.sourceClass" to "Fonte",
        "tournaments.stageActionMissingRulesHint" to "Crea almeno una regola di avanzamento prima di spostare i giocatori al turno successivo.",
        "tournaments.stageActionRun" to "Corri adesso",
        "tournaments.stageActionsDescription" to "Questi passaggi spostano i giocatori qualificati al turno successivo.",
        "tournaments.stageActionsTitle" to "Prossime azioni",
        "tournaments.stageConfigBadServerResponse" to "Risposta del server non valida.",
        "tournaments.stageConfigCurrentSetup" to "Struttura attuale",
        "tournaments.stageConfigIntro" to "Il turno intermedio è facoltativo. Se lo attivi, dopo ci sarà sempre un turno finale. Una fase finale a eliminazione diretta viene creata come un unico tabellone.",
        "tournaments.stageConfigLoadError" to "Errore durante il caricamento della configurazione dei turni.",
        "tournaments.stageConfigLoading" to "Caricamento configurazione dei turni…",
        "tournaments.stageConfigMissingIds" to "Impossibile salvare: manca l'ID del club o del torneo.",
        "tournaments.stageConfigTitle" to "Turno intermedio e finale",
        "tournaments.stageCreated" to "Il turno {round} è stato creato.",
        "tournaments.stageFinalDescription" to "Decidi se la fase finale dovrà essere giocata in gruppi o direttamente a eliminazione diretta.",
        "tournaments.stageFlowBreakdownActionAddRule" to "Aggiungi regola",
        "tournaments.stageFlowBreakdownActionOpen" to "Regola aperta",
        "tournaments.stageFlowBreakdownActionReview" to "Rivedere i problemi",
        "tournaments.stageFlowBreakdownErrors" to "{count} errori bloccanti",
        "tournaments.stageFlowBreakdownMissingRule" to "Non è stata ancora aggiunta alcuna regola completa",
        "tournaments.stageFlowBreakdownOk" to "La configurazione sembra buona",
        "tournaments.stageFlowBreakdownWarnings" to "{count} avvisi aperti",
        "tournaments.stageFlowDirectFinal" to "Turno eliminatorio -> turno finale ({final})",
        "tournaments.stageFlowHealthBlocked" to "La logica rotonda è contraddittoria",
        "tournaments.stageFlowHealthBlockedDescription" to "Almeno una regola attualmente non corrisponde al round di destinazione o contiene errori di configurazione di blocco.",
        "tournaments.stageFlowHealthIncomplete" to "La logica circolare è incompleta",
        "tournaments.stageFlowHealthMissingRules" to "Almeno una transizione non ha ancora una regola di avanzamento completa.",
        "tournaments.stageFlowHealthOk" to "La logica rotonda sembra buona",
        "tournaments.stageFlowHealthOkDescription" to "Le transizioni tra i round sono completamente configurate e attualmente coerenti.",
        "tournaments.stageFlowHealthReviewDescription" to "La logica del round è sostanzialmente utilizzabile, ma dovrebbe comunque essere rivista a causa dei suggerimenti aperti.",
        "tournaments.stageFlowPreviewMissing" to "Nessuna regola è stata ancora configurata.",
        "tournaments.stageFlowPreviewRule" to "Luoghi {places} vai a {target}",
        "tournaments.stageFlowPreviewRuleWithCount" to "{base} (qualificatori previsti: {count})",
        "tournaments.stageFlowQualifiedPreviewEntry" to "G{group} · Luogo {position} · {name}",
        "tournaments.stageFlowQualifiedPreviewTitle" to "Attualmente qualificato",
        "tournaments.stageFlowReadinessIncompleteGroups" to "I gruppi {count} non sono ancora stati completamente decisi",
        "tournaments.stageFlowReadinessNoGroups" to "Non esistono ancora gruppi corrispondenti",
        "tournaments.stageFlowReadinessReady" to "La transizione è pronta per iniziare",
        "tournaments.stageFlowRecommendationError" to "Esaminare innanzitutto il primo errore bloccante nella logica del round.",
        "tournaments.stageFlowRecommendationFixes" to "I tipici problemi di configurazione possono essere risolti automaticamente immediatamente.",
        "tournaments.stageFlowRecommendationMissingRule" to "Manca ancora una regola completa per {label}. Questo è il posto migliore per continuare.",
        "tournaments.stageFlowRecommendationSave" to "La logica del round è coerente. Ora puoi salvare la configurazione.",
        "tournaments.stageFlowRecommendationTitle" to "Passaggio successivo consigliato",
        "tournaments.stageFlowRecommendationWarnings" to "Sono ancora presenti avvisi da rivedere prima di salvare.",
        "tournaments.stageFlowWithIntermediate" to "Turno eliminatorio -> turno intermedio ({stage2}) -> turno finale ({final})",
        "tournaments.stageParticipantsTransferred" to "I giocatori qualificati sono stati spostati in {round}.",
        "tournaments.stageStep1" to "Passaggio 1",
        "tournaments.stageStep1Description" to "Per prima cosa decidere se è necessario un turno aggiuntivo dopo il turno preliminare.",
        "tournaments.stageStep1Title" to "Decidere un round intermedio",
        "tournaments.stageStep2" to "Passaggio 2",
        "tournaments.stageStep2Description" to "Definire come dovrebbe essere il turno intermedio e di quanti gruppi ha bisogno.",
        "tournaments.stageStep3" to "Passaggio 3",
        "tournaments.stageValidationApplyAllFixes" to "Applica {count} soluzioni rapide",
        "tournaments.stageValidationApplyFix" to "Fare domanda a",
        "tournaments.stageValidationApplyTargetGroupFix" to "Imposta su {count} gruppi target",
        "tournaments.stageValidationApplyTargetTypeFix" to "Passa a {target}",
        "tournaments.stageValidationDescription" to "Risolvi questi punti prima di salvare o spostare i giocatori al turno successivo.",
        "tournaments.stageValidationGroupCountRequired" to "Imposta almeno un conteggio di gruppi valido.",
        "tournaments.stageValidationKnockoutByesLikely" to "Con le qualificazioni {count} previste, molto probabilmente il girone a eliminazione diretta includerà dei bye.",
        "tournaments.stageValidationKnockoutNeedsTwoPlayers" to "Un girone a eliminazione diretta necessita di almeno 2 giocatori qualificati.",
        "tournaments.stageValidationKnockoutTargetOnly" to "Per una fase finale a eliminazione diretta, qui è consentito solo il girone a eliminazione diretta.",
        "tournaments.stageValidationNoRules" to "Non esiste ancora alcuna regola di avanzamento per {stage}.",
        "tournaments.stageValidationNotEnoughQualifiersForGroups" to "Con solo qualificatori {count} per i gruppi target {groups}, verrebbero creati gruppi vuoti.",
        "tournaments.stageValidationRulePlacesDuplicate" to "Una singola regola non deve contenere lo stesso luogo più di una volta.",
        "tournaments.stageValidationRulePlacesGap" to "La definizione del luogo presenta lacune. Di solito si intende un ordine continuo come 1,2 o 1,2,3.",
        "tournaments.stageValidationRulePlacesInvalid" to "La definizione del luogo non è valida. Sono ammessi solo numeri interi positivi come 1 o 1,2.",
        "tournaments.stageValidationRulePlacesRequired" to "Inserisci almeno un luogo che dovrebbe avanzare.",
        "tournaments.stageValidationRulesOverlap" to "Il posto {place} viene assegnato due volte, nella regola {first} e nella regola {second}.",
        "tournaments.stageValidationSaveBlocked" to "Correggi prima gli errori di configurazione evidenziati.",
        "tournaments.stageValidationSuggestion" to "Suggerimento: {value}",
        "tournaments.stageValidationTargetGroupCountMismatch" to "Il numero di gruppi target deve corrispondere al round target. Previsto: {expected}.",
        "tournaments.stageValidationTargetGroupsRequired" to "Inserisci un numero valido di gruppi target.",
        "tournaments.stageValidationTargetTypeMismatch" to "Il bersaglio di questa regola deve corrispondere al round bersaglio. Previsto: {target}.",
        "tournaments.stageValidationThinGroupsLikely" to "Con i qualificatori {count} nei gruppi target {groups}, i gruppi saranno probabilmente molto piccoli.",
        "tournaments.stageValidationTitle" to "Esaminare la configurazione",
        "tournaments.startKORound" to "Inizia il turno a eliminazione diretta",
        "tournaments.statusActionAssign" to "Assegnare",
        "tournaments.statusActionCreate" to "Creare",
        "tournaments.statusActionGenerate" to "Generare",
        "tournaments.statusActionPair" to "Paio",
        "tournaments.statusActionReview" to "Revisione",
        "tournaments.statusActionStart" to "Inizio",
        "tournaments.statusConfigIncomplete" to "Configurazione incompleta",
        "tournaments.statusConfigReady" to "Configurazione pronta",
        "tournaments.statusFinished" to "Finito",
        "tournaments.statusGroupsMissing" to "Gruppi non ancora creati",
        "tournaments.statusGroupsReady" to "Gruppi pronti",
        "tournaments.statusGroupsRunning" to "Fase a gironi in corso",
        "tournaments.statusKnockoutReady" to "Knockout pronto per iniziare",
        "tournaments.statusKnockoutRunning" to "Eliminazione in corso",
        "tournaments.statusLive" to "vivere",
        "tournaments.statusOpen" to "Aperto",
        "tournaments.statusParticipantsConflicts" to "{count} partecipanti con conflitti",
        "tournaments.statusParticipantsReady" to "{count} partecipanti senza conflitti",
        "tournaments.statusParticipantsUnassigned" to "{count} senza lezione",
        "tournaments.statusTournamentCompleted" to "Torneo concluso",
        "tournaments.statusUnpairedDoubles" to "{count} raddoppia senza partner",
        "tournaments.strategy" to "Strategia",
        "tournaments.tabConfig" to "Configurazione",
        "tournaments.tabGroups" to "Classifiche della piscina",
        "tournaments.table" to "Tavolo",
        "tournaments.tablesDistributed" to "I tavoli sono stati distribuiti.",
        "tournaments.tabParticipants" to "Partecipanti",
        "tournaments.tabPlacements" to "Posizionamenti",
        "tournaments.tabResults" to "Risultati",
        "tournaments.target" to "Destinazione",
        "tournaments.targetClass" to "Bersaglio",
        "tournaments.targetGroupCount" to "Numero di gruppi di destinazione",
        "tournaments.targetGroupsLabel" to "{count} gruppi",
        "tournaments.tournamentClassGenderFemale" to "Femminile",
        "tournaments.tournamentClassGenderOpen" to "Aperta (tutti)",
        "tournaments.tournamentName" to "Nome del torneo",
        "tournaments.tournamentParticipations" to "Tornei e iscrizioni ufficiali",
        "tournaments.transferQualifiedToFinalFromIntermediate" to "Sposta i giocatori qualificati al turno finale",
        "tournaments.transferQualifiedToFinalFromIntermediateDesc" to "Utilizza le regole dal round intermedio a quello finale e sposta i giocatori qualificati.",
        "tournaments.transferQualifiedToFinalFromPreliminary" to "Porta i giocatori qualificati direttamente al turno finale",
        "tournaments.transferQualifiedToFinalFromPreliminaryDesc" to "Utilizza le regole dal turno preliminare a quello finale e crea i giocatori qualificati direttamente lì.",
        "tournaments.transferQualifiedToIntermediate" to "Sposta i giocatori qualificati al turno intermedio",
        "tournaments.transferQualifiedToIntermediateDesc" to "Utilizza le regole dal turno preliminare a quello intermedio e sposta i giocatori qualificati.",
        "tournaments.unknown" to "Sconosciuto",
        "tournaments.unknownDate" to "Data sconosciuta",
        "tournaments.unmarkMatchLive" to "Rimuovi indicatore live",
        "tournaments.unpairedDoubles" to "Doppi senza partner",
        "tournaments.useIntermediateStage" to "Usa turno intermedio",
        "tournaments.warningBirthDateMissing" to "Manca la data di nascita per questa classe",
        "tournaments.warningClassMissing" to "Classe non trovata",
        "tournaments.warningGenderMismatch" to "Il genere non corrisponde alla classe",
        "tournaments.warningGenderMissing" to "Manca il genere per questa classe",
        "tournaments.warningMissingPairing" to "Manca il partner di doppio",
        "tournaments.warningTooOldForClass" to "Troppo grande per questa classe",
        "tournaments.warningTooYoungForClass" to "Troppo giovane per questa classe",
        "tournaments.winningSets" to "Tariffe vincenti",
        "tournaments.withoutClass" to "Senza Classe",
        "tournaments.workspaceProblemsTitle" to "{count} problemi aperti",
        "trainingDetails.birthdate" to "Data di nascita",
        "trainingDetails.birthYear" to "Anno di nascita",
        "trainingDetails.last12Months" to "Ultimi 12 mesi",
        "trainingDetails.last3Months" to "Ultimi 3 mesi",
        "trainingDetails.maxBirthYear" to "Nato ≤ anno",
        "trainingDetails.noTrainings" to "Nessuna partecipazione alla formazione disponibile",
        "trainingDetails.title" to "Dettagli sulla formazione",
        "trainingDetails.total" to "Totale",
        "trainingDetails.trainingParticipations" to "Partecipazioni alla formazione (ordinate in ordine decrescente)",
        "trainingGroupsTab.addMember" to "Aggiungi membro...",
        "trainingGroupsTab.cancel" to "Cancellare",
        "trainingGroupsTab.create" to "Creare",
        "trainingGroupsTab.delete" to "Eliminare",
        "trainingGroupsTab.edit" to "Modificare",
        "trainingGroupsTab.editGroup" to "Modifica gruppo",
        "trainingGroupsTab.groupName" to "Nome del gruppo",
        "trainingGroupsTab.groups" to "Classifiche della piscina",
        "trainingGroupsTab.members" to "Membri",
        "trainingGroupsTab.newGroup" to "+ Nuovo gruppo",
        "trainingGroupsTab.noMembersAvailable" to "Nessun partner affiliato disponibile",
        "trainingGroupsTab.remove" to "Rimuovere",
        "trainingStats.actions" to "Azioni",
        "trainingStats.activeMembers" to "Membri attivi",
        "trainingStats.allTrainingDays" to "Tutti i giorni di allenamento",
        "trainingStats.attendingMembers" to "Membri presenti",
        "trainingStats.averageParticipationCurrentMonth" to "Partecipazione media (mese corrente)",
        "trainingStats.averageParticipationHalfYear" to "Partecipazione media (semestre)",
        "trainingStats.averageParticipationLastMonth" to "Partecipazione media (mese precedente)",
        "trainingStats.averageParticipationQuarter" to "Partecipazione media (trimestre)",
        "trainingStats.averageParticipationYear" to "Partecipazione media (anno)",
        "trainingStats.birthdate" to "Data di nascita",
        "trainingStats.date" to "Data",
        "trainingStats.lastTraining" to "Ultimo allenamento",
        "trainingStats.memberParticipations" to "Partecipazioni dei membri",
        "trainingStats.name" to "nome",
        "trainingStats.noParticipants" to "Nessun partecipante",
        "trainingStats.panelAgeGroups" to "Presenze per fascia d'età",
        "trainingStats.panelBestDay" to "Giorno di allenamento più frequentato",
        "trainingStats.panelGroupPerformance" to "Andamento per gruppo",
        "trainingStats.panelMemberStructure" to "Struttura membri",
        "trainingStats.panelMonthlyTrend" to "Andamento mensile",
        "trainingStats.panelSummary" to "Cifre chiave (filtro)",
        "trainingStats.panelWeekdayStats" to "Giorni di allenamento per giorno",
        "trainingStats.participants" to "Partecipanti",
        "trainingStats.participations12Months" to "Partecipazioni (12 mesi)",
        "trainingStats.participations3Months" to "Partecipazioni (3 mesi)",
        "trainingStats.participationsTotal" to "Partecipazioni (totale)",
        "trainingStats.qttr" to "QTTR",
        "trainingStats.showDetails" to "Mostra dettagli",
        "trainingStats.title" to "Statistiche di allenamento",
        "trainingStats.trainingDayFilter" to "Giorno di allenamento",
        "trainingStats.trainingDays" to "Giorni di allenamento (ultimi 12 mesi)",
        "trainingStats.ttr" to "TTR",
        "trainingStats.weekday" to "Giorno della settimana",
        "trainingTimesTab.addTime" to "Aggiungi tempo",
        "trainingTimesTab.cancel" to "Cancellare",
        "trainingTimesTab.create" to "Creare",
        "trainingTimesTab.delete" to "Eliminare",
        "trainingTimesTab.edit" to "Modificare",
        "trainingTimesTab.editTime" to "Modifica tempo di allenamento",
        "trainingTimesTab.excludeFromQuickDiaryCreate" to "Escludi dalla creazione rapida (diario)",
        "trainingTimesTab.excludeFromQuickDiarySaveError" to "Impossibile salvare l'impostazione.",
        "trainingTimesTab.friday" to "Venerdì",
        "trainingTimesTab.from" to "Da:",
        "trainingTimesTab.loading" to "Caricamento orari di allenamento...",
        "trainingTimesTab.monday" to "Lunedi",
        "trainingTimesTab.noTimes" to "Nessun orario di formazione definito",
        "trainingTimesTab.saturday" to "Sabato",
        "trainingTimesTab.save" to "Salva",
        "trainingTimesTab.saveError" to "Errore durante il salvataggio del tempo di allenamento",
        "trainingTimesTab.sunday" to "Domenica",
        "trainingTimesTab.thursday" to "Giovedì",
        "trainingTimesTab.to" to "A:",
        "trainingTimesTab.tuesday" to "Martedì",
        "trainingTimesTab.wednesday" to "Mercoledì",
        "trainingTimesTab.weekday" to "Giorni feriali:",
        "unknown" to "Sconosciuto",
    ) }

    private val ja: Map<String, String> by lazy { mapOf(
        "accident.accident" to "事故",
        "accident.accidentDescription" to "事故の説明…",
        "accident.close" to "近い",
        "accident.member" to "メンバー",
        "accident.pleaseSelect" to "選択してください",
        "accident.reportAccident" to "事故の報告",
        "accident.reportedAccidents" to "報告された事故",
        "accident.submit" to "提出する",
        "activityStats.activityStatistics" to "運動の統計",
        "activityStats.last3Participations" to "最新 3 件のエントリ",
        "activityStats.noParticipations" to "利用可能なエントリはありません",
        "activityStats.noStatistics" to "利用可能な統計はありません",
        "activityStats.title" to "運動統計",
        "app.name" to "トレーニング日記",
        "app.title" to "トレーニング日記",
        "auth.accountActivated" to "アカウントが有効になりました!ログインできるようになりました。",
        "auth.activate" to "活性化",
        "auth.activateAccount" to "アカウントをアクティブ化する",
        "auth.activationFailed" to "アクティベーションに失敗しました。リンクを確認してください。",
        "auth.confirmPassword" to "パスワードを確認",
        "auth.email" to "メール",
        "auth.forgotPassword" to "パスワードをお忘れですか？",
        "auth.forgotPasswordDescription" to "メールアドレスを入力してください。パスワードリセット用のリンクが送信されます。",
        "auth.hasAccount" to "すでにアカウントをお持ちですか?",
        "auth.login" to "ログイン",
        "auth.loginFailed" to "ログインに失敗しました。認証情報を確認してください。",
        "auth.loginSuccess" to "ログインに成功しました",
        "auth.logout" to "ログアウト",
        "auth.logoutSuccess" to "ログアウトに成功しました",
        "auth.newPassword" to "新しいパスワード",
        "auth.noAccount" to "アカウントをお持ちでないですか？",
        "auth.password" to "パスワード",
        "auth.passwordResetSuccess" to "パスワードが正常に変更されました。新しいパスワードでログインできます。",
        "auth.passwordsDoNotMatch" to "パスワードが一致しません。",
        "auth.passwordTooShort" to "パスワードは6文字以上必要です。",
        "auth.register" to "登録",
        "auth.registerFailed" to "登録に失敗しました。もう一度試してください。",
        "auth.registerSuccess" to "登録が成功しました！アカウントを有効にするには、メールを確認してください。",
        "auth.rememberMe" to "ログイン状態を保持",
        "auth.resetEmailSent" to "このメールアドレスのアカウントが存在する場合、リセットリンクが送信されました。受信トレイ（迷惑メールフォルダも）を確認してください。",
        "auth.resetFailed" to "パスワードを変更できませんでした。リンクの有効期限が切れている可能性があります。",
        "auth.resetPassword" to "新しいパスワードを設定",
        "auth.resetRequestFailed" to "リクエストに失敗しました。再試行してください。",
        "auth.saveNewPassword" to "パスワードを保存",
        "auth.saving" to "保存中...",
        "auth.sending" to "送信中...",
        "auth.sendResetLink" to "リンクを送信",
        "auth.sessionExpired" to "セッションが期限切れです。ログアウトされます。",
        "auth.toLogin" to "ログインへ",
        "baseDialog.close" to "近い",
        "baseDialog.minimize" to "最小化する",
        "baseDialog.resize" to "サイズ変更",
        "billing.autoSuggestMapping" to "車の提案",
        "billing.deleteBilling" to "消去",
        "billing.deleteConfirm" to "この生成されたステートメントを本当に削除しますか?",
        "billing.deleteError" to "請求を削除できませんでした。",
        "billing.deleteSuccess" to "請求は削除されました。",
        "billing.deleteTemplate" to "テンプレートの削除",
        "billing.deleteTemplateConfirm" to "本当にこのテンプレートを削除しますか?",
        "billing.deleteTemplateError" to "テンプレートを削除できませんでした。",
        "billing.deleteTemplateSuccess" to "テンプレートは削除されました。",
        "billing.documentDate" to "日付",
        "billing.downloadError" to "PDFがダウンロードできませんでした。",
        "billing.downloadPdf" to "PDFをダウンロード",
        "billing.generateAndDownloadPdf" to "PDF の生成とダウンロード",
        "billing.generateError" to "PDFを作成できませんでした。",
        "billing.generateOwnBilling" to "独自の請求書を生成する",
        "billing.generatePdf" to "PDFの生成",
        "billing.generateSuccess" to "PDFが作成されました。",
        "billing.generatingPdf" to "PDFを作成...",
        "billing.hourlyRate" to "時給",
        "billing.hoursAutoHint" to "時間数はトレーニング日数から自動的に計算されます: {hours} 時間 ({count} 単位)。",
        "billing.hoursTotal" to "時間数",
        "billing.iban" to "IBAN",
        "billing.ibanBoxesReset" to "IBANボックスがリセットされました。",
        "billing.ibanLearnCancel" to "IBAN 学習をキャンセルする",
        "billing.ibanLearnDone" to "選択したエリアから IBAN ボックスが割り当てられました。",
        "billing.ibanLearnStart" to "IBAN を学ぶ",
        "billing.ibanLearnStep1" to "IBAN 学習: 使用する最初の IBAN ボックスをクリックしてください。",
        "billing.ibanLearnStep2" to "IBAN 学習: 使用する最後の IBAN ボックスをクリックしてください。",
        "billing.ibanWithoutCountry" to "国番号なし",
        "billing.locationText" to "位置",
        "billing.mappingEditorHint" to "フィールドを選択し、PDF 内をクリックします。そのポジションはすぐに引き継がれます。",
        "billing.mappingEditorTitle" to "クリックするだけで PDF 内のフィールドを割り当てます",
        "billing.mappingField" to "分野",
        "billing.mappingHint" to "フィールドごとに座標を 1 回調整して保存します。これらの位置は「PDF の作成」で使用されます。",
        "billing.mappingPreviewError" to "マッピングの PDF プレビューをロードできませんでした。",
        "billing.mappingSaved" to "マッピングが保存されました。",
        "billing.mappingSaveError" to "マッピングを保存できませんでした。",
        "billing.mappingSuggested" to "車の提案が入力されました。確認して微調整してください。",
        "billing.mappingSuggestError" to "自動提案を決定できませんでした。",
        "billing.mappingTitle" to "ポジションマッピング",
        "billing.monthFrom" to "の月",
        "billing.monthTo" to "月から",
        "billing.noRuns" to "まだ請求書はありません。",
        "billing.noSessionsInRange" to "選択した期間にトレーニング セッションが見つかりませんでした。",
        "billing.noTemplates" to "利用可能なテンプレートはまだありません。",
        "billing.omitField" to "指定しないでください",
        "billing.openMappingEditor" to "クリックひとつでマッピング",
        "billing.resetIbanBoxes" to "IBANボックスのリセット",
        "billing.runSection" to "請求実行",
        "billing.runsTitle" to "以前の請求",
        "billing.sameAccountCheckbox" to "前回のステートメントと同じアカウント",
        "billing.saveMapping" to "マッピングの保存",
        "billing.selfRecipientName" to "自分の名前",
        "billing.sessionHours" to "営業時間",
        "billing.sessionLabel" to "識別子",
        "billing.sessionTime" to "時間",
        "billing.step1" to "ステップ 1: テンプレートを保存する",
        "billing.step2" to "ステップ 2: 請求実行を作成する",
        "billing.step3" to "ステップ 3: PDF を生成してダウンロードする",
        "billing.subtitle" to "独自の毎月の練習レッスン請求書を作成します。",
        "billing.template" to "テンプレート",
        "billing.templateDescription" to "説明",
        "billing.templateName" to "テンプレート名",
        "billing.templatePdf" to "PDF テンプレート",
        "billing.templateSection" to "テンプレートをアップロードする",
        "billing.title" to "請求書",
        "billing.uploadTemplate" to "テンプレートの保存",
        "calendar.agendaEmpty" to "今月の予定はありません。",
        "calendar.agendaTitle" to "今月の予定",
        "calendar.cancelCancellation.confirm" to "中止を取り消す",
        "calendar.cancelCancellation.message" to "{date} の「{title}」の練習中止を本当に取り消しますか？",
        "calendar.cancelCancellation.title" to "練習中止を取り消す",
        "calendar.cancellation.date" to "日付",
        "calendar.cancellation.description" to "通常のトレーニング時間を非表示にします。",
        "calendar.cancellation.fallbackTitle" to "トレーニングは中止されました",
        "calendar.cancellation.reasonPlaceholder" to "理由（任意）",
        "calendar.cancellation.saving" to "保存中...",
        "calendar.cancellation.submit" to "追加",
        "calendar.cancellation.subtitle" to "研修中止",
        "calendar.cancellation.title" to "トレーニングは中止されました",
        "calendar.cancellation.trainingGroups" to "研修グループ",
        "calendar.cancellation.untilOptional" to "任意になるまで",
        "calendar.customEvent.categoryPlaceholder" to "カテゴリ (オプション)",
        "calendar.customEvent.description" to "地区会議、セッション、内部会議など...",
        "calendar.customEvent.saving" to "保存中...",
        "calendar.customEvent.submit" to "作成する",
        "calendar.customEvent.subtitleFallback" to "独自のイベント",
        "calendar.customEvent.title" to "独自のイベント",
        "calendar.customEvent.titlePlaceholder" to "タイトル",
        "calendar.description" to "トレーニング日、クラブトーナメント、リーグ戦を月ごとに表示。",
        "calendar.eventTitles.match" to "リーグ戦",
        "calendar.eventTitles.officialTournament" to "トーナメント参加",
        "calendar.eventTitles.tournament" to "トーナメント",
        "calendar.eventTitles.training" to "トレーニング",
        "calendar.eyebrow" to "クラブカレンダー",
        "calendar.holidayTypes.holiday" to "休日",
        "calendar.holidayTypes.schoolHoliday" to "学校休暇",
        "calendar.legend.customEvent" to "イベント",
        "calendar.legend.holiday" to "休日",
        "calendar.legend.match" to "リーグ戦",
        "calendar.legend.officialTournament" to "参加",
        "calendar.legend.schoolHoliday" to "学校休暇",
        "calendar.legend.tournament" to "トーナメント",
        "calendar.legend.training" to "トレーニング",
        "calendar.legend.trainingCancellation" to "キャンセル",
        "calendar.loadError" to "カレンダーデータを読み込めませんでした。",
        "calendar.loading" to "カレンダーデータを読み込んでいます...",
        "calendar.match.guest" to "離れて",
        "calendar.match.home" to "家",
        "calendar.noClub" to "最初にクラブを選択してください。",
        "calendar.options.subtitle" to "キャンセルと独自イベント",
        "calendar.options.title" to "オプション",
        "calendar.participants" to "{count} 参加者",
        "calendar.quickCancellation.confirm" to "キャンセルの追加",
        "calendar.quickCancellation.message" to "「{title}」をトレーニングキャンセルとしてマークしますか?",
        "calendar.quickCancellation.noGroups" to "トレーニング時間のあるトレーニング グループはありません。",
        "calendar.quickCancellation.title" to "研修中止",
        "calendar.quickCancellation.trainingGroups" to "影響を受けるトレーニンググループ",
        "calendar.quickCancellation.useWholeRange" to "全期間 ({start} から {end}) に適用します",
        "calendar.recurringTrainingTime" to "定期的なトレーニング時間",
        "calendar.sources.customEvents" to "独自のイベント",
        "calendar.sources.holidays" to "祝日・学校休業日",
        "calendar.sources.matches" to "リーグ戦",
        "calendar.sources.officialTournaments" to "トーナメント参加",
        "calendar.sources.tournaments" to "トーナメント",
        "calendar.sources.trainingCancellations" to "トレーニングの中止",
        "calendar.sources.trainingDays" to "研修日",
        "calendar.sources.trainingTimes" to "トレーニング時間",
        "calendar.sourceWarning" to "{source} をロードできませんでした",
        "calendar.starts" to "{count} が開始します",
        "calendar.title" to "カレンダー",
        "calendar.today" to "今日",
        "calendar.tournament.club" to "クラブトーナメント",
        "calendar.tournament.open" to "オープントーナメント",
        "calendar.weekdays.friday" to "金",
        "calendar.weekdays.monday" to "月",
        "calendar.weekdays.saturday" to "土",
        "calendar.weekdays.sunday" to "日",
        "calendar.weekdays.thursday" to "木",
        "calendar.weekdays.tuesday" to "火",
        "calendar.weekdays.wednesday" to "水",
        "club.accessDenied" to "このクラブへのアクセスは許可されていません。",
        "club.accessRequested" to "アクセスを申請しました。",
        "club.accessRequestFailed" to "アクセス申請を送信できませんでした。",
        "club.accessRequestPending" to "このクラブへのアクセスを申請しました。しばらくお待ちください。",
        "club.create" to "クラブを作成",
        "club.createTitle" to "クラブを作成",
        "club.diary" to "練習日誌",
        "club.errorLoadingRequests" to "保留中の申請の読み込みエラー",
        "club.load" to "読み込む",
        "club.members" to "メンバー",
        "club.mobileSelectHint" to "スマートフォンでアプリを使用するには、まずクラブを選択してください。",
        "club.name" to "クラブ名",
        "club.new" to "新しいクラブ",
        "club.noAccess" to "このクラブへのアクセス権はまだ付与されていません。",
        "club.openAccessRequests" to "保留中のアクセス申請",
        "club.openRequests" to "保留中のアクセス申請",
        "club.requestAccess" to "アクセスを申請",
        "club.select" to "クラブを選択",
        "club.selectPlaceholder" to "クラブを選択...",
        "club.title" to "クラブ",
        "club.trainingDiary" to "練習日誌",
        "clubSettings.associationMemberNumber" to "協会会員番号",
        "clubSettings.associationMemberNumberPlaceholder" to "例えばSN-12-3456。",
        "clubSettings.autoFetchRankings" to "ランキングを自動取得",
        "clubSettings.greetingHint" to "このテキストは、ゲーム レポート シートの「ようこそ」タブに表示されます。",
        "clubSettings.greetingPlaceholder" to "ホームゲームのウェルカムテキスト...",
        "clubSettings.greetingText" to "挨拶文",
        "clubSettings.guestPlayers" to "選手とダブルスのゲストチーム",
        "clubSettings.guestTeam" to "ゲストチーム名",
        "clubSettings.homePlayers" to "選手とホームチームのダブルス",
        "clubSettings.homeTeam" to "ホームチーム名",
        "clubSettings.loadFailed" to "設定を読み込めませんでした",
        "clubSettings.memberDataQuality" to "データ品質メンバー",
        "clubSettings.memberDataQualityHint" to "これらのフィールドは、メンバー ページで必要に応じてカウントされます。すべてのフィールドは引き続き入力できます。",
        "clubSettings.myTischtennisFedNickname" to "協会略称",
        "clubSettings.myTischtennisFedNicknamePlaceholder" to "例えばHeTTV",
        "clubSettings.myTischtennisRankings" to "myTischtennis TTR/QTTR ランキング",
        "clubSettings.myTischtennisRankingsHint" to "メンバーの TTR および QTTR 更新に関するクラブ ランキングの自動取得。",
        "clubSettings.noClubSelected" to "まずは医師を選んでください。",
        "clubSettings.placeholders" to "スペーサー",
        "clubSettings.rankingsUsesAssociationNumber" to "ランキングリスト検索のクラブ番号は、上記の協会会員番号に対応します。",
        "clubSettings.requireCity" to "場所は必須です",
        "clubSettings.requireEmail" to "メールアドレスが必要です",
        "clubSettings.requirePhone" to "電話番号は必須です",
        "clubSettings.requirePostalCode" to "郵便番号が必要です",
        "clubSettings.requireStreet" to "道路が必要です",
        "clubSettings.save" to "保存",
        "clubSettings.saved" to "保存済み",
        "clubSettings.saveFailed" to "保存できません",
        "clubSettings.settings" to "設定",
        "clubSettings.title" to "クラブ設定",
        "clubSettings.trainingGroups" to "トレーニンググループ。",
        "clubSettings.trainingTimes" to "練習スケジュール",
        "common.actions" to "アクション",
        "common.active" to "アクティブ",
        "common.add" to "追加",
        "common.all" to "すべて",
        "common.apply" to "適用",
        "common.back" to "戻る",
        "common.cancel" to "キャンセル",
        "common.choose" to "選択",
        "common.clear" to "クリア",
        "common.close" to "閉じる",
        "common.confirm" to "確認",
        "common.create" to "作成",
        "common.date" to "日付",
        "common.days" to "日",
        "common.delete" to "削除",
        "common.description" to "説明",
        "common.details" to "Details",
        "common.disabled" to "無効",
        "common.download" to "ダウンロード",
        "common.edit" to "編集",
        "common.enabled" to "有効",
        "common.filter" to "フィルター",
        "common.hours" to "時間",
        "common.in" to "in",
        "common.inactive" to "非アクティブ",
        "common.loading" to "読み込み中...",
        "common.min" to "分",
        "common.minutes" to "分",
        "common.months" to "か月",
        "common.move" to "移動",
        "common.name" to "名前",
        "common.new" to "新規",
        "common.next" to "次へ",
        "common.no" to "いいえ",
        "common.ok" to "OK",
        "common.optional" to "Optional",
        "common.period" to "期間",
        "common.previous" to "前へ",
        "common.refresh" to "再読み込み",
        "common.remove" to "削除",
        "common.required" to "必須",
        "common.reset" to "リセット",
        "common.save" to "保存",
        "common.saved" to "保存済み",
        "common.saving" to "保存中...",
        "common.search" to "検索",
        "common.select" to "選択",
        "common.status" to "状態",
        "common.submit" to "送信",
        "common.time" to "時刻",
        "common.today" to "今日",
        "common.type" to "種類",
        "common.update" to "更新",
        "common.view" to "表示",
        "common.weeks" to "週間",
        "common.years" to "年",
        "common.yes" to "はい",
        "courtDrawing.cancel" to "キャンセル",
        "courtDrawing.durationMinutes" to "継続時間 (分)",
        "courtDrawing.durationText" to "期間（テキスト）",
        "courtDrawing.durationTextPlaceholder" to "例えば2x5",
        "courtDrawing.group" to "グループ",
        "courtDrawing.ok" to "OK",
        "courtDrawing.selectGroup" to "グループを選択...",
        "courtDrawing.title" to "卓球の練習を構成する",
        "courtDrawingRender.animationRunning" to "アニメーション進行中...",
        "courtDrawingRender.startAnimation" to "アニメーションの開始",
        "courtDrawingTool.addStroke" to "打球を追加",
        "courtDrawingTool.backhand" to "バックハンド",
        "courtDrawingTool.codeLabel" to "略称",
        "courtDrawingTool.completeFirstStroke" to "第1打を完成させる",
        "courtDrawingTool.completeFirstStrokeHint" to "開始位置、打球面、回転、落点を選択すると、図が表示されます。",
        "courtDrawingTool.configureExercise" to "練習を設定",
        "courtDrawingTool.counterSpin" to "逆回転",
        "courtDrawingTool.forehand" to "フォアハンド",
        "courtDrawingTool.noAdditionalStrokes" to "まだ後続の打球はありません。",
        "courtDrawingTool.preview" to "プレビュー",
        "courtDrawingTool.previewHint" to "最初の打球が完全に設定されると図が表示されます。",
        "courtDrawingTool.service" to "サーブ:",
        "courtDrawingTool.serviceTitle" to "サーブ",
        "courtDrawingTool.sidespin" to "横回転",
        "courtDrawingTool.sideUnderspin" to "横下回転",
        "courtDrawingTool.spin" to "回転:",
        "courtDrawingTool.startLeft" to "左",
        "courtDrawingTool.startMiddle" to "中央",
        "courtDrawingTool.startRight" to "右",
        "courtDrawingTool.stepAdditionalStrokes" to "4. 後続の打球",
        "courtDrawingTool.stepAdditionalStrokesHint" to "必要に応じて後続のボールを一覧で追加できます。",
        "courtDrawingTool.stepFirstStroke" to "2. 第1打",
        "courtDrawingTool.stepFirstStrokeHint" to "最初のボールの打球面と回転を設定します。",
        "courtDrawingTool.stepStartPosition" to "1. 開始位置",
        "courtDrawingTool.stepStartPositionHint" to "どのサーブ位置から練習を始めますか？",
        "courtDrawingTool.stepTarget" to "3. 落点",
        "courtDrawingTool.stepTargetHint" to "第1打の落点ゾーンを選択します。",
        "courtDrawingTool.strokeSide" to "面",
        "courtDrawingTool.strokeTypeBlock" to "Block",
        "courtDrawingTool.strokeTypeChopDefense" to "カット守備",
        "courtDrawingTool.strokeTypeCounter" to "カウンター",
        "courtDrawingTool.strokeTypeFlip" to "フリップ",
        "courtDrawingTool.strokeTypeLabel" to "打球タイプ",
        "courtDrawingTool.strokeTypeLobDefense" to "ロブ守備",
        "courtDrawingTool.strokeTypePush" to "ツッツキ",
        "courtDrawingTool.strokeTypeSmash" to "スマッシュ",
        "courtDrawingTool.strokeTypeTopspin" to "トップスピン",
        "courtDrawingTool.targetBackhandHalfLong" to "バック半長",
        "courtDrawingTool.targetBackhandLong" to "バック奥",
        "courtDrawingTool.targetBackhandShort" to "バック短",
        "courtDrawingTool.targetForehandHalfLong" to "フォア半長",
        "courtDrawingTool.targetForehandLong" to "フォア奥",
        "courtDrawingTool.targetForehandShort" to "フォア短",
        "courtDrawingTool.targetMiddleHalfLong" to "ミドル半長",
        "courtDrawingTool.targetMiddleLong" to "ミドル奥",
        "courtDrawingTool.targetMiddleShort" to "ミドル短",
        "courtDrawingTool.targetPosition" to "落点位置:",
        "courtDrawingTool.targetPositionLabel" to "落点位置",
        "courtDrawingTool.title" to "卓球練習図",
        "courtDrawingTool.titleLabel" to "タイトル",
        "courtDrawingTool.topspin" to "上回転",
        "courtDrawingTool.toTarget" to "へ",
        "courtDrawingTool.underspin" to "下回転",
        "createClub.clubExists" to "関連付けはすでに存在します。",
        "createClub.clubName" to "クラブ名",
        "createClub.create" to "クラブを作成する",
        "createClub.nameRequired" to "協会に意味のある名前を付けてください。",
        "createClub.title" to "クラブを作成する",
        "createClub.unknownError" to "不明なエラーが発生しました。もう一度お試しください",
        "csvImport.cancel" to "キャンセル",
        "csvImport.import" to "インポート中",
        "csvImport.title" to "輸入スケジュール",
        "csvImport.uploadCsvFile" to "CSVファイルをアップロードする",
        "dialogExamples.composableConfirmDetails" to "これは useconfirm コンポーザブルの例です。",
        "dialogExamples.composableConfirmMessage" to "続行しますか?",
        "dialogExamples.composableConfirmTitle" to "use確認の例",
        "dialogExamples.composableDialogText" to "このダイアログは useDialog コンポーザブルを使用します。",
        "dialogExamples.composableDialogText2" to "これで管理が楽になります！",
        "dialogExamples.composableDialogTitle" to "useDialog Composable との対話",
        "dialogExamples.composableUsage" to "コンポーザブルな使用法",
        "dialogExamples.confirmDeleteMessage" to "このギフトカードを削除してもよろしいですか?",
        "dialogExamples.confirmDeleteTitle" to "削除の確認",
        "dialogExamples.confirmDialogs" to "確認ダイアログ",
        "dialogExamples.confirmWarningDetails" to "この操作は元に戻すことができません。",
        "dialogExamples.confirmWarningMessage" to "続行してもよろしいですか?",
        "dialogExamples.error" to "エラー",
        "dialogExamples.errorDetails" to "後でもう一度試してください。",
        "dialogExamples.errorMessage" to "エラーが発生しました。",
        "dialogExamples.fullscreenModal" to "全画面モーダル",
        "dialogExamples.fullscreenModalText" to "これは全画面表示のダイアログです。",
        "dialogExamples.fullscreenModalText2" to "画面のほぼ全体 (90vw x 90vh) を占めます。",
        "dialogExamples.fullscreenModalTitle" to "全画面モーダルダイアログ",
        "dialogExamples.info" to "情報",
        "dialogExamples.infoDialogs" to "情報対話",
        "dialogExamples.infoMessage" to "これは情報メッセージです。",
        "dialogExamples.information" to "情報",
        "dialogExamples.largeModal" to "ラージモーダル",
        "dialogExamples.largeModalText" to "これは素晴らしいモーダルダイアログです。",
        "dialogExamples.largeModalText2" to "コンテンツにより多くのスペースを提供します。",
        "dialogExamples.largeModalTitle" to "大規模なモーダルダイアログ",
        "dialogExamples.minimizedDialogs" to "最小化されたダイアログ:",
        "dialogExamples.modalDialogs" to "モーダルダイアログ",
        "dialogExamples.multipleDialogs" to "複数のダイアログ",
        "dialogExamples.nonModalDialog" to "ノンモーダルダイアログ",
        "dialogExamples.nonModalDialogs" to "ノンモーダルダイアログ",
        "dialogExamples.nonModalText" to "これはノンモーダルなダイアログです。",
        "dialogExamples.nonModalText2" to "移動させて複数同時に開けることも可能！",
        "dialogExamples.nonModalTitle" to "ノンモーダルダイアログ",
        "dialogExamples.scrollArea" to "スクロール領域に多くのコンテンツが表示されます...",
        "dialogExamples.secondNonModalText" to "またしてもノンモーダルダイアログです！",
        "dialogExamples.secondNonModalTitle" to "2 番目のノンモーダル ダイアログ",
        "dialogExamples.simpleModal" to "シンプルモーダル",
        "dialogExamples.simpleModalText" to "これは中程度のサイズのシンプルなモーダル ダイアログです。",
        "dialogExamples.simpleModalText2" to "外側または X をクリックして閉じます。",
        "dialogExamples.simpleModalTitle" to "シンプルなモーダルダイアログ",
        "dialogExamples.success" to "成果",
        "dialogExamples.successDetails" to "すべての変更が保存されました。",
        "dialogExamples.successMessage" to "操作は正常に完了しました。",
        "dialogExamples.title" to "ダイアログの例",
        "dialogExamples.useConfirmExample" to "use確認の例",
        "dialogExamples.useDialogExample" to "useDialog の例",
        "dialogExamples.warning" to "注意事項",
        "dialogExamples.warningDetails" to "一部のフィールドは完全に入力されていない場合があります。",
        "dialogExamples.warningMessage" to "次のリンクが役立ちます。",
        "dialogManager.close" to "近い",
        "dialogManager.minimize" to "最小化する",
        "dialogManager.noMinimizedDialogs" to "最小化されたダイアログはありません",
        "dialogs.confirm.cancel" to "キャンセル",
        "dialogs.confirm.ok" to "OK",
        "dialogs.confirm.title" to "確認",
        "dialogs.info.ok" to "OK",
        "dialogs.info.title" to "情報",
        "diary.activeTrainingDay" to "現在の練習日",
        "diary.activities" to "アクティビティ",
        "diary.activity" to "アクティビティ",
        "diary.activityDrawing" to "アクティビティ図",
        "diary.activityImage" to "アクティビティ画像",
        "diary.activityNotFound" to "アクティビティが見つかりません。リストから選択してください。",
        "diary.activityOrTimeblock" to "アクティビティ / 時間ブロック",
        "diary.activityPlaceholder" to "アクティビティ",
        "diary.activityRequired" to "アクティビティを入力してください。",
        "diary.addActivity" to "アクティビティを追加",
        "diary.addGroup" to "グループを追加",
        "diary.addGroupActivity" to "グループアクティビティを追加",
        "diary.addGroupButton" to "+ グループ",
        "diary.addTimeblock" to "時間ブロック",
        "diary.all" to "すべて",
        "diary.applySuggestion" to "提案を適用",
        "diary.assignParticipants" to "参加者を割り当て",
        "diary.assignParticipantsForGroupActivity" to "グループアクティビティの参加者を割り当て",
        "diary.assignShort" to "割り当て",
        "diary.bookAccident" to "事故を記録",
        "diary.confirmDelete" to "削除を確認",
        "diary.confirmDeleteDate" to "この日付を本当に削除しますか？",
        "diary.confirmDeleteDateDetails" to "関連データもすべて削除されます。",
        "diary.confirmDeleteGroup" to "グループ「{name}」を本当に削除しますか？",
        "diary.createDate" to "日付を作成",
        "diary.createDrawing" to "練習図を作成",
        "diary.createGroups" to "グループを作成",
        "diary.createNew" to "新規作成",
        "diary.createNewDate" to "新しい日付を作成",
        "diary.date" to "日付",
        "diary.dateCannotBeDeleted" to "日付を削除できません",
        "diary.dateCannotBeDeletedDetails" to "まだ内容があります（練習計画、参加者、アクティビティ、事故、メモ）。",
        "diary.dateNoLongerCurrent" to "選択した日付は最新ではありません。もう一度お試しください。",
        "diary.delete" to "削除",
        "diary.deleteDate" to "日付を削除",
        "diary.deleteGroup" to "グループを削除",
        "diary.duration" to "時間",
        "diary.durationExampleLong" to "例: 2x7 または 3*5",
        "diary.durationExampleShort" to "例: 2x7",
        "diary.durationMinutes" to "時間（分）",
        "diary.editActivity" to "アクティビティを編集",
        "diary.editGroupActivity" to "グループアクティビティを編集",
        "diary.editTrainingTimes" to "練習時間を編集",
        "diary.errorCreatingActivity" to "アクティビティ作成エラー",
        "diary.errorCreatingGroups" to "グループ作成エラー",
        "diary.errorDeletingGroup" to "グループ削除エラー",
        "diary.errorLoadingPredefinedActivities" to "事前定義アクティビティの読み込みエラー",
        "diary.errorMarkingForm" to "会員フォーム更新エラー",
        "diary.errorOccurred" to "エラーが発生しました。もう一度お試しください。",
        "diary.existingGroups" to "既存のグループ",
        "diary.filterAbsent" to "欠席",
        "diary.filterAll" to "すべて",
        "diary.filterExcused" to "欠席連絡あり",
        "diary.filterPresent" to "出席",
        "diary.filterTest" to "体験",
        "diary.formHandedOver" to "会員フォーム受け渡し済み",
        "diary.formMarkedAsHandedOver" to "会員フォームを受け渡し済みにしました",
        "diary.freeActivities" to "自由アクティビティ",
        "diary.gallery" to "メンバーギャラリー",
        "diary.galleryCreating" to "ギャラリーを作成中…",
        "diary.group" to "グループ...",
        "diary.groupDeletedSuccessfully" to "グループを削除しました。",
        "diary.groupManagement" to "グループ管理",
        "diary.groupsCreated" to "{count} 個のグループを作成しました。",
        "diary.groupsLabel" to "グループ",
        "diary.groupsSection" to "グループ",
        "diary.leader" to "担当者",
        "diary.min" to "Min",
        "diary.minutes" to "分",
        "diary.mustCreateAtLeastTwoGroups" to "初回作成時は少なくとも 2 つのグループが必要です。",
        "diary.nextAppointment" to "次回の予定",
        "diary.noActiveTrainingDay" to "練習日が選択されていません。",
        "diary.noEntries" to "エントリがありません",
        "diary.noFreeActivitiesYet" to "自由アクティビティはまだありません。",
        "diary.noParticipants" to "この練習日に参加者がいません。",
        "diary.numberOfGroups" to "グループ数",
        "diary.oneGroupAdded" to "1 つのグループを追加しました。",
        "diary.openPlanItems" to "{count} 件未完了",
        "diary.openPlanItemsLabel" to "計画状況",
        "diary.overallActivity" to "全体アクティビティ",
        "diary.participants" to "参加者",
        "diary.participantStatusCancelled" to "キャンセル",
        "diary.participantStatusExcused" to "欠席連絡あり",
        "diary.participantStatusNone" to "ステータスなし",
        "diary.planActivitiesCount" to "計画アクティビティ",
        "diary.planAddHint" to "新しい計画項目は上の操作から追加します。",
        "diary.planEmptyState" to "練習計画にはまだ何も登録されていません。",
        "diary.quickAdd" to "+ クイック追加",
        "diary.quickCreate" to "クイック作成",
        "diary.quickCreateFailed" to "練習日を作成できませんでした。",
        "diary.quickCreateNoSlot" to "空きの練習日が見つかりません（グループのスケジュールに基づき、1年先まで）。",
        "diary.searchParticipants" to "参加者を検索",
        "diary.selectGroup" to "グループを選択...",
        "diary.selectGroupAndActivity" to "グループを選択し、アクティビティを入力してください。",
        "diary.selectParticipantAndNote" to "参加者を選択し、メモを入力してください。",
        "diary.selectTags" to "タグを選択",
        "diary.selectTrainingGroup" to "練習グループを選択",
        "diary.selectTrainingGroupPlaceholder" to "選択してください...",
        "diary.showImage" to "画像/図を表示",
        "diary.skipSuggestion" to "提案なしで続行",
        "diary.standardActivities" to "標準アクティビティ",
        "diary.standardActivityAddError" to "標準アクティビティを追加できませんでした。",
        "diary.standardDurationShort" to "Min",
        "diary.startTime" to "開始時刻",
        "diary.statusEmpty" to "この練習日はまだ空です。",
        "diary.statusInProgress" to "この練習日は一部のみ準備されています。",
        "diary.statusOpenShort" to "未完了",
        "diary.statusReady" to "時間と練習計画は設定済みです。",
        "diary.statusReadyShort" to "準備完了",
        "diary.suggestion" to "提案",
        "diary.timeblock" to "時間ブロック",
        "diary.timeblocksCount" to "時間ブロック",
        "diary.title" to "練習日誌",
        "diary.today" to "今日",
        "diary.trainingDayAsPDF" to "練習日を PDF でダウンロード",
        "diary.trainingDayAsPDFShort" to "練習日を PDF",
        "diary.trainingDayChecklist" to "完了チェック",
        "diary.trainingDaySection" to "練習日",
        "diary.trainingDaySummaryPdfShort" to "参加者一覧を PDF",
        "diary.trainingEnd" to "練習終了",
        "diary.trainingPlan" to "練習計画",
        "diary.trainingPlanAsPDF" to "練習計画を PDF で出力",
        "diary.trainingPlanPdfShort" to "進行計画を PDF",
        "diary.trainingStart" to "練習開始",
        "diary.trainingTimesUpdated" to "練習時間を更新しました。",
        "diary.trainingWindow" to "練習時間帯",
        "diary.trainingWindowUnset" to "未設定",
        "diary.unassignedPlanItems" to "{count} 件未割り当て",
        "diary.updateTimes" to "時間を更新",
        "errors.ERROR_ACTIVITY_IMAGE_DELETE_FAILED" to "画像の削除でエラーが発生しました。",
        "errors.ERROR_BAD_REQUEST" to "無効なリクエストです。",
        "errors.ERROR_CLUB_ALREADY_EXISTS" to "関連付けはすでに存在します。",
        "errors.ERROR_CLUB_NAME_REQUIRED" to "協会に意味のある名前を付けてください。",
        "errors.ERROR_CLUB_NAME_TOO_SHORT" to "協会に意味のある名前を付けてください。",
        "errors.ERROR_CLUB_NOT_FOUND" to "クラブが見つかりません。",
        "errors.ERROR_DIARY_ACTIVITY_PARTICIPANTS_UPDATE_FAILED" to "アクティビティ参加者の更新中にエラーが発生しました",
        "errors.ERROR_DIARY_ASSIGN_ALL_PARTICIPANTS_FAILED" to "すべての参加者を割り当てるときにエラーが発生しました",
        "errors.ERROR_DIARY_ASSIGN_GROUP_FAILED" to "エラーマッピンググループ",
        "errors.ERROR_DIARY_DATE_NOT_FOUND" to "日付が見つかりません",
        "errors.ERROR_DIARY_DATE_UPDATED" to "日付は利用できませんでした（もう利用できません）。日付ピッカーが更新されました。もう一度試してください。",
        "errors.ERROR_DIARY_GROUP_ASSIGNMENT_UPDATE_FAILED" to "グループ割り当ての更新中にエラーが発生しました",
        "errors.ERROR_DIARY_IMAGE_LOAD_FAILED" to "画像のロードに失敗しました",
        "errors.ERROR_DIARY_MEMBER_CREATE_FAILED" to "メンバー作成エラー",
        "errors.ERROR_DIARY_NO_EXERCISE_DATA" to "運動データを受信しませんでした",
        "errors.ERROR_DIARY_NO_PARTICIPANTS" to "このトレーニング日には参加者がいません。",
        "errors.ERROR_DIARY_PARTICIPANT_ASSIGN_FAILED" to "参加者を割り当てることができませんでした。",
        "errors.ERROR_DIARY_PARTICIPANT_GROUP_ASSIGNMENT_UPDATE_FAILED" to "参加者グループ割り当ての更新中にエラーが発生しました",
        "errors.ERROR_DIARY_PDF_GENERATION_FAILED" to "PDF の生成中にエラーが発生しました。",
        "errors.ERROR_DIARY_STATS_LOAD_FAILED" to "統計のロードに失敗しました。",
        "errors.ERROR_FORBIDDEN" to "許可が拒否されました。",
        "errors.ERROR_GROUP_ALREADY_EXISTS" to "この名前のグループはすでに存在します。",
        "errors.ERROR_GROUP_CANNOT_RENAME_PRESET" to "デフォルトのグループの名前は変更できません。",
        "errors.ERROR_GROUP_INVALID_PRESET_TYPE" to "無効なプリセット タイプです。",
        "errors.ERROR_GROUP_NAME_REQUIRED" to "グループ名を入力してください。",
        "errors.ERROR_GROUP_NOT_FOUND" to "グループが見つかりません。",
        "errors.ERROR_INTERNAL_SERVER_ERROR" to "内部サーバーエラーが発生しました。",
        "errors.ERROR_INVALID_PASSWORD" to "パスワードが間違っています。",
        "errors.ERROR_LOG_NOT_FOUND" to "ログエントリが見つかりません",
        "errors.ERROR_LOGIN_FAILED" to "ログインに失敗しました。",
        "errors.ERROR_MEMBER_ALREADY_EXISTS" to "メンバーはすでに存在します",
        "errors.ERROR_MEMBER_FIRSTNAME_REQUIRED" to "名は必須です。",
        "errors.ERROR_MEMBER_LASTNAME_REQUIRED" to "姓は必須です。",
        "errors.ERROR_MEMBER_NOT_FOUND" to "メンバーが見つかりません",
        "errors.ERROR_MEMBER_TRANSFER_BULK_FAILED" to "一括転送エラー: {message}",
        "errors.ERROR_MYTISCHTENNIS_ACCOUNT_NOT_LINKED" to "myTischtennis アカウントがリンクされていません。",
        "errors.ERROR_MYTISCHTENNIS_CAPTCHA_REQUIRED" to "キャプチャが必要です。 MyTischtennis では、ログイン時に CAPTCHA が使用されるようになりました。mytischtennis.de に直接ログインして CAPTCHA を解決するか、サポートにお問い合わせください。",
        "errors.ERROR_MYTISCHTENNIS_INVALID_PASSWORD" to "myTischtennis のパスワードが無効です。",
        "errors.ERROR_MYTISCHTENNIS_LOGIN_FAILED" to "ログインに失敗しました。資格情報を確認してください。",
        "errors.ERROR_MYTISCHTENNIS_NO_PASSWORD_SAVED" to "パスワードが保存されていないため、セッションが期限切れになりました。パスワードを入力してください。",
        "errors.ERROR_MYTISCHTENNIS_PASSWORD_NOT_SAVED" to "パスワードが保存されていません。パスワードを入力してください。",
        "errors.ERROR_MYTISCHTENNIS_SESSION_EXPIRED" to "セッションの有効期限が切れました。再度ログインしてください。",
        "errors.ERROR_MYTISCHTENNIS_USER_NOT_FOUND" to "myTischtennis ユーザーが見つかりません。",
        "errors.ERROR_NOT_FOUND" to "見つかりません。",
        "errors.ERROR_OFFICIAL_TOURNAMENT_PDF_UPLOAD" to "PDF のアップロードでエラーが発生しました。",
        "errors.ERROR_SESSION_EXPIRED" to "セッションの有効期限が切れました。",
        "errors.ERROR_TEAM_LINK_TO_LEAGUE_REQUIRED" to "書類を処理できるように、最初にチームにリーグを割り当ててください。",
        "errors.ERROR_TEAM_NOT_LINKED_TO_LEAGUE" to "このチームはどのリーグにも所属していません。",
        "errors.ERROR_TEAM_PDF_LOAD_FAILED" to "PDFの読み込みに失敗しました",
        "errors.ERROR_TEAM_STATS_LOAD_FAILED" to "統計を読み込めませんでした",
        "errors.ERROR_TOURNAMENT_CLASS_NAME_REQUIRED" to "クラス名を入力してください。",
        "errors.ERROR_TOURNAMENT_NO_DATE" to "トーナメントの日付はありません!",
        "errors.ERROR_TOURNAMENT_NO_PARTICIPANTS" to "この日のトレーニング日には参加者が見つかりませんでした。",
        "errors.ERROR_TOURNAMENT_NO_TRAINING_DAY" to "{date} のトレーニング日が見つかりません!",
        "errors.ERROR_TOURNAMENT_NO_VALID_PARTICIPANTS" to "この日付のトレーニング日に有効な参加者が見つかりません!",
        "errors.ERROR_TOURNAMENT_NOT_FOUND" to "トーナメントが見つかりません",
        "errors.ERROR_TOURNAMENT_PDF_GENERATION_FAILED" to "PDF の生成中にエラーが発生しました",
        "errors.ERROR_TOURNAMENT_SELECT_FIRST" to "最初にトーナメントを選択してください。",
        "errors.ERROR_TRAINING_STATS_LOAD_FAILED" to "トレーニング統計の読み込みエラー",
        "errors.ERROR_UNAUTHORIZED" to "認可されていません。",
        "errors.ERROR_UNKNOWN_ERROR" to "不明なエラーが発生しました。",
        "errors.ERROR_USER_NOT_FOUND" to "ユーザーが見つかりません。",
        "errors.ERROR_VALIDATION_FAILED" to "検証に失敗しました",
        "errors.SUCCESS_DIARY_GROUP_ASSIGNMENT_UPDATED" to "グループマッピングが更新されました",
        "errors.SUCCESS_DIARY_MEMBER_CREATED" to "メンバー「{name}」が正常に作成され、追加されました。",
        "errors.SUCCESS_OFFICIAL_TOURNAMENT_PDF_UPLOAD" to "アップロードに成功しました。",
        "home.authenticatedFeatures.keepDiary" to "トレーニング日記をつける",
        "home.authenticatedFeatures.keepDiaryDesc" to "トレーニング活動、参加者、活動、トレーニング日ごとのメモを文書化します。",
        "home.authenticatedFeatures.manageMembers" to "メンバーを管理する",
        "home.authenticatedFeatures.manageMembersDesc" to "クラブメンバーを管理し、トレーニンググループを作成し、すべての参加者を追跡します。",
        "home.authenticatedFeatures.manageTournaments" to "トーナメントを管理する",
        "home.authenticatedFeatures.manageTournamentsDesc" to "内部トーナメントとオープントーナメントを作成し、公式トーナメントをインポートし、エントリーを管理します。",
        "home.authenticatedFeatures.myTischtennisIntegration" to "MyTable Tennis の統合",
        "home.authenticatedFeatures.myTischtennisIntegrationDesc" to "ゲームの結果と統計を MyTischtennis.de と自動的に同期します。",
        "home.authenticatedFeatures.pdfExport" to "PDF エクスポート",
        "home.authenticatedFeatures.pdfExportDesc" to "参加者、アクティビティ、統計情報を含むトレーニング日を PDF としてエクスポートします。",
        "home.authenticatedFeatures.statistics" to "統計と評価",
        "home.authenticatedFeatures.statisticsDesc" to "詳細なトレーニングと参加の概要、およびアクティビティの統計を取得します。",
        "home.authenticatedFeatures.teamManagement" to "チームマネジメント",
        "home.authenticatedFeatures.teamManagementDesc" to "クラブのチーム、リーグ、試合日程、結果を管理します。",
        "home.authenticatedFeatures.trainingGroups" to "トレーニンググループと時間",
        "home.authenticatedFeatures.trainingGroupsDesc" to "トレーニング グループを組織し、トレーニング時間を定義し、グループの割り当てを管理します。",
        "home.faq" to "よくある質問",
        "home.faqFree.answer" to "はい、無料で始めることができます。拡張機能は後で追加できます。",
        "home.faqFree.question" to "使用は無料ですか?",
        "home.faqInstallation.answer" to "いいえ、Web アプリケーションです。デスクトップ、タブレット、スマートフォンのブラウザで直接使用します。",
        "home.faqInstallation.question" to "インストールが必要ですか?",
        "home.faqMyTischtennis.answer" to "はい、セットアップ後、アプリケーションは自動的に MyTischtennis.de と同期し、ゲームの結果と統計をインポートします。",
        "home.faqMyTischtennis.question" to "MyTischtennis の統合は自動的に機能しますか?",
        "home.faqPermissions.answer" to "管理者、コーチ、チームリーダー、メンバーの 4 つの役割があります。各役割には、カスタマイズできる特定の権限があります。",
        "home.faqPermissions.question" to "認可システムはどのように機能しますか?",
        "home.faqPrivacy.answer" to "当社はデータ エコノミー、透明性のある承認、ロールベースのアクセス、完全なアクティビティ ログに依存しています。アプリケーションは GDPR に準拠しています。",
        "home.faqPrivacy.question" to "データ保護についてはどうですか?",
        "home.faqTournaments.answer" to "内部トーナメント、オープン トーナメント、公式トーナメント (協会など) を管理できます。公式トーナメントをインポートできます。",
        "home.faqTournaments.question" to "どのトーナメントの種類がサポートされていますか?",
        "home.faqTrainingGroups.answer" to "はい、トレーニング グループを作成し、トレーニング時間を定義し、メンバーをグループに割り当てることができます。トレーニング日記は、適切なグループと時間を自動的に提案します。",
        "home.faqTrainingGroups.question" to "トレーニングのグループと時間を管理できますか?",
        "home.features.activityLog" to "アクティビティログ",
        "home.features.activityLogDesc" to "透明性と追跡可能性を確保するために、すべてのアクションを完全に記録します。",
        "home.features.keepDiary" to "トレーニング日記をつける",
        "home.features.keepDiaryDesc" to "各単元の内容、範囲、出席状況をわかりやすく構造化して文書化します。",
        "home.features.manageMembers" to "メンバーを管理する",
        "home.features.manageMembersDesc" to "メンバーのプロフィールを作成し、グループを形成し、連絡先と承認のステータスを最新の状態に保ちます。",
        "home.features.myTischtennisIntegration" to "MyTable Tennis の統合",
        "home.features.myTischtennisIntegrationDesc" to "試合結果と統計情報は MyTischtennis.de と自動同期されます。",
        "home.features.officialTournaments" to "公式トーナメント",
        "home.features.officialTournamentsDesc" to "公式トーナメントをインポートして管理し、エントリーと結果を管理します。",
        "home.features.organizeSchedules" to "ゲームプランを整理する",
        "home.features.organizeSchedulesDesc" to "グループ、ラウンド、結果などのゲーム、トーナメント、イベントを計画します。",
        "home.features.pdfExport" to "PDF エクスポート",
        "home.features.pdfExportDesc" to "参加者、アクティビティ、統計情報を含むトレーニング日を PDF としてエクスポートします。",
        "home.features.permissionSystem" to "認可制度",
        "home.features.permissionSystemDesc" to "個別の権限を持つ役割ベースのアクセス (管理者、コーチ、チームキャプテン、メンバー)。",
        "home.features.predefinedActivities" to "事前定義されたアクティビティ",
        "home.features.predefinedActivitiesDesc" to "繰り返しの演習にテンプレートを使用し、ドキュメントの作成をスピードアップします。",
        "home.features.security" to "セキュリティとGDPR",
        "home.features.securityDesc" to "データ保護に配慮したアーキテクチャ、メンバーの承認、透過的なアクセス。",
        "home.features.statistics" to "統計と評価",
        "home.features.statisticsDesc" to "トレーニングと参加の概要を受け取り、成長を認識して具体的に計画します。",
        "home.features.teamManagement" to "チームマネジメント",
        "home.features.teamManagementDesc" to "クラブのチーム、リーグ、試合日程、結果を管理します。",
        "home.features.trainingGroups" to "トレーニンググループと時間",
        "home.features.trainingGroupsDesc" to "トレーニング グループを組織し、トレーニング時間を定義し、グループの割り当てを管理します。",
        "home.forWhom" to "誰のためのトレーニング日記ですか？",
        "home.forWhomText" to "TrainingDiary は、クラブ、部門、コーチング チームのための包括的なプラットフォームです。これは、メンバー管理とトレーニング グループと時間、詳細なトレーニング日記、包括的なトーナメント組織 (内部トーナメント、オープン トーナメント、公式トーナメント)、リーグ統合によるチーム管理、MyTischtennis の同期、有意義な統計と評価、および最新の Web アプリケーションでの柔軟な認証システムを組み合わせています。明確な役割 (管理者、トレーナー、チームリーダー、メンバー) と個人の権限を通じて、責任者が制御を維持しながら、メンバーは自己決定の方法で参加できます。ジュニアから上級レベルまで、チーム、ラケット、個人スポーツに最適です。 GDPR に準拠し、透明性のある承認と完全なアクティビティ ログを実現します。",
        "home.haveAccount" to "すでにアカウントを持っています",
        "home.heroFeatures.memberManagement" to "メンバーとグループの管理",
        "home.heroFeatures.myTischtennis" to "MyTable Tennis の統合",
        "home.heroFeatures.statistics" to "統計と評価",
        "home.heroFeatures.teamManagement" to "チーム管理とリーグ",
        "home.heroFeatures.tournaments" to "トーナメント（社内、オープン、公式）",
        "home.heroFeatures.trainingDiary" to "トレーニング日記とドキュメント",
        "home.heroFeatures.trainingGroups" to "トレーニンググループとトレーニング時間",
        "home.heroSubtitle" to "TrainingDiary はクラブ向けの包括的なソリューションです。メンバー管理、トレーニング グループ、トレーニング時間、トレーニング日記、トーナメント組織、チーム管理、MyTable Tennis 統合、統計など - GDPR 準拠で使いやすいです。",
        "home.heroTitle" to "クラブ管理、トレーニング計画、トーナメントをすべて 1 か所で",
        "home.howItWorks" to "これが仕組みです",
        "home.registerNow" to "今すぐ無料登録してください",
        "home.rolesAndPrivacy" to "役割、権限、GDPR",
        "home.startFree" to "無料で始める",
        "home.step1.description" to "無料でアカウントを作成し、電子メールでアクティブ化します。",
        "home.step1.title" to "登録する",
        "home.step2.description" to "クラブを作成し、メンバーを招待し、グループを設定します。",
        "home.step2.title" to "クラブを作成する",
        "home.step3.description" to "予定を計画し、トレーニングを文書化し、進捗状況を追跡します。",
        "home.step3.title" to "計画と文書化",
        "home.welcome" to "トレーニング日記へようこそ",
        "home.welcomeBack" to "おかえり！正常にログインされました。",
        "home.whatCanYouDo" to "トレーニング日記で何ができるの？",
        "imageDialog.close" to "近い",
        "imageDialog.noImageAvailable" to "画像がありません",
        "imageDialog.title" to "画面",
        "imageViewer.camera" to "カメラ",
        "imageViewer.delete" to "消去",
        "imageViewer.deleteImage" to "画像の削除",
        "imageViewer.nextImage" to "次の画像",
        "imageViewer.noImageAvailable" to "画像がありません",
        "imageViewer.previousImage" to "前の画像",
        "imageViewer.rotateLeft" to "左に90°回転",
        "imageViewer.rotateRight" to "右に90°回転",
        "imageViewer.selectFiles" to "ファイルの選択",
        "imageViewer.setAsPrimary" to "メイン画像として設定",
        "imageViewer.setAsPrimaryButton" to "アイキャッチ画像を設定する",
        "imprint.contact" to "接触",
        "imprint.serviceProvider" to "サービスプロバイダーの名前",
        "imprint.title" to "法的通知",
        "languages.de" to "Deutsch (ドイツ語)",
        "languages.de-CH" to "Schwiizerdütsch (スイスドイツ語)",
        "languages.en-AU" to "English (英語（AU）)",
        "languages.en-GB" to "English (英語（GB）)",
        "languages.en-US" to "English (英語（US）)",
        "languages.es" to "Español (スペイン語)",
        "languages.fil" to "Filipino (フィリピン語)",
        "languages.fr" to "Français (フランス語)",
        "languages.it" to "Italiano (イタリア語)",
        "languages.ja" to "日本語",
        "languages.pl" to "Polski (ポーランド語)",
        "languages.th" to "ไทย (タイ語)",
        "languages.tl" to "Tagalog (タガログ語)",
        "languages.zh" to "中文 (中国語)",
        "legal.backToHome" to "ホームページに戻る",
        "legal.imprint" to "法的通知",
        "legal.privacyPolicy" to "プライバシーポリシー",
        "logs.actions" to "アクション",
        "logs.all" to "全て",
        "logs.apiRequests" to "APIリクエスト",
        "logs.applyFilters" to "フィルターを適用する",
        "logs.backend" to "バックエンド設定",
        "logs.clearFilters" to "元に戻す",
        "logs.cronJobs" to "クロンジョブ",
        "logs.details" to "Details",
        "logs.displayed" to "表示される",
        "logs.displayedLabel" to "閲覧済み",
        "logs.error" to "エラー",
        "logs.errorLabel" to "エラー",
        "logs.errorLoading" to "ログのロード中にエラーが発生しました",
        "logs.executionTime" to "実行時間",
        "logs.from" to "から",
        "logs.httpMethod" to "HTTPメソッド",
        "logs.justNow" to "ちょうど今",
        "logs.loadingLogs" to "ログを読み込んでいます...",
        "logs.logDetails" to "ログの詳細",
        "logs.logDetailsLabels.error" to "エラー",
        "logs.logDetailsLabels.executionTime" to "実行時間",
        "logs.logDetailsLabels.ip" to "IP",
        "logs.logDetailsLabels.method" to "方法",
        "logs.logDetailsLabels.path" to "パス",
        "logs.logDetailsLabels.requestBody" to "リクエストボディ",
        "logs.logDetailsLabels.responseBody" to "応答本文",
        "logs.logDetailsLabels.schedulerJob" to "スケジューラージョブ",
        "logs.logDetailsLabels.status" to "状態",
        "logs.logDetailsLabels.time" to "時間",
        "logs.logDetailsLabels.type" to "タイプ",
        "logs.logType" to "ログの種類",
        "logs.logTypeLabels.api_request" to "APIリクエスト",
        "logs.logTypeLabels.cron_job" to "クロンジョブ",
        "logs.logTypeLabels.manual" to "マニュアル",
        "logs.logTypeLabels.scheduler" to "スケジューラ",
        "logs.manual" to "手動実行",
        "logs.method" to "方法",
        "logs.minutesAgo" to "{n}分前",
        "logs.mytischtennis" to "私の卓球",
        "logs.next" to "次",
        "logs.of" to "による",
        "logs.ownBackend" to "独自のバックエンド",
        "logs.page" to "ページ",
        "logs.path" to "パス",
        "logs.pathPlaceholder" to "例えば/api/日記",
        "logs.previous" to "前の",
        "logs.recordsFound" to "レコードが見つかりました",
        "logs.scheduler" to "スケジューラ",
        "logs.secondsAgo" to "{n} 秒前",
        "logs.status" to "状態",
        "logs.subtitle" to "すべての API リクエスト、応答、実行の概要",
        "logs.successfullyLoaded" to "正常にロードされました",
        "logs.time" to "時間",
        "logs.title" to "システムログ",
        "logs.to" to "に",
        "logs.total" to "合計",
        "logs.type" to "タイプ",
        "matchReport.analyzeNuscore" to "ヌスコア分析",
        "matchReport.createLocalCopy" to "ローカルコピーを作成する",
        "matchReport.hideAnalyzer" to "アナライザーを隠す",
        "matchReportApi.availablePlayers" to "利用可能なプレーヤー",
        "matchReportApi.bothTeamsAppeared" to "両チームが競い合いました",
        "matchReportApi.clickToRemove" to "クリックして削除します",
        "matchReportApi.completed" to "閉店",
        "matchReportApi.completion" to "完了",
        "matchReportApi.endTime" to "終了時間",
        "matchReportApi.errorLoading" to "データのロード中にエラーが発生しました",
        "matchReportApi.general" to "一般的な",
        "matchReportApi.greeting" to "歓迎する",
        "matchReportApi.guestLineup" to "ゲストのセットアップ",
        "matchReportApi.guestPin" to "PINゲストクラブ",
        "matchReportApi.guestTeamNotAppeared" to "ゲストチーム{team}は出場しませんでした",
        "matchReportApi.homeLineup" to "自宅での設置",
        "matchReportApi.homePin" to "ピンホームクラブ",
        "matchReportApi.homeTeamNotAppeared" to "ホームチーム{team}は出場しませんでした",
        "matchReportApi.loading" to "試合レポートデータをロード中...",
        "matchReportApi.noLineupData" to "利用可能なインストール データがありません",
        "matchReportApi.notAppeared" to "全員参加していない",
        "matchReportApi.pending" to "保留中",
        "matchReportApi.pinInput" to "PIN入力",
        "matchReportApi.playSystem" to "ゲームシステム",
        "matchReportApi.rank" to "丸",
        "matchReportApi.result" to "結果の入力",
        "matchReportApi.retry" to "もう一度やり直してください",
        "matchReportApi.selectedPlayers" to "選択されたプレーヤー",
        "matchReportApi.setCurrentTime" to "現在時刻を設定する",
        "matchReportApi.signLineup" to "サイン設置",
        "matchReportApi.startTime" to "開始時間",
        "matchReportApi.status" to "状態",
        "matchReportApi.vs" to "vs",
        "matchReportHeaderActions.copied" to "コピーしました！",
        "matchReportHeaderActions.copyError" to "ピンのコピー中にエラーが発生しました",
        "matchReportHeaderActions.copyPin" to "PINをコピーする",
        "matchReportHeaderActions.copyPinTitle" to "クリップボードにコピー",
        "matchReportHeaderActions.insertPin" to "PIN を挿入してください",
        "matchReportHeaderActions.insertPinTitle" to "自動挿入",
        "matchReportHeaderActions.noPinAvailable" to "利用可能なPINがありません",
        "memberActivities.activity" to "エクササイズ",
        "memberActivities.all" to "全て",
        "memberActivities.close" to "近い",
        "memberActivities.dates" to "データ",
        "memberActivities.frequency" to "頻度",
        "memberActivities.last3Months" to "過去 3 か月",
        "memberActivities.last4Weeks" to "過去2ヶ月",
        "memberActivities.last6Months" to "ここ半年",
        "memberActivities.lastYear" to "去年",
        "memberActivities.loading" to "演習を読み込んでいます...",
        "memberActivities.more" to "他の",
        "memberActivities.noActivities" to "選択した期間に演習は見つかりませんでした。",
        "memberActivities.period" to "期間",
        "memberActivities.showLess" to "あまり見せない",
        "memberActivities.title" to "による演習",
        "memberGallery.imageSize" to "画像サイズ",
        "memberGallery.loading" to "ギャラリーを読み込んでいます...",
        "memberGallery.noImage" to "画像なし",
        "memberGallery.noMembersWithImages" to "画像のあるメンバーが見つかりませんでした。",
        "memberGallery.title" to "メンバーギャラリー",
        "memberGallery.titleWithDate" to "メンバー ギャラリー - 画像をクリックして参加者として追加します",
        "memberNotes.add" to "追加",
        "memberNotes.memberImage" to "画像メンバー",
        "memberNotes.newNote" to "新しいメモ",
        "memberNotes.notes" to "注意事項",
        "memberNotes.phone" to "電話番号",
        "memberNotes.selectTags" to "タグの選択",
        "memberNotes.tags" to "Tags",
        "memberNotes.title" to "注意事項",
        "members.actions" to "操作",
        "members.active" to "アクティブ",
        "members.activeMembers" to "アクティブメンバー",
        "members.addEmail" to "メールアドレスを追加",
        "members.addGroup" to "グループを追加...",
        "members.addPhone" to "電話番号を追加",
        "members.address" to "住所",
        "members.adultReleaseApproved" to "一般参加承認済み",
        "members.adultReserveApproved" to "一般予備",
        "members.adults" to "一般（20歳以上）",
        "members.age" to "年",
        "members.ageFromPlaceholder" to "から",
        "members.ageGroup" to "年齢区分",
        "members.ageRange" to "年齢範囲",
        "members.ageToPlaceholder" to "まで",
        "members.batchFormsMarkedEmpty" to "現在の選択には未検証のフォームはありません。",
        "members.batchFormsMarkedSuccess" to "{count} フォームを検証済みとしてマークしました。",
        "members.batchMarkedRegularEmpty" to "現在選択されているトライアル メンバーはいません。",
        "members.batchMarkedRegularSuccess" to "{count} トライアル メンバーを正規メンバーとしてマークしました。",
        "members.batchPartialFailure" to "{success} は成功しましたが、{failed} は失敗しました。",
        "members.birthdate" to "生年月日",
        "members.bulkActions" to "一括操作",
        "members.camera" to "カメラ",
        "members.change" to "変更",
        "members.city" to "市区町村",
        "members.clearFields" to "入力欄をクリア",
        "members.clearFilters" to "フィルターをリセット",
        "members.clickTtRequestAction" to "クリック TT 資格をリクエストする",
        "members.clickTtRequestConfirm" to "{name} に対する自動 Click-TT リクエストを開始しますか?",
        "members.clickTtRequestError" to "Click-TT リクエストを送信できませんでした。",
        "members.clickTtRequestFailedLog" to "Click-TT リクエストが失敗しました",
        "members.clickTtRequestHint" to "リクエストはバックエンド Click-TT ワークフローによって自動的に処理されます。",
        "members.clickTtRequestPending" to "Click-TT リクエストが進行中です",
        "members.clickTtRequestPendingShort" to "保留中 ...",
        "members.clickTtRequestShort" to "クリックTT",
        "members.clickTtRequestSuccess" to "click-tt にサインインして、そこからリクエストを送信してください。",
        "members.clickTtRequestTitle" to "Click-TT リクエストの開始",
        "members.clickTtSubmitted" to "Click-TT を送信しました",
        "members.closeEditor" to "エディタを閉じる",
        "members.composeEmail" to "メールを作成する",
        "members.contact" to "接触",
        "members.copyContactSummary" to "連絡先の概要をコピーする",
        "members.copyContactSummarySuccess" to "連絡先の概要がクリップボードにコピーされました。",
        "members.copyEmails" to "メールをコピーする",
        "members.copyEmailsEmpty" to "現在の選択には電子メール アドレスがありません。",
        "members.copyEmailsSuccess" to "電子メールのリストがクリップボードにコピーされました。",
        "members.copyPhones" to "電話をコピーする",
        "members.copyPhonesEmpty" to "現在の選択には電話番号がありません。",
        "members.copyPhonesSuccess" to "電話リストがクリップボードにコピーされました。",
        "members.create" to "作成",
        "members.createNewMember" to "新規メンバーを作成",
        "members.dataIssueAddress" to "住所がありません",
        "members.dataIssueBirthdate" to "生年月日がありません",
        "members.dataIssueCity" to "市区町村がありません",
        "members.dataIssueEmail" to "メールアドレスがありません",
        "members.dataIssueGender" to "性別が未設定です",
        "members.dataIssuePhone" to "電話番号がありません",
        "members.dataIssuePostalCode" to "郵便番号がありません",
        "members.dataIssueStreet" to "番地がありません",
        "members.dataIssueTrainingGroup" to "練習グループがありません",
        "members.dataQuality" to "データ品質",
        "members.dataQualityComplete" to "データは完全です",
        "members.deactivateMember" to "メンバーを無効化",
        "members.deactivateMemberConfirm" to "「{name}」を本当に無効化しますか？",
        "members.deactivateMemberTitle" to "メンバーを無効化",
        "members.deleteImageConfirm" to "本当にこの画像を削除してもよろしいですか?",
        "members.deleteImageTitle" to "画像の削除",
        "members.editHint" to "行をクリックしてエディタを開きます。",
        "members.editMember" to "メンバーを編集",
        "members.editorAssignTrainingGroupHint" to "少なくとも 1 つの練習グループを割り当ててください。",
        "members.editorCreateHint" to "新しいメンバーを作成し、連絡先の詳細を直接取得します。",
        "members.editorEditHint" to "{name} の詳細を編集します。",
        "members.editorRecommendedEntry" to "推奨入力",
        "members.emailAddress" to "メールアドレス",
        "members.emailAddressShort" to "メール",
        "members.emails" to "メールアドレス",
        "members.errorAddingToGroup" to "グループへの追加エラー",
        "members.errorDeactivatingMember" to "メンバーの無効化エラー",
        "members.errorDeletingImage" to "画像を削除できませんでした",
        "members.errorLoadingImage" to "画像の読み込みエラー",
        "members.errorLoadingMembers" to "メンバーリストの読み込みに失敗しました。",
        "members.errorLoadingTrainingParticipations" to "練習参加履歴の読み込みエラー",
        "members.errorMarkingForm" to "フォームの更新エラー。",
        "members.errorRemovingFromGroup" to "グループからの削除エラー",
        "members.errorRemovingTestMembership" to "体験会員の解除エラー。",
        "members.errorRotatingImage" to "画像回転エラー",
        "members.errorSavingMember" to "メンバーの保存エラー",
        "members.errorSettingPrimaryImage" to "メイン画像を設定できませんでした",
        "members.errorTransfer" to "移行エラー",
        "members.errorUpdatingRatings" to "TTR/QTTR 更新エラー",
        "members.errorUploadingImage" to "画像をアップロードできませんでした",
        "members.exercises" to "練習",
        "members.exportCsv" to "CSVのエクスポート",
        "members.exportCsvFile" to "メンバー選択.csv",
        "members.exportEmails" to "電子メール",
        "members.exportMembersSelected" to "現在選ばれているメンバー",
        "members.exportPhones" to "電話",
        "members.exportPreview" to "プレビューのエクスポート",
        "members.exportPreviewEmpty" to "現在の選択にはメンバーがいません",
        "members.exportPreviewNames" to "プレビュー",
        "members.exportReachableByEmail" to "メールアドレス付き",
        "members.exportReachableByPhone" to "電話番号付き",
        "members.firstName" to "名",
        "members.formHandedOver" to "会員フォーム受け渡し済み",
        "members.formMarkedAsHandedOver" to "会員フォームを受け渡し済みにしました。",
        "members.gender" to "性別",
        "members.genderDiverse" to "その他",
        "members.genderFemale" to "女性",
        "members.genderMale" to "男性",
        "members.genderUnknown" to "不明",
        "members.generatePhoneList" to "電話リストを作成",
        "members.groupPhotoCrop" to "集合写真を処理",
        "members.groupPhotoCropSaved" to "集合写真から会員写真を保存しました。",
        "members.image" to "画像",
        "members.imageDeleted" to "画像を削除しました。",
        "members.imageInternet" to "画像（公開）",
        "members.imagePreview" to "メンバー画像のプレビュー",
        "members.imageUpdated" to "画像を更新しました",
        "members.inactive" to "非アクティブ",
        "members.inactiveMembers" to "非アクティブメンバー",
        "members.j11" to "U11",
        "members.j13" to "U13",
        "members.j15" to "U15",
        "members.j17" to "J17（17歳以下）",
        "members.j19" to "U19",
        "members.j9" to "U9",
        "members.lastName" to "姓",
        "members.lastTrainingFilter" to "最終参加",
        "members.lastTrainingFilterHasDate" to "日付あり",
        "members.lastTrainingFilterHint" to "表：AK列は今シーズン。列にマウスを乗せると両シーズン・最終参加・参加回数（分かる場合）を表示。",
        "members.lastTrainingFilterNoDate" to "最終参加なし",
        "members.lastTrainingFilterNotInTraining" to "「参加なし」フラグ",
        "members.loadingMembers" to "メンバーを読み込んでいます...",
        "members.m11" to "G11",
        "members.m13" to "G13",
        "members.m15" to "G15",
        "members.m19" to "G19",
        "members.m9" to "G9",
        "members.markFormReceived" to "フォームに確認済みのマークを付ける",
        "members.markFormsForSelection" to "選択用のフォームを確認する",
        "members.markRegular" to "レギュラーとしてマークする",
        "members.markRegularForSelection" to "選択を定期的にマークする",
        "members.memberDeactivated" to "メンバーを無効化しました",
        "members.memberDetails" to "会員詳細",
        "members.memberFormHandedOver" to "会員フォーム受け渡し済み",
        "members.memberImage" to "メンバー画像",
        "members.memberImages" to "メンバー画像",
        "members.memberInfo" to "メンバー情報",
        "members.memberScope" to "メンバーの範囲",
        "members.missingTtrHistoryId" to "myTischtennis ID が登録されていません",
        "members.name" to "姓名",
        "members.newMember" to "新規メンバー",
        "members.noAddressShort" to "住所なし",
        "members.noEmailShort" to "メールなし",
        "members.noGroupsAssigned" to "グループ未割り当て",
        "members.noGroupsAvailable" to "利用可能なグループがありません",
        "members.noOpenTasks" to "開いているタスクはありません",
        "members.noPhoneShort" to "電話なし",
        "members.notes" to "メモ",
        "members.noTestMembership" to "体験会員ではない",
        "members.notInTrainingTooltip" to "{weeks} トレーニング週間は参加しません",
        "members.onlyActiveMembers" to "アクティブメンバーのみ出力されます",
        "members.openTasks" to "開いているタスク",
        "members.parent" to "保護者",
        "members.parentFallback" to "親",
        "members.parentName" to "名前（例：母、父）",
        "members.phoneList" to "電話リスト.pdf",
        "members.phoneListForSelection" to "選択用の電話リスト",
        "members.phoneListSelectionFile" to "電話リスト選択.pdf",
        "members.phoneNumber" to "電話番号",
        "members.phoneNumberShort" to "電話番号",
        "members.phones" to "電話番号",
        "members.picsInInternetAllowed" to "インターネット掲載可",
        "members.postalCode" to "郵便番号",
        "members.previewLastTraining" to "最後のトレーニング",
        "members.previewNoLastTraining" to "まだ参加はありません",
        "members.primary" to "メイン",
        "members.primaryImageUpdated" to "メイン画像を更新しました。",
        "members.remove" to "削除",
        "members.resultsVisible" to "メンバーが表示される",
        "members.rowTooltipSeparator" to "·",
        "members.scopeActive" to "アクティブ",
        "members.scopeActiveDataIncomplete" to "アクティブ + データ不完全",
        "members.scopeActiveTest" to "アクティブ + トライアル",
        "members.scopeAll" to "全て",
        "members.scopeDataIncomplete" to "データ不完全",
        "members.scopeInactive" to "非アクティブ",
        "members.scopeNeedsForm" to "フォームが未確認",
        "members.scopeNotTraining" to "もうトレーニングしない",
        "members.scopeTest" to "トライアル",
        "members.search" to "検索",
        "members.searchAndFilter" to "検索とフィルター",
        "members.searchPlaceholder" to "名前、都市、電話番号、メールアドレスで検索",
        "members.selectFile" to "ファイルを選択",
        "members.showInactiveMembers" to "非アクティブメンバーを表示",
        "members.showTrainingParticipationsColumn" to "「参加回数」列を表示",
        "members.showTtrHistory" to "TTR 履歴を表示",
        "members.sixOrMoreParticipations" to "練習参加 6 回以上",
        "members.sortAge" to "年",
        "members.sortBirthday" to "誕生日",
        "members.sortBy" to "並べ替え",
        "members.sortFirstName" to "ファーストネーム",
        "members.sortLastName" to "苗字",
        "members.sortLastTraining" to "最後のトレーニング",
        "members.sortOpenTasks" to "開いているタスク",
        "members.sortQttr" to "QTTR値",
        "members.status" to "状態",
        "members.street" to "住所",
        "members.subtitle" to "メンバーを直接検索、フィルタリング、編集します。",
        "members.taskActionMarkRegular" to "レギュラーとしてマークする",
        "members.taskActionRequest" to "リクエスト",
        "members.taskActionReview" to "開く",
        "members.taskActionVerify" to "確認する",
        "members.taskAssignTrainingGroup" to "練習グループを割り当て",
        "members.taskCheckClickTt" to "Click-TT の資格を確認する",
        "members.taskCheckDataQuality" to "データ品質を確認",
        "members.taskCheckTrainingStatus" to "トレーニング状況を確認する",
        "members.taskReviewTrialStatus" to "トライアルステータスを確認する",
        "members.taskVerifyForm" to "フォームの確認",
        "members.testMember" to "体験",
        "members.testMembers" to "体験メンバー",
        "members.testMembership" to "体験会員",
        "members.testMembershipRemoved" to "体験会員を解除しました。",
        "members.threeOrMoreParticipations" to "練習参加 3 回以上",
        "members.title" to "メンバー",
        "members.toggleSortDirection" to "並べ替え方向の切り替え",
        "members.trainingGroups" to "練習グループ",
        "members.trainingParticipations" to "練習参加回数",
        "members.transferErrorTitle" to "転送エラー",
        "members.transferMembers" to "メンバーを移行",
        "members.transferSuccessTitle" to "転送成功",
        "members.ttAdult" to "一般（基準日でジュニアではない）",
        "members.ttAgeClassCol" to "年齢（TT）",
        "members.ttFilterGroupJ" to "男女混合",
        "members.ttFilterGroupM" to "女子のみ",
        "members.ttrQttr" to "TTR/QTTR",
        "members.ttSeasonCurrentTag" to "今季",
        "members.ttSeasonFilter" to "シーズン（基準日）",
        "members.ttSeasonNextTag" to "来季",
        "members.ttStichtagHint" to "基準日1月1日（DTTB）。男子：Jのみ。女子：JとM。",
        "members.updateRatings" to "myTischtennis から TTR/QTTR を更新",
        "members.updating" to "更新中...",
        "members.visibleMembers" to "表示可能なメンバー",
        "members.wantsToPlay" to "プレー希望",
        "memberSelection.close" to "近い",
        "memberSelection.deselectAll" to "すべての選択を解除します",
        "memberSelection.generatePdf" to "PDFの生成",
        "memberSelection.members" to "メンバー",
        "memberSelection.noRecommendations" to "一致する推奨事項が見つかりませんでした。",
        "memberSelection.recommendations" to "推奨事項",
        "memberSelection.selectAll" to "すべて選択",
        "memberSelection.title" to "メンバーの選択",
        "memberTransfer.additionalField" to "追加フィールド",
        "memberTransfer.additionalFieldExample1" to "追加フィールド (例: client_id)",
        "memberTransfer.additionalFieldExample2" to "追加フィールド (例: client_secret)",
        "memberTransfer.analyzeAndImport" to "テンプレートの分析とインポート",
        "memberTransfer.availablePlaceholders" to "利用可能なプレースホルダー",
        "memberTransfer.bulkMode" to "一括インポートモード (すべてのメンバーを一度に転送)",
        "memberTransfer.bulkModeActive" to "モードアクティブ",
        "memberTransfer.bulkModeActiveDescription" to "テンプレートは単一メンバーの形式を定義します。メンバーは自動的に配列にラップされます。オプションで、「バルク ラッパー テンプレート」で外部構造を定義できます (下記を参照)。",
        "memberTransfer.bulkModeHint" to "有効にすると、リクエスト内のすべてのメンバーが配列として転送されます。",
        "memberTransfer.bulkWrapperDescription" to "オプションで、メンバー配列が挿入される外部構造を定義できます。 PLACEHOLDER_MEMBERS をメンバーの配列のプレースホルダーとして使用します。",
        "memberTransfer.bulkWrapperNote" to "注: ラッパー テンプレートが指定されていない場合は、メンバー配列が自動的に使用されます。",
        "memberTransfer.bulkWrapperTemplate" to "バルク ラッパー テンプレート (オプション)",
        "memberTransfer.bulkWrapperWhat" to "バルク ラッパー テンプレートとは何ですか?",
        "memberTransfer.configDeleted" to "構成は正常に削除されました。",
        "memberTransfer.configInfo" to "ここでは、メンバーを外部システムに転送するための設定を行います。これらの設定はクラブごとに保存されます。",
        "memberTransfer.configSaved" to "構成が正常に保存されました",
        "memberTransfer.confirmDelete" to "構成の削除",
        "memberTransfer.confirmDeleteMessage" to "この取引を返金してもよろしいですか?",
        "memberTransfer.deleteConfig" to "構成の削除",
        "memberTransfer.deleting" to "クリア中...",
        "memberTransfer.errorDeleting" to "エラークリア",
        "memberTransfer.errorLoading" to "構成のロード中にエラーが発生しました",
        "memberTransfer.errorParsingTemplate" to "テンプレート解析エラー",
        "memberTransfer.errorSaving" to "保存中にエラーが発生しました",
        "memberTransfer.example" to "例",
        "memberTransfer.exampleFormData" to "フォームデータ形式の例",
        "memberTransfer.exampleJson" to "JSON形式の例（推奨）",
        "memberTransfer.exampleXml" to "XML形式の例",
        "memberTransfer.formDataHint" to "フォーム データの場合は、feldname=placeholder 形式の行を含む単純なテキスト テンプレートを使用します。",
        "memberTransfer.httpMethod" to "HTTPメソッド",
        "memberTransfer.importTemplate" to "完全な例からテンプレートをインポート",
        "memberTransfer.importTemplateHint" to "完全なサンプル テンプレート (サンプル メンバーを含む) を含めます。システムはメンバー テンプレートとバルク ラッパー テンプレートを自動的に検出します。",
        "memberTransfer.importTemplatePlaceholder" to "ここに完全なテンプレートの例を挿入します。例:\nルブレース\n  12月: [\n    ルブレース\n      D .firstNameD.: D .MaxD.、\n      D. 姓 D.: D. MustermannD.、\n      DMメール: DMaxATexample.comメール: DMaxATexample.com\n    Rブレイス\n  】\nRブレイス",
        "memberTransfer.invalidJson" to "有効な JSON が使用されていることを確認してください。",
        "memberTransfer.invalidTemplateFormat" to "無効なテンプレート形式です",
        "memberTransfer.loadingConfig" to "設定を読み込んでいます...",
        "memberTransfer.loginConfiguration" to "ログイン設定",
        "memberTransfer.loginData" to "ログインデータ",
        "memberTransfer.loginEndpointHint" to "オプション: ログインエンドポイントへの相対パス (例: /api/auth/login)",
        "memberTransfer.loginEndpointPath" to "ログインエンドポイントパス",
        "memberTransfer.loginEndpointPlaceholder" to "/api/認証/ログイン",
        "memberTransfer.loginFormat" to "ログイン形式",
        "memberTransfer.membersArray" to "メンバー配列",
        "memberTransfer.password" to "パスワード",
        "memberTransfer.passwordEncrypted" to "パスワードは暗号化されて保存されます。",
        "memberTransfer.placeholderHint" to "プレースホルダーをクリックして、現在のカーソル位置に挿入します。",
        "memberTransfer.placeholders.address" to "結合アドレス",
        "memberTransfer.placeholders.addressDesc" to "通りと街が融合した",
        "memberTransfer.placeholders.birthDate" to "生年月日",
        "memberTransfer.placeholders.birthDateAlt" to "生年月日（旧）",
        "memberTransfer.placeholders.birthDateAltDesc" to "YYYY-MM-DD形式の生年月日（別名）",
        "memberTransfer.placeholders.birthDateDesc" to "YYYY-MM-DD の形式で",
        "memberTransfer.placeholders.city" to "位置",
        "memberTransfer.placeholders.cityDesc" to "居住地",
        "memberTransfer.placeholders.email" to "電子メールアドレス",
        "memberTransfer.placeholders.emailDesc" to "会員のメールアドレス",
        "memberTransfer.placeholders.firstName" to "ファーストネーム",
        "memberTransfer.placeholders.firstNameDesc" to "メンバーの名前",
        "memberTransfer.placeholders.fullName" to "フルネーム",
        "memberTransfer.placeholders.fullNameDesc" to "名と姓を組み合わせたもの",
        "memberTransfer.placeholders.gender" to "セックス",
        "memberTransfer.placeholders.genderDesc" to "メンバーの性別",
        "memberTransfer.placeholders.lastName" to "姓",
        "memberTransfer.placeholders.lastNameDesc" to "メンバーの姓",
        "memberTransfer.placeholders.phone" to "電話番号",
        "memberTransfer.placeholders.phoneDesc" to "スタッフの電話",
        "memberTransfer.placeholders.qttr" to "QTTR値",
        "memberTransfer.placeholders.qttrDesc" to "メンバーの QTTR 値",
        "memberTransfer.placeholders.street" to "通り",
        "memberTransfer.placeholders.streetDesc" to "番地と家番号",
        "memberTransfer.placeholders.ttr" to "TTR値",
        "memberTransfer.placeholders.ttrDesc" to "メンバーの TTR 値",
        "memberTransfer.save" to "保存",
        "memberTransfer.saving" to "保存中...",
        "memberTransfer.serverBaseUrl" to "サーバーベースURL",
        "memberTransfer.serverBaseUrlHint" to "サーバーのベース URL (例: https://example.com)",
        "memberTransfer.serverBaseUrlPlaceholder" to "https://example.com",
        "memberTransfer.serverConfiguration" to "サーバー構成",
        "memberTransfer.templateDescription" to "テンプレートは、メンバー データが外部システムに転送される形式を定義します。 PLACEHOLDER_FIRSTNAME などのプレースホルダーを使用して、データを自動的に置き換えます。",
        "memberTransfer.templateImported" to "テンプレートは正常にインポートされました。",
        "memberTransfer.templateImportedBulk" to "メンバー テンプレートが検出され、バルク モードが有効になりました。",
        "memberTransfer.templateImportedDetails" to "メンバーおよびバルク ラッパー テンプレートが検出され、完了しました。",
        "memberTransfer.templateImportedSingle" to "単一のメンバー テンプレートが検出されました。",
        "memberTransfer.templateTip" to "ヒント: テンプレート内の目的の場所にカーソルを置き、プレースホルダーをクリックして挿入します。プレースホルダーは、転送時に実際のメンバー データに自動的に置き換えられます。",
        "memberTransfer.templateWhat" to "テンプレートとは何ですか?",
        "memberTransfer.title" to "メンバー移行 - 設定",
        "memberTransfer.transferConfiguration" to "送信構成",
        "memberTransfer.transferConfigurationTitle" to "送信構成",
        "memberTransfer.transferEndpointHint" to "送信エンドポイントへの相対パス (例: /api/members/bulk)",
        "memberTransfer.transferEndpointPath" to "送信エンドポイントパス",
        "memberTransfer.transferEndpointPlaceholder" to "/api/メンバー/バルク",
        "memberTransfer.transferFormat" to "伝送フォーマット",
        "memberTransfer.transferTemplate" to "転送テンプレート",
        "memberTransfer.usernameEmail" to "ユーザー名 / メールアドレス",
        "memberTransferDialog.additionalErrors" to "追加の障害",
        "memberTransferDialog.additionalFieldPlaceholder" to "追加フィールド (例: client_id)",
        "memberTransferDialog.additionalFieldPlaceholderForm" to "フィールド名: 値 (例: client_id: abc123)",
        "memberTransferDialog.bulkImport" to "一括インポート",
        "memberTransferDialog.cancel" to "キャンセル",
        "memberTransferDialog.editConfig" to "構成を編集します。",
        "memberTransferDialog.endpoint" to "Endpoint",
        "memberTransferDialog.excludedMembers" to "除外されたメンバー (必須フィールドが欠落しています)",
        "memberTransferDialog.format" to "Format",
        "memberTransferDialog.goToSettings" to "設定 どこへ?",
        "memberTransferDialog.loadingConfig" to "保存された設定をロードしています",
        "memberTransferDialog.loginData" to "ログインデータ",
        "memberTransferDialog.loginDataHint" to "ログインの詳細は設定から​​使用されます。必要に応じて、ここで上書きできます。",
        "memberTransferDialog.loginDataOverride" to "ログインの詳細 (オプションで上書き)",
        "memberTransferDialog.loginDataOverrideHint" to "保存したログインデータを上書きする場合にのみ入力してください。空のフィールドには、保存されている値が使用されます。",
        "memberTransferDialog.method" to "方法",
        "memberTransferDialog.mode" to "モード",
        "memberTransferDialog.noConfigFound" to "構成が見つかりません",
        "memberTransferDialog.noConfigMessage" to "最初に設定でメンバーの移行を設定してください。",
        "memberTransferDialog.passwordPlaceholder" to "パスワード（保存する場合は空白のままにしてください）",
        "memberTransferDialog.server" to "Server",
        "memberTransferDialog.single" to "シングル",
        "memberTransferDialog.title" to "メンバーの移動",
        "memberTransferDialog.transfer" to "転送されました",
        "memberTransferDialog.transferConfiguration" to "送信構成",
        "memberTransferDialog.transferError" to "送信中のエラー",
        "memberTransferDialog.transferFailed" to "転送に失敗しました",
        "memberTransferDialog.transferring" to "通信中...",
        "memberTransferDialog.transferSuccess" to "{transferred} は {total} メンバーによって正常に転送されました。",
        "memberTransferDialog.usernameEmail" to "ユーザー名 / メールアドレス",
        "messages.cancel" to "キャンセル",
        "messages.confirm" to "確認",
        "messages.error" to "エラー",
        "messages.fileTooLarge" to "ファイルが大きすぎます",
        "messages.imageMaxSize" to "画像は最大 5 MB である必要があります。",
        "messages.info" to "情報",
        "messages.invalidFile" to "無効なファイル",
        "messages.note" to "知らせ",
        "messages.pleaseSelectImageFile" to "画像ファイルを選択してください。",
        "messages.recordsDisplayed" to "表示される",
        "messages.recordsFound" to "レコードが見つかりました",
        "messages.success" to "成功",
        "messages.successfullyLoaded" to "正常にロードされました",
        "messages.warning" to "警告",
        "mobile.active" to "Aktiv",
        "mobile.add" to "Hinzufügen",
        "mobile.appLoading" to "App wird geladen",
        "mobile.calendarAgendaEmpty" to "今月の予定はありません。",
        "mobile.calendarAgendaTitle" to "今月の予定",
        "mobile.calendarAllSourcesFailed" to "カレンダーを読み込めませんでした。",
        "mobile.calendarCancellationEnd" to "終了日（任意）",
        "mobile.calendarCancellationHint" to "その日の定例練習時間を非表示にします。",
        "mobile.calendarCancellationInMonth" to "今月の中止",
        "mobile.calendarCancellationReason" to "理由",
        "mobile.calendarCancellationSave" to "保存",
        "mobile.calendarCancellationStart" to "日付 (YYYY-MM-DD)",
        "mobile.calendarCancellationTitle" to "練習中止",
        "mobile.calendarGridTitle" to "月",
        "mobile.calendarLegend" to "表示",
        "mobile.calendarLegendCancellation" to "中止",
        "mobile.calendarLegendHoliday" to "祝日",
        "mobile.calendarLegendMatch" to "リーグ戦",
        "mobile.calendarLegendOfficial" to "参加",
        "mobile.calendarLegendSchool" to "学校の休み",
        "mobile.calendarLegendTournament" to "大会",
        "mobile.calendarLegendTraining" to "練習",
        "mobile.calendarSourceCancellations" to "練習中止",
        "mobile.calendarSourceDiary" to "日記",
        "mobile.calendarSourceFailed" to "未読込",
        "mobile.calendarSourceHolidays" to "休日・学校休暇",
        "mobile.calendarSourceMatches" to "リーグ戦",
        "mobile.calendarSourceOfficial" to "公式参加",
        "mobile.calendarSourceTournaments" to "大会",
        "mobile.calendarSourceTrainingTimes" to "練習時間",
        "mobile.calendarSubtitle" to "今月の練習・大会・試合・休日。",
        "mobile.calendarTitle" to "カレンダー",
        "mobile.calendarToday" to "今日",
        "mobile.cancel" to "Abbrechen",
        "mobile.clubRequest" to "Zugriff anfragen",
        "mobile.clubRequested" to "Angefragt",
        "mobile.createDiaryEntry" to "Eintrag erstellen",
        "mobile.deleteNote" to "Notiz löschen",
        "mobile.deleteTag" to "Tag entfernen",
        "mobile.editTimes" to "Zeiten bearbeiten",
        "mobile.emailAndPasswordRequired" to "E-Mail und Passwort sind erforderlich",
        "mobile.entry" to "Eintrag",
        "mobile.inactive" to "Inaktiv",
        "mobile.language" to "Sprache",
        "mobile.lastTraining" to "Letztes Training",
        "mobile.loginFailed" to "Login fehlgeschlagen",
        "mobile.loginInProgress" to "Anmelden...",
        "mobile.more" to "Mehr",
        "mobile.new" to "Neu",
        "mobile.newNote" to "Neue Notiz",
        "mobile.newTag" to "Neuer Tag",
        "mobile.noDiaryEntries" to "Noch keine Tagebuch-Einträge",
        "mobile.noMembers" to "Keine Mitglieder gefunden",
        "mobile.noResults" to "Keine Treffer",
        "mobile.noTimes" to "Keine Zeiten",
        "mobile.offlineCacheHint" to "ネットワークに接続されていません。最後に読み込んだデータを表示しています。",
        "mobile.participationTop" to "Top Teilnahmen",
        "mobile.refresh" to "Aktualisieren",
        "mobile.requestedAccess" to "Angefragt",
        "mobile.role" to "Rolle",
        "mobile.saveEntry" to "Speichern",
        "mobile.search" to "Suche",
        "mobile.select" to "Auswählen",
        "mobile.sessionCheck" to "Session prüfen",
        "mobile.sessionCheckFailed" to "Session check fehlgeschlagen",
        "mobile.sessionInvalid" to "Session ungültig",
        "mobile.sessionValid" to "Session gültig",
        "mobile.status" to "Status",
        "mobile.user" to "Benutzer",
        "myTischtennis.about" to "マイティッシュテニスについて",
        "myTischtennis.aboutFeatures.fetch" to "競技データを直接取得する",
        "myTischtennis.aboutFeatures.import" to "トーナメントデータを自動インポート",
        "myTischtennis.aboutFeatures.sync" to "プレーヤーの結果を同期する",
        "myTischtennis.aboutText" to "myTischtennis アカウントをリンクすると、次のことが可能になります。",
        "myTischtennis.autoUpdates" to "自動更新",
        "myTischtennis.club" to "協会 (myTischtennis)",
        "myTischtennis.deleteAccount" to "アカウントを切断する",
        "myTischtennis.disabled" to "チェックなし",
        "myTischtennis.editAccount" to "アカウントの編集",
        "myTischtennis.enabled" to "の上",
        "myTischtennis.fetchStatistics" to "データ取得統計",
        "myTischtennis.lastFetch" to "最後にフェッチされたもの:",
        "myTischtennis.lastLoginAttempt" to "前回のログイン試行",
        "myTischtennis.lastSuccessfulLogin" to "最後に成功したログイン",
        "myTischtennis.leagueTables" to "JoomSport 順位表",
        "myTischtennis.linkAccount" to "アカウントをリンクする",
        "myTischtennis.linkedAccount" to "リンクされたアカウント",
        "myTischtennis.loadingStats" to "統計の読み込み中",
        "myTischtennis.matchResults" to "イベント結果",
        "myTischtennis.neverFetched" to "決して取得されない",
        "myTischtennis.no" to "いいえ",
        "myTischtennis.noAccount" to "myTischtennis アカウントがリンクされていません。",
        "myTischtennis.passwordNote" to "注: パスワードの保存はオプションです。保存しない場合は、同期するたびにパスワードの入力を求められます。",
        "myTischtennis.passwordSaved" to "パスワードが保存されました",
        "myTischtennis.passwordsEncrypted" to "パスワードは暗号化されて保存されます。",
        "myTischtennis.playerRatings" to "プレイヤーの評価",
        "myTischtennis.refreshStats" to "統計をリロードする",
        "myTischtennis.testLogin" to "再ログイン",
        "myTischtennis.title" to "myTischtennis-Account",
        "myTischtennis.updateHistory" to "更新履歴",
        "myTischtennis.yes" to "はい",
        "myTischtennisAccount.aboutDescription" to "myTischtennis アカウントをリンクすると、次のことが可能になります。",
        "myTischtennisAccount.aboutFeature1" to "トーナメントデータを自動インポート",
        "myTischtennisAccount.aboutFeature2" to "プレーヤーの結果を同期する",
        "myTischtennisAccount.aboutFeature3" to "競技データを直接取得する",
        "myTischtennisAccount.aboutHint" to "パスワードの保存はオプションです。保存しない場合は、同期するたびにパスワードの入力を求められます。",
        "myTischtennisAccount.aboutMyTischtennis" to "マイティッシュテニスについて",
        "myTischtennisAccount.accountSaved" to "myTischtennis-アカウントが正常に保存されました",
        "myTischtennisAccount.accountUnlinked" to "myTischtennis アカウントが正常に切断されました",
        "myTischtennisAccount.autoUpdates" to "自動更新:",
        "myTischtennisAccount.club" to "協会 (myTischtennis):",
        "myTischtennisAccount.daysAgo" to "{count}日前",
        "myTischtennisAccount.disabled" to "チェックなし",
        "myTischtennisAccount.editAccount" to "アカウントの編集",
        "myTischtennisAccount.email" to "電子メール:",
        "myTischtennisAccount.enabled" to "の上",
        "myTischtennisAccount.errorLoadingAccount" to "myTischtennis アカウントの読み込みエラー",
        "myTischtennisAccount.errorLoadingStatistics" to "フェッチ統計のロード中にエラーが発生しました",
        "myTischtennisAccount.errorUnlinking" to "アカウント切断エラー",
        "myTischtennisAccount.fetchStatistics" to "データ取得統計",
        "myTischtennisAccount.hoursAgo" to "{count} 時間前",
        "myTischtennisAccount.justNow" to "ちょうど今",
        "myTischtennisAccount.lastFetch" to "最後にフェッチされたもの:",
        "myTischtennisAccount.lastLoginAttempt" to "前回のログイン試行:",
        "myTischtennisAccount.lastSuccessfulLogin" to "最後に成功したログイン:",
        "myTischtennisAccount.leagueTables" to "JoomSport 順位表",
        "myTischtennisAccount.linkAccount" to "アカウントをリンクする",
        "myTischtennisAccount.linkedAccount" to "リンクされたアカウント",
        "myTischtennisAccount.loading" to "読み込み中...",
        "myTischtennisAccount.loadingStatistics" to "統計の読み込み中",
        "myTischtennisAccount.loginAgain" to "再ログイン",
        "myTischtennisAccount.loginFailed" to "ログインに失敗しました",
        "myTischtennisAccount.loginSuccessful" to "ログイン成功しました！接続の詳細が更新されました。",
        "myTischtennisAccount.matchResults" to "イベント結果",
        "myTischtennisAccount.minutesAgo" to "{count}分前",
        "myTischtennisAccount.never" to "一度もない",
        "myTischtennisAccount.neverFetched" to "決して取得されない",
        "myTischtennisAccount.no" to "いいえ",
        "myTischtennisAccount.noAccountLinked" to "myTischtennis アカウントがリンクされていません。",
        "myTischtennisAccount.passwordRequired" to "パスワードが必要です",
        "myTischtennisAccount.passwordSaved" to "パスワードが保存されました",
        "myTischtennisAccount.playerRatings" to "プレイヤーの評価",
        "myTischtennisAccount.playersUpdated" to "プレーヤーが更新されました",
        "myTischtennisAccount.refreshStatistics" to "統計をリロードする",
        "myTischtennisAccount.results" to "結果",
        "myTischtennisAccount.teams" to "Teams",
        "myTischtennisAccount.title" to "myTischtennis アカウント",
        "myTischtennisAccount.unlinkAccount" to "アカウントを切断する",
        "myTischtennisAccount.unlinkAccountConfirm" to "myTischtennis アカウントのリンクを解除してもよろしいですか?",
        "myTischtennisAccount.unlinkAccountTitle" to "アカウントを切断する",
        "myTischtennisAccount.updateHistory" to "更新履歴",
        "myTischtennisAccount.yes" to "はい",
        "myTischtennisAccount.yesterday" to "昨日",
        "myTischtennisDialog.appPassword" to "確認用のアプリパスワード",
        "myTischtennisDialog.appPasswordHint" to "セキュリティ上の理由から、myTischtennis パスワードを保存するにはアプリのパスワードが必要です。",
        "myTischtennisDialog.appPasswordPlaceholder" to "このアプリのパスワード",
        "myTischtennisDialog.autoUpdateRatings" to "自動更新評価を有効にする",
        "myTischtennisDialog.autoUpdateRatingsHint" to "myTischtennis からの最新の評価は、毎日午前 6 時に自動的に取得されます。保存されたパスワードが必要です。",
        "myTischtennisDialog.autoUpdateWarning" to "自動更新するには、myTischtennis パスワードを保存する必要があります。",
        "myTischtennisDialog.cancel" to "キャンセル",
        "myTischtennisDialog.editAccount" to "myTischtennis アカウントを編集する",
        "myTischtennisDialog.email" to "myTischtennis-メール",
        "myTischtennisDialog.emailPlaceholder" to "myTischtennis のメール アドレス",
        "myTischtennisDialog.errorLogin" to "ログインエラー。",
        "myTischtennisDialog.errorSaving" to "アカウントの保存中にエラーが発生しました",
        "myTischtennisDialog.linkAccount" to "myTischtennis アカウントをリンクする",
        "myTischtennisDialog.loadingLoginForm" to "ログインフォームを読み込んでいます...",
        "myTischtennisDialog.loggingIn" to "ログイン...",
        "myTischtennisDialog.login" to "ログイン",
        "myTischtennisDialog.password" to "myTischtennis-パスワード",
        "myTischtennisDialog.passwordPlaceholder" to "myTischtennis のパスワード",
        "myTischtennisDialog.passwordPlaceholderKeep" to "空白のままにしておきます",
        "myTischtennisDialog.save" to "保存",
        "myTischtennisDialog.savePassword" to "私の卓球のパスワードを保存",
        "myTischtennisDialog.savePasswordHint" to "有効にすると、myTischtennis パスワードが暗号化されて保存され、自動同期が可能になります。",
        "myTischtennisDialog.saving" to "保存中...",
        "myTischtennisHistory.close" to "近い",
        "myTischtennisHistory.failed" to "それはうまくいきませんでした。",
        "myTischtennisHistory.loading" to "履歴を読み込んでいます...",
        "myTischtennisHistory.noHistory" to "自動更新はまだ実行されていません。",
        "myTischtennisHistory.ratingsUpdated" to "評価が更新されました",
        "myTischtennisHistory.successful" to "成功",
        "myTischtennisHistory.title" to "評価履歴の更新",
        "navigation.approvals" to "承認",
        "navigation.backToHome" to "ホームへ戻る",
        "navigation.billing" to "請求",
        "navigation.clickTtAccount" to "HTTV / click-TT アカウント",
        "navigation.clickTtBrowser" to "HTTV / click-TT",
        "navigation.clubSettings" to "クラブ設定",
        "navigation.clubTournaments" to "クラブ大会",
        "navigation.competitions" to "競技",
        "navigation.dailyBusiness" to "日常業務",
        "navigation.diary" to "日記",
        "navigation.home" to "ホーム",
        "navigation.login" to "ログイン",
        "navigation.logout" to "ログアウト",
        "navigation.logs" to "システムログ",
        "navigation.members" to "メンバー",
        "navigation.memberTransfer" to "メンバー転送",
        "navigation.myTischtennisAccount" to "myTischtennisアカウント",
        "navigation.orders" to "注文",
        "navigation.permissions" to "権限",
        "navigation.personalSettings" to "個人設定",
        "navigation.predefinedActivities" to "事前定義された活動",
        "navigation.register" to "登録",
        "navigation.schedule" to "スケジュール",
        "navigation.settings" to "設定",
        "navigation.statistics" to "トレーニング統計",
        "navigation.teamManagement" to "チーム管理",
        "navigation.tournamentParticipations" to "大会参加",
        "navigation.tournaments" to "トーナメント",
        "nuscoreAnalyzer.analysisComplete" to "✅ 分析が完了しました: {count} リソースが見つかりました",
        "nuscoreAnalyzer.analyze" to "🔍 ヌスコア分析",
        "nuscoreAnalyzer.analyzing" to "分析中...",
        "nuscoreAnalyzer.createLocalCopy" to "🏗️ ローカルコピーを作成",
        "nuscoreAnalyzer.creating" to "🏗️ 作成中...",
        "nuscoreAnalyzer.description" to "ローカルで使用するために nuscore リソースを分析してダウンロードします",
        "nuscoreAnalyzer.downloading" to "⬇️ ダウンロード中...",
        "nuscoreAnalyzer.downloadResources" to "リソースをダウンロードする",
        "nuscoreAnalyzer.foundResources" to "📋 見つかったリソース:",
        "nuscoreAnalyzer.log" to "ログ",
        "nuscoreAnalyzer.pageLoaded" to "✅ nuscore ページがロードされました",
        "nuscoreAnalyzer.startAnalysis" to "🔍 nuscore 分析を開始しています...",
        "nuscoreAnalyzer.title" to "🔍 nuscore Analyzer",
        "officialTournaments.action" to "アクション",
        "officialTournaments.age" to "年",
        "officialTournaments.ageClassCompetition" to "年齢層/競技",
        "officialTournaments.ageClasses" to "年齢層",
        "officialTournaments.all" to "全て",
        "officialTournaments.birthDate" to "生年月日",
        "officialTournaments.checkBoxToActivate" to "チェックボックスを有効にする",
        "officialTournaments.competition" to "競合他社",
        "officialTournaments.competitions" to "競技会",
        "officialTournaments.competitionTypes" to "コンテストの種類:",
        "officialTournaments.cutoffDate" to "発効日:",
        "officialTournaments.date" to "日付",
        "officialTournaments.dateTime" to "日付：",
        "officialTournaments.deadlineDate" to "登録締め切り日（日付）：",
        "officialTournaments.deadlineOnline" to "登録締め切り（オンライン）：",
        "officialTournaments.deadlines" to "登録期限:",
        "officialTournaments.deadlinesByAgeClass" to "各 AK の登録期限:",
        "officialTournaments.delete" to "消去",
        "officialTournaments.editTitle" to "タイトルの編集",
        "officialTournaments.eligible" to "参加資格あり",
        "officialTournaments.entryFee" to "開始資金",
        "officialTournaments.entryFees" to "参加費：",
        "officialTournaments.events" to "出来事",
        "officialTournaments.finalRound" to "決勝戦",
        "officialTournaments.hasPlayed" to "{0} が順番をプレイしました。",
        "officialTournaments.last12Months" to "過去 12 か月",
        "officialTournaments.last2Years" to "過去 2 年間",
        "officialTournaments.last3Months" to "過去 3 か月",
        "officialTournaments.last6Months" to "過去6ヶ月",
        "officialTournaments.markAsParticipated" to "出席済みとしてマークする",
        "officialTournaments.markAsRegistered" to "ログイン済みとしてマークする",
        "officialTournaments.member" to "メンバー",
        "officialTournaments.name" to "名前",
        "officialTournaments.noEvents" to "まだ利用可能なイベントはありません。まずは PDF をアップロードしてください。",
        "officialTournaments.notInterested" to "興味がない",
        "officialTournaments.openTo" to "オープン",
        "officialTournaments.participants" to "参加者",
        "officialTournaments.participantsPdf" to "参加者用PDF",
        "officialTournaments.participated" to "参加しました",
        "officialTournaments.participations" to "トーナメントへの参加",
        "officialTournaments.pdfForSelectedMembers" to "フラグを立てたメンバー向けの PDF",
        "officialTournaments.placement" to "配置",
        "officialTournaments.preliminaryRound" to "第1段階：",
        "officialTournaments.previousSeason" to "前のシーズン",
        "officialTournaments.registered" to "ログイン済み",
        "officialTournaments.resetStatus" to "ステータスをリセット",
        "officialTournaments.results" to "結果",
        "officialTournaments.savedEvents" to "保存されたイベント",
        "officialTournaments.selectMembers" to "メンバーの選択",
        "officialTournaments.showCompetitions" to "コンテストを見る",
        "officialTournaments.showEvents" to "保存されたイベントを表示する",
        "officialTournaments.showParticipants" to "参加者を表示",
        "officialTournaments.showParticipations" to "トーナメントシェアを見る",
        "officialTournaments.showResults" to "結果を見る",
        "officialTournaments.startTime" to "開始時間",
        "officialTournaments.startTimes" to "開始時間:",
        "officialTournaments.status" to "状態",
        "officialTournaments.timeRange" to "期間：",
        "officialTournaments.title" to "タイトル：",
        "officialTournaments.tournament" to "トーナメント",
        "officialTournaments.updatePlacementError" to "プレースメントの更新中にエラーが発生しました",
        "officialTournaments.updateStatusError" to "状態の更新に失敗しました",
        "officialTournaments.updateTitleError" to "これは保存できませんでした。",
        "officialTournaments.uploadError" to "PDF のアップロードでエラーが発生しました。",
        "officialTournaments.uploadPdf" to "PDFをアップロードする",
        "officialTournaments.venues" to "会場",
        "officialTournaments.wantsToParticipate" to "参加したい",
        "orders.addOrder" to "注文を追加",
        "orders.budget" to "予算",
        "orders.club" to "クラブ",
        "orders.cost" to "費用",
        "orders.dateAutoHint" to "日付は自動設定され、すべての変更が日付付きで記録されます。",
        "orders.errorLoading" to "注文を読み込めませんでした。",
        "orders.errorSaving" to "注文を保存できませんでした。",
        "orders.filterAllClubs" to "すべてのクラブ",
        "orders.filterAllCompletionStates" to "すべての学位",
        "orders.filterAllStatuses" to "すべての状態",
        "orders.filterHandedOver" to "渡されたアイテム",
        "orders.filterPaid" to "有料",
        "orders.globalSubtitle" to "ここではクラブ横断で全ての注文を表示・管理できます。",
        "orders.globalTitle" to "全クラブの注文",
        "orders.history" to "履歴",
        "orders.item" to "商品",
        "orders.itemPlaceholder" to "例: シャツ、パーカー、ラケットケース",
        "orders.loading" to "注文を読み込み中...",
        "orders.member" to "メンバー",
        "orders.memberTitle" to "注文: {name}",
        "orders.noOrdersGlobal" to "現在注文はありません。",
        "orders.noOrdersMember" to "このメンバーにはまだ注文がありません。",
        "orders.open" to "未払い",
        "orders.orderDate" to "登録日",
        "orders.paid" to "支払済み",
        "orders.paidConfirmed" to "有料",
        "orders.searchPlaceholder" to "クラブ、メンバー、または商品で検索",
        "orders.showCompleted" to "完成したものを表示",
        "orders.status" to "状態",
        "orders.statusArrived" to "商品到着",
        "orders.statusDate" to "最終変更",
        "orders.statusHandedOver" to "商品引き渡し済み",
        "orders.statusOrdered" to "注文済み",
        "orders.statusRequested" to "希望",
        "orders.title" to "注文",
        "pdfGenerator.activityTimeBlock" to "アクティビティ/タイムブロック",
        "pdfGenerator.allGames" to "すべての都市",
        "pdfGenerator.alsoPlayable" to "プレイも可能",
        "pdfGenerator.birthDate" to "生年月日",
        "pdfGenerator.clubLabel" to "クラブ:",
        "pdfGenerator.competition" to "イベント",
        "pdfGenerator.competitionName" to "競合他社",
        "pdfGenerator.date" to "日付：",
        "pdfGenerator.diff" to "Diff",
        "pdfGenerator.duration" to "ロックアウトまでの時間 (分)",
        "pdfGenerator.fee" to "手数料",
        "pdfGenerator.generatedAt" to "作成日時:",
        "pdfGenerator.group" to "グループ",
        "pdfGenerator.groupLabel" to "グループ",
        "pdfGenerator.groupMatrices" to "グループ行列",
        "pdfGenerator.hallShoes" to "上履き（床でこすれないもの）",
        "pdfGenerator.hints" to "注:",
        "pdfGenerator.informTrainer" to "クラブが登録を引き継ぎたいため、少なくとも大会の1週間前までにコーチに参加の旨を伝えてください。",
        "pdfGenerator.leagueLabel" to "リーグ:",
        "pdfGenerator.lineupQttr" to "(Q)TTR",
        "pdfGenerator.member" to "メンバー:",
        "pdfGenerator.nameFirstName" to "姓、名",
        "pdfGenerator.noActivities" to "このトレーニング日のアクティビティは記録されませんでした。",
        "pdfGenerator.noWhiteJersey" to "白いジャージはありません",
        "pdfGenerator.officialTournament" to "公式大会",
        "pdfGenerator.oneHourBefore" to "競技開始の1時間前には会場に到着してください",
        "pdfGenerator.overallRanking" to "総合順位（ノックアウトラウンド）",
        "pdfGenerator.periodLabel" to "登録対象:",
        "pdfGenerator.phoneList" to "電話リスト - アクティブなメンバー",
        "pdfGenerator.phoneNumber" to "電話番号",
        "pdfGenerator.place" to "広場",
        "pdfGenerator.placement" to "配置",
        "pdfGenerator.plannedLeagueLabel" to "予定リーグ:",
        "pdfGenerator.player" to "スケーター",
        "pdfGenerator.player1" to "プレイヤー 1",
        "pdfGenerator.player2" to "4分半",
        "pdfGenerator.points" to "ポイント",
        "pdfGenerator.recommendations" to "推奨事項",
        "pdfGenerator.result" to "結果",
        "pdfGenerator.round" to "ラウンド",
        "pdfGenerator.seasonLabel" to "シーズン:",
        "pdfGenerator.sets" to "フレーズ",
        "pdfGenerator.sportShorts" to "スポーツショーツ（またはスポーツスカート）、できれば白ではないもの",
        "pdfGenerator.startTime" to "開始時間",
        "pdfGenerator.status" to "状態",
        "pdfGenerator.teamAgeGroupLabel" to "チーム年齢区分:",
        "pdfGenerator.teamGenderLabel" to "チーム性別:",
        "pdfGenerator.teamLineupTitle" to "チーム登録メンバー",
        "pdfGenerator.teamNameLabel" to "チーム:",
        "pdfGenerator.time" to "時間：",
        "pdfGenerator.timeBlock" to "タイムブロック",
        "pdfGenerator.tournament" to "トーナメント",
        "pdfGenerator.trainersPresent" to "コーチはすべてのトーナメントに参加するよう努めます。",
        "pdfGenerator.trainingPlan" to "トレーニング計画",
        "pdfGenerator.venue" to "位置",
        "pdfGenerator.venues" to "会場",
        "pdfGenerator.waterBottle" to "水の入ったボトルを持っていきましょう",
        "pendingApprovals.actions" to "アクション",
        "pendingApprovals.approve" to "承認する",
        "pendingApprovals.email" to "Email",
        "pendingApprovals.errorApproving" to "ユーザー承認エラー",
        "pendingApprovals.errorLoadingRequests" to "%<%E%s%E%> の保留中のロードに失敗しました",
        "pendingApprovals.errorRejecting" to "ユーザー拒否エラー",
        "pendingApprovals.firstName" to "ファーストネーム",
        "pendingApprovals.lastName" to "姓",
        "pendingApprovals.noPendingRequests" to "保留中のユーザー要求はありません。",
        "pendingApprovals.noPermission" to "許可がありません",
        "pendingApprovals.noPermissionDetails" to "管理者のみがメンバーリクエストを編集できます。",
        "pendingApprovals.noPermissionMessage" to "共有を管理する権限がありません。",
        "pendingApprovals.reject" to "却下する",
        "pendingApprovals.title" to "保留中のユーザーリクエスト",
        "permissions.actions" to "アクション",
        "permissions.active" to "アクティブ",
        "permissions.availableRoles" to "利用可能な役割",
        "permissions.baseRole" to "基本的な役割",
        "permissions.cancel" to "キャンセル",
        "permissions.clickToActivate" to "クリックしてアクティブ化します。",
        "permissions.clickToDeactivate" to "クリックして無効にします",
        "permissions.clubMembers" to "クラブ会員",
        "permissions.creator" to "クリエイター",
        "permissions.customize" to "カスタマイズ",
        "permissions.customizeInfo" to "ここで個別に調整できます。",
        "permissions.email" to "Email",
        "permissions.errorLoadingData" to "データのロード中にエラーが発生しました",
        "permissions.errorSavingPermissions" to "権限の保存中にエラーが発生しました",
        "permissions.errorUpdatingRole" to "役割の更新に失敗しました",
        "permissions.inactive" to "チェックなし",
        "permissions.loadingMembers" to "メンバーを招待中...",
        "permissions.permissionsFor" to "の権限",
        "permissions.reset" to "元に戻す",
        "permissions.resetAll" to "すべてリセット",
        "permissions.role" to "役割",
        "permissions.save" to "保存",
        "permissions.status" to "状態",
        "permissions.subtitle" to "クラブメンバーのアクセス権を管理する",
        "permissions.title" to "資格管理",
        "predefinedActivities.addImage" to "画像を追加",
        "predefinedActivities.cancel" to "キャンセル",
        "predefinedActivities.code" to "略語",
        "predefinedActivities.createDrawing" to "演習図面の作成",
        "predefinedActivities.deduplicate" to "重複をマージする",
        "predefinedActivities.delete" to "消去",
        "predefinedActivities.description" to "説明",
        "predefinedActivities.duration" to "継続時間分",
        "predefinedActivities.durationText" to "期間（テキスト）",
        "predefinedActivities.durationTextPlaceholder" to "例えば2×7",
        "predefinedActivities.editActivity" to "アクティビティの編集",
        "predefinedActivities.editDrawing" to "演習図面の編集",
        "predefinedActivities.excludeFromStats" to "統計から除外する",
        "predefinedActivities.filterAll" to "全て",
        "predefinedActivities.filterCustom" to "カスタム",
        "predefinedActivities.filterStandard" to "標準アクティビティ",
        "predefinedActivities.imageHelp" to "画像へのリンクを入力するか、画像をアップロードできます。",
        "predefinedActivities.imageLink" to "画像リンク（オプション）",
        "predefinedActivities.imageLinkPlaceholder" to "例えばhttps://example.com/bild.jpg または /api/predependent-activities/:id/image/:imageId",
        "predefinedActivities.merge" to "マージ",
        "predefinedActivities.min" to "min",
        "predefinedActivities.name" to "名前",
        "predefinedActivities.new" to "新しい",
        "predefinedActivities.newActivity" to "新しいアクティビティ",
        "predefinedActivities.orUploadImage" to "または画像をアップロードします:",
        "predefinedActivities.reload" to "リロード",
        "predefinedActivities.searchPlaceholder" to "略語を検索します (例: 「as vh us」または「vh as us」)...",
        "predefinedActivities.selectSource" to "ソースを選択してください",
        "predefinedActivities.selectTarget" to "目的地を選択",
        "predefinedActivities.title" to "事前定義されたアクティビティ",
        "predefinedActivities.upload" to "アップロード",
        "predefinedActivities.uploadAfterSave" to "保存後にアップロードする",
        "predefinedActivities.uploadedImages" to "アップロードされたビデオ:",
        "predefinedActivities.uploadNote" to "注: アクティビティが保存されるまで、画像はアップロードされません。",
        "privacy.clubData" to "クラブ/活動データ",
        "privacy.consent" to "同意に基づく操作",
        "privacy.cookies" to "Cookie/ローカルストレージ",
        "privacy.dataCategories" to "個人データのカテゴリー",
        "privacy.logData" to "ログファイル",
        "privacy.memberData" to "会員詳細",
        "privacy.myTischtennisData" to "MyTischtennis データ",
        "privacy.purposes" to "処理の目的と法的根拠",
        "privacy.recipients" to "受信者",
        "privacy.registrationData" to "登録/プロフィールデータ",
        "privacy.responsible" to "データ管理者",
        "privacy.title" to "プライバシーポリシー",
        "privacy.tournamentData" to "大会データ",
        "privacy.trainingData" to "トレーニングデータ",
        "privacy.usage" to "トレーニング日記の活用",
        "privacy.usageData" to "使用状況データ",
        "privacy.website" to "ウェブサイトの準備",
        "quickAddMember.birthDate" to "生年月日 (オプション)",
        "quickAddMember.cancel" to "キャンセル",
        "quickAddMember.createAndAdd" to "新規作成と追加",
        "quickAddMember.firstName" to "ファーストネーム",
        "quickAddMember.gender" to "セックス",
        "quickAddMember.lastName" to "姓 (オプション)",
        "quickAddMember.pleaseSelect" to "選択してください",
        "quickAddMember.title" to "新しいメンバーを追加",
        "schedule.activeSelection" to "アクティブな選択",
        "schedule.addressLabel" to "住所",
        "schedule.adultSchedule" to "大人のスケジュール",
        "schedule.ageClass" to "年齢層",
        "schedule.allLeagueMatches" to "すべての試合",
        "schedule.balls" to "ボール",
        "schedule.cancel" to "キャンセル",
        "schedule.cityLabel" to "郵便番号/都市",
        "schedule.code" to "Code",
        "schedule.completedShort" to "完了",
        "schedule.copyCode" to "コードをコピーする",
        "schedule.copyGuestPin" to "PIN をコピーしてください",
        "schedule.copyHomePin" to "ホームPINをコピーする",
        "schedule.date" to "日付",
        "schedule.downloadPDF" to "PDFをダウンロード",
        "schedule.errorCopying" to "コピー中にエラーが発生しました",
        "schedule.errorImportingCSV" to "CSVファイルのインポートに失敗しました",
        "schedule.errorLoadingAdultSchedule" to "大人向けスケジュールの読み込みに失敗しました",
        "schedule.errorLoadingGallery" to "ギャラリーを読み込めませんでした。",
        "schedule.errorLoadingMatches" to "一致のロードに失敗しました",
        "schedule.errorLoadingMembers" to "メンバーリストの読み込みに失敗しました。",
        "schedule.errorLoadingOverallSchedule" to "全体スケジュールの読み込みに失敗しました",
        "schedule.errorLoadingTable" to "myTischtennis からのリーグ表データのロードに失敗しました",
        "schedule.errorLoadingTeams" to "チームのロードに失敗しました",
        "schedule.errorSavingPlayerSelection" to "プレーヤーの選択を保存できませんでした",
        "schedule.fetchDataFailed" to "チームデータを取得できませんでした。",
        "schedule.fetchingTeamData" to "取得中…",
        "schedule.fetchStartFailed" to "フェッチを開始できませんでした。",
        "schedule.fetchTeamData" to "スケジュールと結果を取得する",
        "schedule.fetchTimedOut" to "データの取得中にタイムアウトになりました。",
        "schedule.gallery" to "メンバーギャラリー",
        "schedule.galleryLoading" to "ギャラリーを読み込み中…",
        "schedule.galleryTitle" to "メンバー ギャラリー - 画像をクリックして準備完了としてマークします",
        "schedule.gamesFor" to "に一致",
        "schedule.guestPin" to "アウェイPIN",
        "schedule.guestTeam" to "アウェイチーム",
        "schedule.homePin" to "ホームPIN",
        "schedule.homeTeam" to "ホームチーム",
        "schedule.imageSize" to "画像サイズ",
        "schedule.importSchedule" to "輸入スケジュール",
        "schedule.leagueTable" to "順位表",
        "schedule.loadingMembers" to "メンバーを読み込んでいます...",
        "schedule.locationDialogTitle" to "ゲームルーム",
        "schedule.locationInfo" to "位置",
        "schedule.locationName" to "ゲームルーム",
        "schedule.matches" to "マッチ",
        "schedule.matchLabel" to "ゲーム",
        "schedule.matchOverviewDescription" to "現在選択されているリーグのどの試合がスケジュールに表示されるかをコントロールします。",
        "schedule.matchOverviewTitle" to "試合概要",
        "schedule.nextMatch" to "次の試合",
        "schedule.noActiveMembers" to "アクティブなメンバーが見つかりません",
        "schedule.noGames" to "利用可能な一致はありません",
        "schedule.noLeagueForTeam" to "このチームにはリーグが割り当てられていません。最初にリーグを割り当ててください。",
        "schedule.noMatchesForPDF" to "PDF を生成するために一致するものが見つかりませんでした。",
        "schedule.noMatchingTeams" to "現在の検索に一致するチームはありません。",
        "schedule.noMembersWithImages" to "画像のあるメンバーは見つかりませんでした。",
        "schedule.noSelectionMessage" to "左から全体スケジュール、大人スケジュール、チームを選択してください。",
        "schedule.noSelectionTitle" to "まだアクティブな選択がありません",
        "schedule.noTableData" to "利用可能なテーブルデータがありません",
        "schedule.noTeamsFound" to "今シーズンのチームは見つかりませんでした",
        "schedule.openMatchReport" to "オープンマッチレポート",
        "schedule.otherTeamMatches" to "他のチーム",
        "schedule.overallSchedule" to "全体スケジュール",
        "schedule.ownTeamMatches" to "自分のチーム",
        "schedule.pendingShort" to "開ける",
        "schedule.planned" to "計画済み",
        "schedule.played" to "遊んだ",
        "schedule.player" to "プレーヤー",
        "schedule.playerSelection" to "選手の選択",
        "schedule.playerSelectionSaved" to "プレイヤーの選択が保存されました",
        "schedule.pleaseSelectGame" to "最初に一致するものを選択してください",
        "schedule.points" to "ポイント",
        "schedule.position" to "位置",
        "schedule.ready" to "準備ができて",
        "schedule.refreshTable" to "テーブルを更新する",
        "schedule.result" to "結果",
        "schedule.save" to "保存",
        "schedule.scheduleImportSuccess" to "スケジュールが正常にインポートされました。",
        "schedule.schedulePDF" to "スケジュール.pdf",
        "schedule.scheduleTab" to "スケジュール",
        "schedule.searchTeams" to "チームまたはリーグを検索する",
        "schedule.selection" to "選択",
        "schedule.selectOtherTeam" to "他のチームを選択してください",
        "schedule.selectSpecificLeague" to "テーブルをロードするには、特定のリーグを選択してください。",
        "schedule.sets" to "セット",
        "schedule.showLocation" to "試合会場を見る",
        "schedule.subtitle" to "チームを選択し、試合日程を確認し、リーグ表を常に表示します。",
        "schedule.tableDataLoaded" to "リーグ表データが myTischtennis から正常にロードされました。",
        "schedule.tableLoading" to "テーブルをロード中…",
        "schedule.tableTab" to "テーブル",
        "schedule.team" to "Team",
        "schedule.teamDataFetched" to "チームデータが正常に更新されました。",
        "schedule.teamDataFetchedDetails" to "チーム: {team}\n処理されたレコード: {count}",
        "schedule.teams" to "Teams",
        "schedule.time" to "時間",
        "schedule.title" to "スケジュール",
        "schedule.vs" to "vs",
        "schedule.workspaceScheduleDescription" to "{matches} は一致し、{completed} は完了し、{pending} はオープンします。",
        "schedule.workspaceTableDescription" to "現在ロードされている {count} テーブル行。",
        "seasonSelector.addSeason" to "新しいシーズンを追加",
        "seasonSelector.alreadyExists" to "この季節はすでに存在しています！",
        "seasonSelector.cancel" to "キャンセル",
        "seasonSelector.create" to "作成する",
        "seasonSelector.errorCreating" to "シーズン作成中にエラーが発生しました",
        "seasonSelector.errorLoading" to "シーズンの読み込みエラー",
        "seasonSelector.hint" to "知らせ",
        "seasonSelector.label" to "季節：",
        "seasonSelector.loading" to "読み込み中...",
        "seasonSelector.newSeason" to "新しいシーズンを作成する",
        "seasonSelector.placeholder" to "例えば2023/2024",
        "seasonSelector.selectSeason" to "季節を選択してください",
        "settings.language" to "言語",
        "settings.languageChanged" to "言語が正常に変更されました",
        "settings.languageDescription" to "アプリケーションの優先言語を選択してください",
        "settings.personalSettings" to "個人設定",
        "settings.selectLanguage" to "言語を選択",
        "settings.title" to "設定",
        "tagHistory.noHistory" to "利用可能なタグ履歴はありません",
        "tagHistory.selectTags" to "タグの選択",
        "tagHistory.title" to "タグ: タイプパッド",
        "teamManagement.activeTeam" to "アクティブなチーム",
        "teamManagement.addPlanningTeam" to "企画チームを追加",
        "teamManagement.allMembersAssigned" to "現在、メンバー全員が割り当てられています。",
        "teamManagement.assignLeagueBeforeDocuments" to "書類を処理できるように、最初にチームにリーグを割り当ててください。",
        "teamManagement.assignLeagueBeforeParsing" to "PDF ファイルを解析するには、最初にチームにリーグを割り当ててください。",
        "teamManagement.assignMemberToTeam" to "チームに追加",
        "teamManagement.association" to "協会",
        "teamManagement.asyncJobStartFailed" to "非同期ジョブを開始できませんでした。",
        "teamManagement.autoFetchEnabled" to "自動データ取得が有効になっています",
        "teamManagement.automaticJobs" to "自動ジョブ",
        "teamManagement.autoSaved" to "自動保存",
        "teamManagement.autoSaveError" to "自動保存に失敗しました",
        "teamManagement.availableLineupMembers" to "利用可能な選手",
        "teamManagement.basicSettings" to "基本設定",
        "teamManagement.basicSettingsIntro" to "チーム名とリーグを見直し、より落ち着いた形に調整します。",
        "teamManagement.change" to "変化",
        "teamManagement.clearFields" to "フィールドをクリアする",
        "teamManagement.codeList" to "コードリスト",
        "teamManagement.configurationStatus" to "構成ステータス",
        "teamManagement.configureLeagueDetails" to "協会: {association}\nシーズン: {season}\nリーグ: {league}\nグループID: {groupId}\n\nこのリーグをデータベースに設定しますか?これにより、テーブル データの自動取得が可能になります。",
        "teamManagement.configureLeagueTitle" to "リーグを設定しますか?",
        "teamManagement.createAndEdit" to "作成と編集",
        "teamManagement.created" to "作成されました",
        "teamManagement.createNewTeam" to "新しいチームを作成する",
        "teamManagement.dataFetchFailed" to "データを取得できませんでした。",
        "teamManagement.delete" to "消去",
        "teamManagement.deleteTeamConfirm" to "本当にクラブチーム「{name}」を削除してもよろしいですか?",
        "teamManagement.deleteTeamTitle" to "クラブチームを削除する",
        "teamManagement.documentAvailable" to "利用可能",
        "teamManagement.documentMissing" to "ない",
        "teamManagement.documentNotFound" to "選択したドキュメントが見つかりませんでした。",
        "teamManagement.documentParsedSummary" to "{label} はアップロードされ、正常に解析されました。\n\n一致するものが見つかりました: {matchesFound}\n新しい一致が作成されました: {created}\n更新された試合: {updated}",
        "teamManagement.documents" to "書類",
        "teamManagement.documentsIntro" to "必要に応じて、コード リストと PIN リストをアップロード、確認、再解析します。",
        "teamManagement.documentUploaded" to "{label}「{fileName}」は正常にアップロードされました。",
        "teamManagement.edit" to "編集",
        "teamManagement.editTeam" to "チームを編集する",
        "teamManagement.eligibility" to "出場資格",
        "teamManagement.eligibilityAdultRelease" to "一般出場許可",
        "teamManagement.eligibilityAdultReleaseAndReserve" to "一般出場許可 + 補欠",
        "teamManagement.eligibilityAdultReserve" to "一般の補欠",
        "teamManagement.eligibilityRegular" to "通常",
        "teamManagement.enterUrlForAutoConfig" to "自動構成用に myTischtennis URL を入力してください",
        "teamManagement.error" to "エラー",
        "teamManagement.errorConfiguringLeague" to "リーグを設定できませんでした。",
        "teamManagement.errorConfiguringTeam" to "チームを構成できませんでした。",
        "teamManagement.errorDeletingTeam" to "クラブチームの削除に失敗しました。",
        "teamManagement.errorLoadingPdf" to "PDFの読み込みに失敗しました。",
        "teamManagement.errorLoadingStats" to "統計を読み込めませんでした。",
        "teamManagement.errorParsingPdf" to "PDF ファイルの解析に失敗しました",
        "teamManagement.errorParsingUrl" to "URL を解析できませんでした。フォーマットを確認してください。",
        "teamManagement.errorsCount" to "エラー: {count}",
        "teamManagement.errorUploadingDocument" to "ファイルのアップロードと解析に失敗しました。",
        "teamManagement.exportLineupPdf" to "メンバー表をPDFで出力",
        "teamManagement.fetched" to "取ってきた",
        "teamManagement.fetchTimedOut" to "データの取得中にタイムアウトしました (非同期ジョブに時間がかかりすぎました)。",
        "teamManagement.fetchTimeoutShort" to "データの取得中にタイムアウトになりました。",
        "teamManagement.fileTooLarge" to "{label} は 10 MB を超えてはなりません。",
        "teamManagement.fileTooLargeTitle" to "ファイルが大きすぎます",
        "teamManagement.filterAll" to "全て",
        "teamManagement.filterConfigured" to "設定済み",
        "teamManagement.filterNeedsAttention" to "見直しが必要",
        "teamManagement.filterNoLeague" to "リーグなし",
        "teamManagement.firstHalf" to "前期",
        "teamManagement.firstHalfFull" to "前期（7月 - 12月）",
        "teamManagement.fullyConfigured" to "完全に設定済み",
        "teamManagement.groupId" to "グループID",
        "teamManagement.groupName" to "グループ名",
        "teamManagement.invalidFileExtension" to "{label} には、{extensions} のいずれかの拡張子が必要です。",
        "teamManagement.invalidFileTypeTitle" to "無効なファイルタイプです",
        "teamManagement.invalidMimeType" to "{label} には予期しない MIME タイプがあります: {type}。",
        "teamManagement.lastRun" to "最後の実行",
        "teamManagement.lastUpdated" to "最終更新日",
        "teamManagement.latestUpload" to "最終アップロード日: {date}",
        "teamManagement.league" to "リーグ",
        "teamManagement.leagueConfiguredDetails" to "リーグ: {league}\nシーズン: {season}\n協会: {association}\nグループID: {groupId}\n\nテーブルデータを自動的に取得できるようになりました。",
        "teamManagement.leagueConfiguredSuccess" to "リーグが正常に設定されました。テーブルデータを自動的に取得できるようになりました。",
        "teamManagement.leagueFieldRequired" to "リーグを選択して保存してください。",
        "teamManagement.lineupEmpty" to "このチームにはまだ選手が登録されていません。",
        "teamManagement.lineupPdfEmpty" to "登録プレイヤーがいないためPDFを作成できません。",
        "teamManagement.lineupPdfFilePrefix" to "メンバー表",
        "teamManagement.lineupProposal" to "QTTRによるチーム登録",
        "teamManagement.lineupSaved" to "チームラインナップが保存されました。",
        "teamManagement.lineupSaveError" to "チーム登録を保存できませんでした。",
        "teamManagement.lineupUnsavedChanges" to "チームラインナップに保存されていない変更があります。",
        "teamManagement.lineupValidationTooLargeGap" to "{higher} は {lower} より 30 QTTR ポイント以上高いです。この順序を修正してください。",
        "teamManagement.loadingStats" to "統計を読み込んでいます...",
        "teamManagement.manualFetch" to "フェッチ",
        "teamManagement.markAsInterested" to "興味があるとしてマーク",
        "teamManagement.matchesSummary" to "一致するものが見つかりました: {matchesFound}\n新しい一致が作成されました: {created}\n更新された試合: {updated}",
        "teamManagement.matchResults" to "試合結果",
        "teamManagement.missingConfigSummary" to "不足している情報：",
        "teamManagement.missingItems" to "欠落: {items}",
        "teamManagement.missingLeagueForTeam" to "選択したチームにはリーグが提供されませんでした。",
        "teamManagement.moreErrors" to "...そして {count} 詳細",
        "teamManagement.myTischtennis" to "私のティッシュテニス",
        "teamManagement.myTischtennisIntro" to "URL を貼り付け、構成を確認し、必要に応じてデータを手動で取得します。",
        "teamManagement.mytischtennisLoginRequired" to "myTischtennisへのログインが必要です",
        "teamManagement.myTischtennisUrlPlaceholder" to "myTischtennis URL...",
        "teamManagement.myTischtennisUrlRequired" to "MyTischtennis の URL を貼り付けて解析し、チーム ID とリーグデータを関連付けます。",
        "teamManagement.never" to "一度もない",
        "teamManagement.newTeam" to "新しいチーム",
        "teamManagement.noAssignment" to "割り当てなし",
        "teamManagement.noAutomaticUpdate" to "まだ自動更新はありません",
        "teamManagement.noDocumentUploadYet" to "まだドキュメントがアップロードされていません。",
        "teamManagement.noIssues" to "未解決の構成の問題はありません。",
        "teamManagement.noLeague" to "リーグなし",
        "teamManagement.noMatchesFoundDetails" to "注: 一致は検出されませんでした。\nドキュメント内の行: {lines}",
        "teamManagement.noMatchesFoundTitle" to "一致するものが見つかりませんでした",
        "teamManagement.noMatchingTeams" to "現在の検索またはフィルターに一致するチームはありません。",
        "teamManagement.noMembersInPool" to "一致するメンバーが見つかりませんでした。",
        "teamManagement.noPlannedLeague" to "予定されているリーグはありません",
        "teamManagement.noPlayerStats" to "出演は記録されていない。",
        "teamManagement.notConfigured" to "未設定",
        "teamManagement.notCreated" to "作成されていません",
        "teamManagement.noTeamsYet" to "まだチームはありません。最初のチームを作成します。",
        "teamManagement.openDocument" to "開ける",
        "teamManagement.openInWorkspace" to "開いて編集する",
        "teamManagement.parseDocument" to "再度解析します",
        "teamManagement.parseUrlAction" to "URLを確認する",
        "teamManagement.partiallyConfigured" to "部分的に構成されています",
        "teamManagement.pdfFileNotFound" to "PDF ファイルが見つかりませんでした。",
        "teamManagement.pinList" to "PINリスト",
        "teamManagement.plannedLeague" to "予定リーグ",
        "teamManagement.plannedLeagueHint" to "任意。登録済みリーグ（MyTischtennis）とは別です。",
        "teamManagement.plannedLeaguePlaceholder" to "例：地区リーグ、次回登録後 …",
        "teamManagement.planningSubtitle" to "スケジュールされたチームにメンバーを割り当て、順序を設定し、未解決の割り当てを確認します。",
        "teamManagement.planningTitle" to "チーム計画",
        "teamManagement.player" to "プレーヤー",
        "teamManagement.playersPoolSubtitle" to "ゲームに興味のあるアクティブなメンバー全員",
        "teamManagement.playerStats" to "出演",
        "teamManagement.playerStatsIntro" to "今シーズンのこのチームの出場試合の概要。",
        "teamManagement.playersWantToPlay" to "遊びたいです。",
        "teamManagement.qttr" to "(Q)TTR評価",
        "teamManagement.ratingUpdates" to "評価の更新",
        "teamManagement.refreshStats" to "リフレッシュ",
        "teamManagement.reuploadFile" to "ファイルを再度アップロードして、もう一度お試しください。",
        "teamManagement.searchMembers" to "メンバーを検索",
        "teamManagement.searchTeams" to "捜索チーム",
        "teamManagement.season" to "季節",
        "teamManagement.seasonFull" to "フルシーズン（7月1日から）",
        "teamManagement.seasonUnknown" to "未知",
        "teamManagement.secondHalf" to "後期",
        "teamManagement.secondHalfFull" to "後期（1月1日以降）",
        "teamManagement.selectedLineup" to "登録済み選手",
        "teamManagement.selectMember" to "メンバーを選択",
        "teamManagement.selectTeam" to "チームの選択",
        "teamManagement.selectTeamFirst" to "最初にチームを選択してください",
        "teamManagement.selectTeamForConfiguration" to "myTischtennis 構成を有効にするには、まずリストからチームを選択する必要があります。",
        "teamManagement.selectTeamTitle" to "チームを選択",
        "teamManagement.showCodeList" to "コードリストを表示",
        "teamManagement.showPinList" to "PINリストを表示",
        "teamManagement.sortFirstLast" to "並べ替え: 名 姓",
        "teamManagement.sortLastFirst" to "並べ替え: 姓 名",
        "teamManagement.status" to "状態",
        "teamManagement.subtitle" to "チームを選択し、構成を確認し、リーグ データを 1 か所で管理します。",
        "teamManagement.successful" to "成功",
        "teamManagement.tableUpdateLabel" to "テーブルの更新:",
        "teamManagement.tableUrlDetected" to "テーブル URL が検出されました",
        "teamManagement.team" to "Team",
        "teamManagement.teamAgeGroup" to "年齢層",
        "teamManagement.teamConfiguredDetails" to "リーグ: {league}\nシーズン: {season}\n自動データ取得がアクティブになりました。",
        "teamManagement.teamConfiguredSuccess" to "チームは正常に構成されました。自動データ取得がアクティブになりました。",
        "teamManagement.teamDataFetched" to "チームデータが正常に取得されました。",
        "teamManagement.teamDataFetchedDetails" to "チーム: {team}\nフェッチされたレコード: {count}",
        "teamManagement.teamGender" to "性別",
        "teamManagement.teamGenderFemale" to "女性",
        "teamManagement.teamGenderOpen" to "開ける",
        "teamManagement.teamHasNoLeague" to "このチームはリーグに割り当てられていません。",
        "teamManagement.teamId" to "チームID",
        "teamManagement.teamName" to "チーム名",
        "teamManagement.teamNamePlaceholder" to "例えば男性1、女性2",
        "teamManagement.teams" to "Teams",
        "teamManagement.title" to "チームマネジメント",
        "teamManagement.unassignedMembers" to "まだ割り当てられていない",
        "teamManagement.unassignedMembersSubtitle" to "チーム割り当てのないメンバー",
        "teamManagement.unknown" to "未知",
        "teamManagement.unknownTeam" to "不明なチーム",
        "teamManagement.updated" to "更新されました",
        "teamManagement.uploadNewVersion" to "新しいバージョンをアップロードする",
        "tournament.apply" to "変更を適用する",
        "tournaments.action" to "アクション",
        "tournaments.add" to "追加",
        "tournaments.addClass" to "クラスの追加",
        "tournaments.addClubMember" to "クラブメンバーを追加",
        "tournaments.addExternalParticipant" to "外部参加者の追加",
        "tournaments.addPairing" to "ペアリングの追加",
        "tournaments.addPoolRule" to "プールルールを追加",
        "tournaments.address" to "住所",
        "tournaments.adjustTournamentSearch" to "検索用語を調整するか、新しいトーナメントを作成してください。",
        "tournaments.advancersPerGroup" to "グループごとのプロモーター",
        "tournaments.allClasses" to "全クラス",
        "tournaments.allDataComplete" to "すべての参加者データが揃っています。",
        "tournaments.allDataCompleteTop3" to "上位3名のデータはすべて揃っています。",
        "tournaments.apply" to "変更を適用する",
        "tournaments.assignmentReviewTitle" to "{count} 参加者には選択肢が必要です:",
        "tournaments.atLeastOnePoolRule" to "{label} に対して少なくとも1つのプールルールを追加してください（例: 1,2位）。",
        "tournaments.autoAssignableParticipantsHint" to "そのうちの {count} は自動的に割り当てることができます。",
        "tournaments.autoAssignEligible" to "自動的に割り当てる",
        "tournaments.autoAssignEligibleDone" to "{count} 参加者は自動的に割り当てられました。",
        "tournaments.autoAssignEligibleNone" to "現在、単一の自動クラス割り当てを持つ参加者はいません。",
        "tournaments.autoAssignEligiblePartial" to "{successCount} 参加者は自動的に割り当てられましたが、{errorCount} は失敗しました。",
        "tournaments.birthdate" to "生年月日",
        "tournaments.cancel" to "キャンセル",
        "tournaments.class" to "クラス",
        "tournaments.classes" to "クラス",
        "tournaments.className" to "クラス名",
        "tournaments.cleanupOrphanedMatches" to "孤立したゲームをクリーンアップする",
        "tournaments.club" to "協会",
        "tournaments.clubMember" to "(クラブ会員)",
        "tournaments.conflictSuggestionLabel" to "提案:",
        "tournaments.correctMatch" to "修正",
        "tournaments.create" to "作成する",
        "tournaments.createFinalFromIntermediate" to "中間ラウンドから決勝ラウンドを作成",
        "tournaments.createFinalFromPreliminary" to "予選から決勝ラウンドを作成",
        "tournaments.createGroupMatches" to "グループマッチを作成する",
        "tournaments.createGroups" to "グループを作成できる人",
        "tournaments.createIntermediateFromPreliminary" to "予選から中間ラウンドを作成",
        "tournaments.createMatches" to "マッチを設定する",
        "tournaments.createSuggestedPairings" to "ペアリングの作成",
        "tournaments.currentClass" to "アクティブクラス",
        "tournaments.dataNotRecorded" to "未登録",
        "tournaments.date" to "日付",
        "tournaments.delete" to "消去",
        "tournaments.deleteClassConfirm" to "クラス「{name}」を本当に削除しますか？",
        "tournaments.deleteClassParticipantsDetached" to "すべての参加者がこのクラスから外されます。",
        "tournaments.deleteClassTitle" to "クラスを削除",
        "tournaments.deleteExistingPairingsConfirm" to "既存のペアリングは削除されます。続行しますか？",
        "tournaments.deleteKORound" to "ノックアウト",
        "tournaments.diff" to "Diff",
        "tournaments.distributeTables" to "空き卓を割り当て",
        "tournaments.distributeTablesResult" to "卓の割り当て",
        "tournaments.doubles" to "ダブル",
        "tournaments.doublesPairingHint" to "{count} このダブルス クラスの参加者にはパートナーが必要です。",
        "tournaments.doublesTournament" to "ダブルストーナメント",
        "tournaments.doublesTournamentHint" to "既存のクラスをすべて double に切り替え、デフォルトで新しいクラスを double として作成します。",
        "tournaments.edit" to "編集",
        "tournaments.eligibleClassesHint" to "参加可能: {classes}",
        "tournaments.email" to "電子メールアドレス",
        "tournaments.encounter" to "ミーティング",
        "tournaments.enterClassName" to "クラス名を入力してください。",
        "tournaments.enterExternalParticipantName" to "少なくとも名と姓を入力してください。",
        "tournaments.enterMiniLocation" to "場所を入力してください。",
        "tournaments.errorCreatingGroups" to "グループの作成中にエラーが発生しました。",
        "tournaments.errorCreatingTournament" to "トーナメント作成中にエラーが発生しました。",
        "tournaments.errorDistributingTables" to "卓の割り当て中にエラーが発生しました。",
        "tournaments.errorGeneratingPdf" to "PDF生成エラー。",
        "tournaments.errorMergingClasses" to "クラスのマージに失敗しました。",
        "tournaments.errorMoreSeededThanUnseeded" to "ノーシードの選手よりも多くの選手が賭けられています。ランダムなペアリングは作成できません。",
        "tournaments.errorResettingKORound" to "ノックアウトラウンドをリセット中にエラーが発生しました。",
        "tournaments.errorUpdatingTournament" to "トーナメントの更新中にエラーが発生しました。",
        "tournaments.exportPDF" to "PDFをエクスポート",
        "tournaments.external" to "外部の",
        "tournaments.finalPlacements" to "最終順位",
        "tournaments.finalRound" to "決勝ラウンド",
        "tournaments.finishMatch" to "終了",
        "tournaments.firstName" to "ファーストネーム",
        "tournaments.forForwarding" to "転送用",
        "tournaments.gaveUp" to "配置されました",
        "tournaments.gaveUpHint" to "プレーヤーが降参した – すべてのゲームは対戦相手 (11:0) または両方の 0:0 にカウントされます。",
        "tournaments.genderAll" to "全て",
        "tournaments.genderMixed" to "Mixed",
        "tournaments.generatingPDF" to "PDF作成中...",
        "tournaments.group" to "グループ",
        "tournaments.groupMatches" to "グループ対抗戦",
        "tournaments.groupNumber" to "グループ",
        "tournaments.groupPlacements" to "グループの配置",
        "tournaments.groupsLabel" to "グループ",
        "tournaments.groupsOverview" to "グループの概要",
        "tournaments.groupsPerClass" to "プール順位表",
        "tournaments.groupsPerClassHint" to "クラスごとに、グループの数を入力します (0 = このクラスにはグループなし)。",
        "tournaments.index" to "Index",
        "tournaments.intermediateRound" to "中間ラウンド（ラウンド2）",
        "tournaments.internalStatsAbsoluteRank" to "合計ランキング",
        "tournaments.internalStatsAgeFilter" to "年齢・性別（シングルス）",
        "tournaments.internalStatsAgeFilterAll" to "すべての年齢クラス",
        "tournaments.internalStatsAgeFilterNone" to "年齢クラス未選択",
        "tournaments.internalStatsAgeNoClass" to "クラス未設定",
        "tournaments.internalStatsAgeSelectAll" to "すべて",
        "tournaments.internalStatsAgeSelectNone" to "なし",
        "tournaments.internalStatsAverageRank" to "平均ランキング（大会あたり）",
        "tournaments.internalStatsAvgPoints" to "平均",
        "tournaments.internalStatsEmpty" to "選択した期間にデータがありません。",
        "tournaments.internalStatsExportPdf" to "PDFで出力",
        "tournaments.internalStatsFilterAgeBands" to "年齢層",
        "tournaments.internalStatsFilterGenderColumn" to "性別",
        "tournaments.internalStatsGenderScopeAll" to "全て",
        "tournaments.internalStatsGenderScopeGirls" to "女の子限定",
        "tournaments.internalStatsLast12Months" to "過去12か月",
        "tournaments.internalStatsLast3Months" to "過去3か月",
        "tournaments.internalStatsLast6Months" to "過去6か月",
        "tournaments.internalStatsOpenButton" to "統計を表示（シングルス）",
        "tournaments.internalStatsPeriod" to "期間",
        "tournaments.internalStatsPoints" to "合計",
        "tournaments.internalStatsPointsExplain" to "計算：各グループでは順位をパーセントで表します（順位付きN人：1位＝100%、最下位＝0%、その間は線形；同順位は同値）。Nはグループ内の順位付き全員（ゲスト含む）。1人のみの場合は100%。KO進出者はクラス内最高のグループ値＋1、KO勝利ごとに＋1。クラブ会員シングルのみ。",
        "tournaments.internalStatsTitle" to "内部大会の統計（シングルス）",
        "tournaments.internalStatsTournamentsInPeriod" to "期間内の大会 {count} 件（ミニ選手権は除く）。",
        "tournaments.internalStatsTtAdult" to "一般・シニア",
        "tournaments.internalTournaments" to "社内トーナメント",
        "tournaments.knockoutLabel" to "KO",
        "tournaments.koRound" to "ノックアウトラウンド",
        "tournaments.lastName" to "姓",
        "tournaments.livePosition" to "ライブシート",
        "tournaments.loadFromTraining" to "トレーニング当日からの負荷",
        "tournaments.markMatchLive" to "進行中としてマーク",
        "tournaments.maxGroupSize" to "最大パーティー人数",
        "tournaments.mergeClasses" to "クラスのマージ (共通グループフェーズ)",
        "tournaments.mergeDistribute" to "A のプレイヤーをすべてのグループ (B から) に分配します",
        "tournaments.mergeSingleGroup" to "グループ内の A の全プレイヤー (B)",
        "tournaments.minBirthYear" to "年以降生まれ",
        "tournaments.miniChampionshipLocation" to "位置",
        "tournaments.miniChampionships" to "ミニチャンピオンシップ",
        "tournaments.miniChampionshipYear" to "年",
        "tournaments.miniChampionshipYearHint" to "12 = 今年 12 歳または 13 歳、10 = 10 歳または 11 歳、8 = 9 歳以下",
        "tournaments.minimumParticipantsForPairings" to "ペアリングには少なくとも2人の参加者が必要です。",
        "tournaments.missingDataPDF" to "不足データをPDFで",
        "tournaments.missingDataPDFSubtitle" to "不足しているデータ（____で表示）を参加者から収集し、ここに記入してください。",
        "tournaments.missingDataPDFSubtitleTop3" to "トップ3の不足データ（____で表示）を収集し、ここに記入してください。",
        "tournaments.missingDataPDFTitle" to "参加者の不足データ – ミニ選手権",
        "tournaments.missingDataPDFTitleTop3" to "不足データ – トップ3 ミニ選手権",
        "tournaments.name" to "名前",
        "tournaments.newMiniChampionship" to "新しいミニチャンピオンシップ",
        "tournaments.setShort" to "セット",
        "tournaments.newTournament" to "新しいトーナメントを追加",
        "tournaments.noAssignableMatches" to "両選手が空いている試合がありません。",
        "tournaments.noClassesYet" to "まだ利用可能なクラスはありません。新しいクラスを追加します。",
        "tournaments.noEligibleClass" to "適切なクラスが見つかりません。",
        "tournaments.noFreeTables" to "空き卓がありません。",
        "tournaments.noMatchingTournamentsTitle" to "一致するトーナメントはありません",
        "tournaments.noOrphanedMatchesFound" to "孤立した試合は見つかりませんでした。",
        "tournaments.noPlacementsYet" to "まだ利用可能な配置はありません。",
        "tournaments.noPlayerDataAvailable" to "利用可能な選手データがありません",
        "tournaments.noPoolRulesYet12" to "まだルールがありません。例: 1位と2位 -> ラウンド2上位グループ。",
        "tournaments.noPoolRulesYetFinal" to "まだルールがありません。例: 1位と2位 -> 決勝ラウンド。",
        "tournaments.noTop3Yet" to "上位3名がまだ確定していません。",
        "tournaments.noTournamentDate" to "大会日がありません。",
        "tournaments.noTournamentsCreatedYet" to "トーナメントはまだ作成されていません。",
        "tournaments.noTrainingOnDate" to "{date} の練習セッションが見つかりませんでした。",
        "tournaments.noTrainingParticipants" to "この日付の練習セッションに参加者が見つかりませんでした。",
        "tournaments.noValidTrainingParticipants" to "この日付の練習セッションに有効な参加者が見つかりませんでした。",
        "tournaments.numberOfGroups" to "グループ数",
        "tournaments.numberOfTables" to "卓数",
        "tournaments.openTournaments" to "オープントーナメント",
        "tournaments.optional" to "optional",
        "tournaments.orphanedMatchesRemoved" to "孤立した試合を {count} 件削除しました。",
        "tournaments.outOfCompetition" to "競技外のA出身の選手",
        "tournaments.page" to "ページ",
        "tournaments.pairingAlreadyExists" to "このペアは既に存在します。",
        "tournaments.pairings" to "ダブルペアリング",
        "tournaments.pairingsCreatedWithErrors" to "{successCount} 件のペアリングを作成、{errorCount} 件のエラー。",
        "tournaments.participantConflicts" to "競合",
        "tournaments.participantNotFound" to "参加者が見つかりません。",
        "tournaments.participants" to "参加者",
        "tournaments.participantsNeedClassAssignment" to "{count} 参加者はまだクラスに割り当てられていません。これらを最初に割り当てる必要があります。",
        "tournaments.phone" to "電話",
        "tournaments.placementsPendingFinals" to "複数のグループまたは最終ラウンドが存在すると、最終順位が表示されます。",
        "tournaments.placementsPendingGroups" to "グループマッチが存在すると、グループ順位が表示されます。",
        "tournaments.placementsPendingNoGroups" to "グループマッチまたは最終ラウンドが存在すると、順位がここに表示されます。",
        "tournaments.placementsPendingSelectedClass" to "現在選択されているクラスにはまだ配置がありません。",
        "tournaments.placementsPendingTitle" to "順位はまだ利用できません",
        "tournaments.placesFromEachGroup" to "各グループからの順位（例: 1,2）",
        "tournaments.player" to "スケーター",
        "tournaments.playerOne" to "選手 1",
        "tournaments.playerTwo" to "選手 2",
        "tournaments.playInGroups" to "グループで遊ぶ",
        "tournaments.playThirdPlace" to "3位決定戦を行う",
        "tournaments.pleaseEnterDate" to "日付を入力してください",
        "tournaments.pleaseSelectParticipant" to "学生を選択してください。",
        "tournaments.points" to "ポイント",
        "tournaments.pointsRatio" to "ゲームポイント",
        "tournaments.poolRuleLabel" to "ルール {number}",
        "tournaments.poolRulePlacesHelp" to "例: 1 または 1,2",
        "tournaments.poolRulePlacesLabel" to "どの場所が進むでしょうか？",
        "tournaments.poolRulePreview" to "各グループから、{places} 位が {target} に進みます。",
        "tournaments.poolRuleQuickExamples" to "簡単な例:",
        "tournaments.poolRuleSummary" to "{places} から {target} までの場所",
        "tournaments.poolRuleTargetGroupsDetailed" to "{count} ターゲット グループ",
        "tournaments.poolRuleTargetKnockout" to "ノックアウトブラケット",
        "tournaments.poolRuleTargetLabel" to "これらの場所はどこへ行くのでしょうか？",
        "tournaments.position" to "広場",
        "tournaments.problemConfigDescription" to "日付、名前、優勝セットを確認します。",
        "tournaments.problemConfigTitle" to "構成が不完全",
        "tournaments.problemConflictsDescription" to "無効なクラス、欠落データ、または不明瞭な割り当てを確認します。",
        "tournaments.problemConflictsTitle" to "{count} 参加者が競合しています",
        "tournaments.problemDoublesAutoDescription" to "オープンダブルスクラスは、すぐに自動的にペアリングできます。",
        "tournaments.problemDoublesDescription" to "1 つ以上のダブルスのクラスでは、パートナーの割り当てが必要です。",
        "tournaments.problemDoublesTitle" to "{count} オープン ダブルス パートナー",
        "tournaments.problemGroupMatchesDescription" to "グループの準備はできていますが、一致はまだ作成されていません。",
        "tournaments.problemGroupMatchesTitle" to "グループマッチはまだ生成されていません",
        "tournaments.problemGroupsMissingDescription" to "グループトーナメントでは、最初にグループを作成する必要があります。",
        "tournaments.problemGroupsMissingTitle" to "まだ作成されていないグループ",
        "tournaments.problemKnockoutReadyDescription" to "グループステージが完了し、最終ラウンドが開始できるようになりました。",
        "tournaments.problemKnockoutReadyTitle" to "ノックアウトを開始できる",
        "tournaments.problemUnassignedAutoDescription" to "そのうちの {count} は、すぐに自動的に割り当てることができます。",
        "tournaments.problemUnassignedDescription" to "これらの参加者には、手動によるクラス割り当てが必要です。",
        "tournaments.problemUnassignedTitle" to "授業を受けていない{count}人の参加者",
        "tournaments.promotionRule12" to "進出: 予選 → 中間ラウンド (1→2)",
        "tournaments.promotionRuleDescription12" to "各予選グループのどの順位が中間ラウンドに進むかを定義します。",
        "tournaments.promotionRuleDescriptionFinalGroups" to "前回のラウンドのどの順位が最終ラウンドのグループに進むかを定義します。",
        "tournaments.promotionRuleDescriptionFinalKnockout" to "前のラウンドのどの順位が決勝トーナメントに進むかを定義します。",
        "tournaments.promotionRuleFinal" to "進出: ラウンド {from} → ラウンド {to}",
        "tournaments.randomizeGroups" to "ランダム化",
        "tournaments.randomPairings" to "ランダムな二重ペア",
        "tournaments.randomPairingsCreated" to "ランダムなペアリングが作成されました。",
        "tournaments.resetGroupMatches" to "グループ対抗戦",
        "tournaments.resetGroups" to "グループのリセット",
        "tournaments.result" to "結果",
        "tournaments.resultsRanking" to "順位",
        "tournaments.round" to "ラウンド",
        "tournaments.roundGroupCount" to "グループ数",
        "tournaments.roundMode" to "モード",
        "tournaments.ruleStatusBlocked" to "ブロックされました",
        "tournaments.ruleStatusOk" to "いいですね",
        "tournaments.ruleStatusOkDescription" to "このルールは現在のターゲット ラウンドと一致するため、そのまま使用できます。",
        "tournaments.ruleStatusReview" to "レビュー",
        "tournaments.save" to "保存",
        "tournaments.saveRounds" to "ラウンドを保存",
        "tournaments.seeded" to "シード",
        "tournaments.selectClass" to "クラスの選択",
        "tournaments.selectClassPrompt" to "クラスを選択してください。",
        "tournaments.selectedTournament" to "アクティブなトーナメント",
        "tournaments.selectParticipant" to "ユーザーを選択してください",
        "tournaments.selectPlayer" to "選手を選択する",
        "tournaments.selectTournamentFirst" to "先に大会を選択してください。",
        "tournaments.selectTwoDifferentPlayers" to "異なる2人の選手を選択してください。",
        "tournaments.setDiff" to "文の違い",
        "tournaments.sets" to "フレーズ",
        "tournaments.showClass" to "クラスを見る",
        "tournaments.showingTournamentCount" to "{visible}/{total}",
        "tournaments.showPlayerDetails" to "プレーヤーの詳細を表示する",
        "tournaments.singles" to "シングル",
        "tournaments.sourceClass" to "ソース",
        "tournaments.stageActionMissingRulesHint" to "プレイヤーを次のラウンドに移す前に、まず少なくとも 1 つの昇格ルールを作成します。",
        "tournaments.stageActionRun" to "今すぐ実行",
        "tournaments.stageActionsDescription" to "これらの手順により、資格のあるプレイヤーは次のラウンドに進みます。",
        "tournaments.stageActionsTitle" to "次のアクション",
        "tournaments.stageConfigBadServerResponse" to "サーバー応答が無効です。",
        "tournaments.stageConfigCurrentSetup" to "現在の体制",
        "tournaments.stageConfigIntro" to "中間ラウンドは任意です。有効にすると、その後に必ず決勝ラウンドがあります。ノックアウト決勝ラウンドは単一ブラケットとして作成されます。",
        "tournaments.stageConfigLoadError" to "ラウンド設定の読み込みエラー。",
        "tournaments.stageConfigLoading" to "ラウンド設定を読み込み中…",
        "tournaments.stageConfigMissingIds" to "保存できません: クラブIDまたは大会IDがありません。",
        "tournaments.stageConfigTitle" to "中間ラウンドと決勝ラウンド",
        "tournaments.stageCreated" to "ラウンド {round} を作成しました。",
        "tournaments.stageFinalDescription" to "最終ラウンドをグループとしてプレイするか、直接ノックアウトブラケットとしてプレイするかを決定します。",
        "tournaments.stageFlowBreakdownActionAddRule" to "ルールの追加",
        "tournaments.stageFlowBreakdownActionOpen" to "オープンルール",
        "tournaments.stageFlowBreakdownActionReview" to "問題を確認する",
        "tournaments.stageFlowBreakdownErrors" to "{count} ブロッキング エラー",
        "tournaments.stageFlowBreakdownMissingRule" to "完全なルールはまだ追加されていません",
        "tournaments.stageFlowBreakdownOk" to "構成は良さそうです",
        "tournaments.stageFlowBreakdownWarnings" to "{count} 警告がオープンしています",
        "tournaments.stageFlowDirectFinal" to "予選→決勝({final})",
        "tournaments.stageFlowHealthBlocked" to "ラウンドロジックは矛盾しています",
        "tournaments.stageFlowHealthBlockedDescription" to "現在、少なくとも 1 つのルールがターゲット ラウンドと一致しないか、ブロックする構成エラーが含まれています。",
        "tournaments.stageFlowHealthIncomplete" to "ラウンドロジックが不完全です",
        "tournaments.stageFlowHealthMissingRules" to "少なくとも 1 つのトランジションには完全な進行ルールがまだありません。",
        "tournaments.stageFlowHealthOk" to "ラウンドロジックは良さそうです",
        "tournaments.stageFlowHealthOkDescription" to "ラウンド間の移行は完全に構成されており、現在一貫性があります。",
        "tournaments.stageFlowHealthReviewDescription" to "ラウンド ロジックは基本的に使用できますが、ヒントが公開されているため、まだ検討する必要があります。",
        "tournaments.stageFlowPreviewMissing" to "まだルールが設定されていません。",
        "tournaments.stageFlowPreviewRule" to "{places} から {target} までの場所",
        "tournaments.stageFlowPreviewRuleWithCount" to "{base} (予期される修飾子: {count})",
        "tournaments.stageFlowQualifiedPreviewEntry" to "G{group} · {position} · {name} を配置します",
        "tournaments.stageFlowQualifiedPreviewTitle" to "現在資格を持っている",
        "tournaments.stageFlowReadinessIncompleteGroups" to "{count} グループはまだ完全に決定されていません",
        "tournaments.stageFlowReadinessNoGroups" to "一致するグループはまだ存在しません",
        "tournaments.stageFlowReadinessReady" to "移行を開始する準備ができています",
        "tournaments.stageFlowRecommendationError" to "まず、ラウンド ロジックの最初のブロッキング エラーを確認してください。",
        "tournaments.stageFlowRecommendationFixes" to "典型的な構成の問題は、すぐに自動的にクリーンアップできます。",
        "tournaments.stageFlowRecommendationMissingRule" to "{label} には完全なルールがまだありません。それが継続するのに最適な場所です。",
        "tournaments.stageFlowRecommendationSave" to "ラウンドロジックは一貫しています。これで構成を保存できます。",
        "tournaments.stageFlowRecommendationTitle" to "推奨される次のステップ",
        "tournaments.stageFlowRecommendationWarnings" to "保存する前に確認する必要がある警告がまだあります。",
        "tournaments.stageFlowWithIntermediate" to "予選→中間ラウンド({stage2})→決勝ラウンド({final})",
        "tournaments.stageParticipantsTransferred" to "資格のあるプレイヤーは {round} に移動されました。",
        "tournaments.stageStep1" to "ステップ1",
        "tournaments.stageStep1Description" to "まず、予選後に追加ラウンドを行うかどうかを決定します。",
        "tournaments.stageStep1Title" to "中間ラウンドを決める",
        "tournaments.stageStep2" to "ステップ2",
        "tournaments.stageStep2Description" to "中間ラウンドがどのようなものであるべきか、および必要なグループの数を定義します。",
        "tournaments.stageStep3" to "ステップ3",
        "tournaments.stageValidationApplyAllFixes" to "{count} クイックフィックスを適用します",
        "tournaments.stageValidationApplyFix" to "適用する",
        "tournaments.stageValidationApplyTargetGroupFix" to "{count} ターゲット グループに設定",
        "tournaments.stageValidationApplyTargetTypeFix" to "{target} に切り替えます",
        "tournaments.stageValidationDescription" to "プレイヤーを保存したり次のラウンドに移動したりする前に、これらの点を修正してください。",
        "tournaments.stageValidationGroupCountRequired" to "有効なグループ数を少なくとも 1 つ設定してください。",
        "tournaments.stageValidationKnockoutByesLikely" to "{count} 予選通過者が予想されるため、ノックアウトブラケットには不戦勝が含まれる可能性が非常に高くなります。",
        "tournaments.stageValidationKnockoutNeedsTwoPlayers" to "ノックアウトブラケットには少なくとも2人の資格のあるプレーヤーが必要です。",
        "tournaments.stageValidationKnockoutTargetOnly" to "ノックアウト最終ラウンドの場合、ここではノックアウトブラケットのみがターゲットとして許可されます。",
        "tournaments.stageValidationNoRules" to "{stage} にはまだ昇進ルールがありません。",
        "tournaments.stageValidationNotEnoughQualifiersForGroups" to "{groups} ターゲット グループに {count} 修飾子のみを使用すると、空のグループが作成されます。",
        "tournaments.stageValidationRulePlacesDuplicate" to "1 つのルールに同じ場所を複数回含めることはできません。",
        "tournaments.stageValidationRulePlacesGap" to "場所の定義にギャップがあります。通常は、1,2 または 1,2,3 などの連続順序が意図されています。",
        "tournaments.stageValidationRulePlacesInvalid" to "場所の定義が無効です。 1 や 1,2 などの正の整数のみが許可されます。",
        "tournaments.stageValidationRulePlacesRequired" to "進むべき場所を少なくとも 1 つ入力してください。",
        "tournaments.stageValidationRulesOverlap" to "場所 {place} は、ルール {first} とルール {second} で 2 回割り当てられています。",
        "tournaments.stageValidationSaveBlocked" to "まず、強調表示された構成エラーを修正してください。",
        "tournaments.stageValidationSuggestion" to "提案: {value}",
        "tournaments.stageValidationTargetGroupCountMismatch" to "ターゲットグループの数はターゲットラウンドと一致する必要があります。予想: {expected}。",
        "tournaments.stageValidationTargetGroupsRequired" to "ターゲット グループの有効な数を入力してください。",
        "tournaments.stageValidationTargetTypeMismatch" to "このルールのターゲットはターゲット ラウンドと一致する必要があります。予想: {target}。",
        "tournaments.stageValidationThinGroupsLikely" to "{groups} ターゲット グループ全体に {count} 修飾子がある場合、グループは非常に小さくなる可能性があります。",
        "tournaments.stageValidationTitle" to "構成を確認する",
        "tournaments.startKORound" to "ノックアウトラウンドを開始する",
        "tournaments.statusActionAssign" to "割り当てる",
        "tournaments.statusActionCreate" to "作成する",
        "tournaments.statusActionGenerate" to "生成する",
        "tournaments.statusActionPair" to "ペア",
        "tournaments.statusActionReview" to "レビュー",
        "tournaments.statusActionStart" to "始める",
        "tournaments.statusConfigIncomplete" to "構成が不完全",
        "tournaments.statusConfigReady" to "設定の準備完了",
        "tournaments.statusFinished" to "終了",
        "tournaments.statusGroupsMissing" to "まだ作成されていないグループ",
        "tournaments.statusGroupsReady" to "グループ準備完了",
        "tournaments.statusGroupsRunning" to "グループステージ進行中",
        "tournaments.statusKnockoutReady" to "ノックアウト開始準備完了",
        "tournaments.statusKnockoutRunning" to "ノックアウト中",
        "tournaments.statusLive" to "進行中",
        "tournaments.statusOpen" to "未開始",
        "tournaments.statusParticipantsConflicts" to "{count} 参加者が競合しています",
        "tournaments.statusParticipantsReady" to "{count} 参加者は競合なし",
        "tournaments.statusParticipantsUnassigned" to "{count} クラスなし",
        "tournaments.statusTournamentCompleted" to "トーナメントが終了しました",
        "tournaments.statusUnpairedDoubles" to "{count} はパートナーなしでダブルスします",
        "tournaments.strategy" to "戦略",
        "tournaments.tabConfig" to "構成",
        "tournaments.tabGroups" to "プール順位表",
        "tournaments.table" to "卓",
        "tournaments.tablesDistributed" to "卓が割り当てられました。",
        "tournaments.tabParticipants" to "参加者",
        "tournaments.tabPlacements" to "配置",
        "tournaments.tabResults" to "結果",
        "tournaments.target" to "対象",
        "tournaments.targetClass" to "ターゲット",
        "tournaments.targetGroupCount" to "対象グループ数",
        "tournaments.targetGroupsLabel" to "{count} グループ",
        "tournaments.tournamentClassGenderFemale" to "女子",
        "tournaments.tournamentClassGenderOpen" to "オープン（全員）",
        "tournaments.tournamentName" to "大会名",
        "tournaments.tournamentParticipations" to "公式トーナメントとエントリー",
        "tournaments.transferQualifiedToFinalFromIntermediate" to "資格を持ったプレイヤーを決勝ラウンドに進める",
        "tournaments.transferQualifiedToFinalFromIntermediateDesc" to "中間ラウンドから最終ラウンドまでのルールを使用し、資格のあるプレイヤーを移動させます。",
        "tournaments.transferQualifiedToFinalFromPreliminary" to "資格を持ったプレイヤーを直接決勝ラウンドに進める",
        "tournaments.transferQualifiedToFinalFromPreliminaryDesc" to "予選から決勝までのルールを使用し、そこで直接資格のあるプレイヤーを作成します。",
        "tournaments.transferQualifiedToIntermediate" to "資格のあるプレイヤーを中間ラウンドに移動させる",
        "tournaments.transferQualifiedToIntermediateDesc" to "予選から中級までのルールを採用し、資格を持ったプレイヤーを移動させます。",
        "tournaments.unknown" to "未知",
        "tournaments.unknownDate" to "日付不明",
        "tournaments.unmarkMatchLive" to "進行中マークを解除",
        "tournaments.unpairedDoubles" to "ペアのいないダブルス",
        "tournaments.useIntermediateStage" to "中間ラウンドを使用",
        "tournaments.warningBirthDateMissing" to "このクラスには生年月日が必要です",
        "tournaments.warningClassMissing" to "クラスが見つかりません",
        "tournaments.warningGenderMismatch" to "性別がクラス条件と一致しません",
        "tournaments.warningGenderMissing" to "このクラスには性別情報が必要です",
        "tournaments.warningMissingPairing" to "ダブルスのパートナーがいません",
        "tournaments.warningTooOldForClass" to "このクラスには年齢が高すぎます",
        "tournaments.warningTooYoungForClass" to "このクラスには年齢が低すぎます",
        "tournaments.winningSets" to "勝率",
        "tournaments.withoutClass" to "授業なし",
        "tournaments.workspaceProblemsTitle" to "{count} 未解決の問題",
        "trainingDetails.birthdate" to "生年月日",
        "trainingDetails.birthYear" to "生年",
        "trainingDetails.last12Months" to "過去 12 か月",
        "trainingDetails.last3Months" to "過去 3 か月",
        "trainingDetails.maxBirthYear" to "生まれ ≤ 年",
        "trainingDetails.noTrainings" to "トレーニングへの参加はできません",
        "trainingDetails.title" to "トレーニングの詳細",
        "trainingDetails.total" to "合計",
        "trainingDetails.trainingParticipations" to "トレーニング参加者数（降順）",
        "trainingGroupsTab.addMember" to "メンバーを追加...",
        "trainingGroupsTab.cancel" to "キャンセル",
        "trainingGroupsTab.create" to "作成する",
        "trainingGroupsTab.delete" to "消去",
        "trainingGroupsTab.edit" to "編集",
        "trainingGroupsTab.editGroup" to "グループの編集",
        "trainingGroupsTab.groupName" to "グループ名",
        "trainingGroupsTab.groups" to "プール順位表",
        "trainingGroupsTab.members" to "メンバー",
        "trainingGroupsTab.newGroup" to "+ 新しいグループ",
        "trainingGroupsTab.noMembersAvailable" to "利用可能なアフィリエイト パートナーがいません",
        "trainingGroupsTab.remove" to "取り除く",
        "trainingStats.actions" to "操作",
        "trainingStats.activeMembers" to "アクティブメンバー",
        "trainingStats.allTrainingDays" to "すべての練習日",
        "trainingStats.attendingMembers" to "参加した会員",
        "trainingStats.averageParticipationCurrentMonth" to "平均参加数（今月）",
        "trainingStats.averageParticipationHalfYear" to "平均参加数（半年）",
        "trainingStats.averageParticipationLastMonth" to "平均参加数（先月）",
        "trainingStats.averageParticipationQuarter" to "平均参加数（四半期）",
        "trainingStats.averageParticipationYear" to "平均参加数（年間）",
        "trainingStats.birthdate" to "生年月日",
        "trainingStats.date" to "日付",
        "trainingStats.lastTraining" to "最終練習",
        "trainingStats.memberParticipations" to "メンバー参加数",
        "trainingStats.name" to "名前",
        "trainingStats.noParticipants" to "参加者なし",
        "trainingStats.panelAgeGroups" to "年齢クラス別の出席",
        "trainingStats.panelBestDay" to "最も参加が多い練習日",
        "trainingStats.panelGroupPerformance" to "グループ別の推移",
        "trainingStats.panelMemberStructure" to "メンバー構成",
        "trainingStats.panelMonthlyTrend" to "月次の推移",
        "trainingStats.panelSummary" to "主要指標（フィルター）",
        "trainingStats.panelWeekdayStats" to "曜日別の練習日",
        "trainingStats.participants" to "参加者",
        "trainingStats.participations12Months" to "参加回数（12 か月）",
        "trainingStats.participations3Months" to "参加回数（3 か月）",
        "trainingStats.participationsTotal" to "参加回数（合計）",
        "trainingStats.qttr" to "QTTR",
        "trainingStats.showDetails" to "詳細を表示",
        "trainingStats.title" to "練習統計",
        "trainingStats.trainingDayFilter" to "練習日",
        "trainingStats.trainingDays" to "練習日（過去 12 か月）",
        "trainingStats.ttr" to "TTR",
        "trainingStats.weekday" to "曜日",
        "trainingTimesTab.addTime" to "時間を追加する",
        "trainingTimesTab.cancel" to "キャンセル",
        "trainingTimesTab.create" to "作成する",
        "trainingTimesTab.delete" to "消去",
        "trainingTimesTab.edit" to "編集",
        "trainingTimesTab.editTime" to "トレーニング時間を編集する",
        "trainingTimesTab.excludeFromQuickDiaryCreate" to "クイック作成から除外（日記）",
        "trainingTimesTab.excludeFromQuickDiarySaveError" to "設定を保存できませんでした。",
        "trainingTimesTab.friday" to "金曜日",
        "trainingTimesTab.from" to "から：",
        "trainingTimesTab.loading" to "トレーニング時間を読み込んでいます...",
        "trainingTimesTab.monday" to "月曜日",
        "trainingTimesTab.noTimes" to "トレーニング時間が定義されていません",
        "trainingTimesTab.saturday" to "土曜日",
        "trainingTimesTab.save" to "保存",
        "trainingTimesTab.saveError" to "トレーニング時間を保存中にエラーが発生しました",
        "trainingTimesTab.sunday" to "日曜日",
        "trainingTimesTab.thursday" to "木曜日",
        "trainingTimesTab.to" to "に：",
        "trainingTimesTab.tuesday" to "火曜日",
        "trainingTimesTab.wednesday" to "水曜日",
        "trainingTimesTab.weekday" to "平日：",
        "unknown" to "未知",
    ) }

    private val pl: Map<String, String> by lazy { mapOf(
        "accident.accident" to "Wypadek",
        "accident.accidentDescription" to "Opis wypadku...",
        "accident.close" to "Zamknąć",
        "accident.member" to "Członek",
        "accident.pleaseSelect" to "Proszę wybrać",
        "accident.reportAccident" to "Zgłaszaj wypadki",
        "accident.reportedAccidents" to "Zgłoszone wypadki",
        "accident.submit" to "Składać",
        "activityStats.activityStatistics" to "Statystyki ćwiczeń",
        "activityStats.last3Participations" to "Ostatnie 3 wpisy",
        "activityStats.noParticipations" to "Brak dostępnych wpisów",
        "activityStats.noStatistics" to "Brak dostępnych statystyk",
        "activityStats.title" to "Statystyki ćwiczeń",
        "app.name" to "Dziennik treningowy",
        "app.title" to "Dziennik treningowy",
        "auth.accountActivated" to "Konto aktywowane! Możesz się teraz zalogować.",
        "auth.activate" to "Aktywować",
        "auth.activateAccount" to "Aktywuj konto",
        "auth.activationFailed" to "Aktywacja nie powiodła się. Sprawdź link.",
        "auth.confirmPassword" to "Potwierdź hasło",
        "auth.email" to "E-mail",
        "auth.forgotPassword" to "Zapomniałeś hasła?",
        "auth.forgotPasswordDescription" to "Podaj swój adres e-mail. Otrzymasz link do zresetowania hasła.",
        "auth.hasAccount" to "Masz już konto?",
        "auth.login" to "Zaloguj",
        "auth.loginFailed" to "Logowanie nie powiodło się. Sprawdź dane logowania.",
        "auth.loginSuccess" to "Pomyślnie zalogowano",
        "auth.logout" to "Wyloguj",
        "auth.logoutSuccess" to "Pomyślnie wylogowano",
        "auth.newPassword" to "Nowe hasło",
        "auth.noAccount" to "Nie masz konta?",
        "auth.password" to "Hasło",
        "auth.passwordResetSuccess" to "Hasło zostało zmienione pomyślnie. Możesz się teraz zalogować.",
        "auth.passwordsDoNotMatch" to "Hasła nie są zgodne.",
        "auth.passwordTooShort" to "Hasło musi mieć co najmniej 6 znaków.",
        "auth.register" to "Zarejestruj",
        "auth.registerFailed" to "Rejestracja nie powiodła się. Spróbuj ponownie.",
        "auth.registerSuccess" to "Rejestracja pomyślna! Aby aktywować konto, sprawdź swoją skrzynkę e-mail.",
        "auth.rememberMe" to "Zapamiętaj mnie",
        "auth.resetEmailSent" to "Jeśli konto z tym adresem istnieje, wysłano link do resetowania. Sprawdź skrzynkę (i spam).",
        "auth.resetFailed" to "Nie udało się zmienić hasła. Link mógł wygasnąć.",
        "auth.resetPassword" to "Ustaw nowe hasło",
        "auth.resetRequestFailed" to "Żądanie nie powiodło się. Spróbuj ponownie.",
        "auth.saveNewPassword" to "Zapisz hasło",
        "auth.saving" to "Zapisywanie...",
        "auth.sending" to "Wysyłanie...",
        "auth.sendResetLink" to "Wyślij link",
        "auth.sessionExpired" to "Twoja sesja wygasła. Zostaniesz wylogowany.",
        "auth.toLogin" to "Do logowania",
        "baseDialog.close" to "Zamknąć",
        "baseDialog.minimize" to "zminimalizować",
        "baseDialog.resize" to "Zmień rozmiar",
        "billing.autoSuggestMapping" to "Sugestie dotyczące samochodów",
        "billing.deleteBilling" to "Usuwać",
        "billing.deleteConfirm" to "Czy naprawdę usunąć to wygenerowane zestawienie?",
        "billing.deleteError" to "Nie udało się usunąć płatności.",
        "billing.deleteSuccess" to "Rozliczenia zostały usunięte.",
        "billing.deleteTemplate" to "Usuń szablon",
        "billing.deleteTemplateConfirm" to "Na pewno usunąć ten szablon?",
        "billing.deleteTemplateError" to "Nie można usunąć szablonu.",
        "billing.deleteTemplateSuccess" to "Szablon został usunięty.",
        "billing.documentDate" to "Data",
        "billing.downloadError" to "Nie można pobrać pliku PDF.",
        "billing.downloadPdf" to "Pobierz PDF",
        "billing.generateAndDownloadPdf" to "Wygeneruj + pobierz plik PDF",
        "billing.generateError" to "Nie można utworzyć pliku PDF.",
        "billing.generateOwnBilling" to "Wygeneruj własne rozliczenia",
        "billing.generatePdf" to "Wygeneruj plik PDF",
        "billing.generateSuccess" to "Utworzono plik PDF.",
        "billing.generatingPdf" to "Utwórz PDF...",
        "billing.hourlyRate" to "Wynagrodzenie godzinowe",
        "billing.hoursAutoHint" to "Liczba godzin jest obliczana automatycznie na podstawie dni szkoleniowych: {hours} h ({count} jednostek).",
        "billing.hoursTotal" to "Liczba godzin",
        "billing.iban" to "IBAN",
        "billing.ibanBoxesReset" to "Skrzynki IBAN zostały zresetowane.",
        "billing.ibanLearnCancel" to "Anuluj naukę numeru IBAN",
        "billing.ibanLearnDone" to "Skrzynki IBAN zostały przypisane z wybranego obszaru.",
        "billing.ibanLearnStart" to "Naucz się numeru IBAN",
        "billing.ibanLearnStep1" to "Nauka numeru IBAN: kliknij pierwsze pole IBAN, którego chcesz użyć.",
        "billing.ibanLearnStep2" to "Nauka IBAN: kliknij ostatnie pole IBAN, którego chcesz użyć.",
        "billing.ibanWithoutCountry" to "bez kodu kraju",
        "billing.locationText" to "Lokalizacja",
        "billing.mappingEditorHint" to "Wybierz pole, a następnie kliknij plik PDF. Stanowisko zostanie przejęte natychmiast.",
        "billing.mappingEditorTitle" to "Przypisz pola w pliku PDF jednym kliknięciem",
        "billing.mappingField" to "Pole",
        "billing.mappingHint" to "Dostosuj i zapisz współrzędne raz dla każdego pola. Pozycje te są używane w „Utwórz plik PDF”.",
        "billing.mappingPreviewError" to "Nie można załadować podglądu pliku PDF dla mapowania.",
        "billing.mappingSaved" to "Mapowanie zostało zapisane.",
        "billing.mappingSaveError" to "Nie udało się zapisać mapowania.",
        "billing.mappingSuggested" to "Wprowadzono sugestie dotyczące samochodów. Sprawdź i dostosuj.",
        "billing.mappingSuggestError" to "Nie udało się określić automatycznych sugestii.",
        "billing.mappingTitle" to "Mapowanie pozycji",
        "billing.monthFrom" to "miesiąc",
        "billing.monthTo" to "miesiąc do",
        "billing.noRuns" to "Nie ma jeszcze żadnych faktur.",
        "billing.noSessionsInRange" to "Nie znaleziono żadnych szkoleń w wybranym okresie.",
        "billing.noTemplates" to "Brak dostępnych szablonów.",
        "billing.omitField" to "nie określaj",
        "billing.openMappingEditor" to "Mapowanie jednym kliknięciem",
        "billing.resetIbanBoxes" to "Skrzynki IBAN zresetowane",
        "billing.runSection" to "Bieg rozliczeniowy",
        "billing.runsTitle" to "Poprzednie rozliczenia",
        "billing.sameAccountCheckbox" to "To samo konto co w ostatnim wyciągu",
        "billing.saveMapping" to "Zapisz mapowanie",
        "billing.selfRecipientName" to "Własne imię",
        "billing.sessionHours" to "Godziny",
        "billing.sessionLabel" to "Identyfikator",
        "billing.sessionTime" to "Czas",
        "billing.step1" to "Krok 1: Szablon sklepu",
        "billing.step2" to "Krok 2: Utwórz przebieg rozliczeniowy",
        "billing.step3" to "Krok 3: Wygeneruj i pobierz plik PDF",
        "billing.subtitle" to "Stwórz swój własny miesięczny rachunek za lekcje ćwiczeń.",
        "billing.template" to "Szablon",
        "billing.templateDescription" to "Opis",
        "billing.templateName" to "Nazwa szablonu",
        "billing.templatePdf" to "Szablon PDF",
        "billing.templateSection" to "Prześlij szablon",
        "billing.title" to "Faktura",
        "billing.uploadTemplate" to "Zapisz szablon",
        "calendar.agendaEmpty" to "Brak wydarzeń w tym miesiącu.",
        "calendar.agendaTitle" to "Wydarzenia w tym miesiącu",
        "calendar.cancelCancellation.confirm" to "Cofnij odwołanie",
        "calendar.cancelCancellation.message" to "Na pewno cofnąć odwołanie „{title}” w dniu {date}?",
        "calendar.cancelCancellation.title" to "Cofnij odwołanie treningu",
        "calendar.cancellation.date" to "Data",
        "calendar.cancellation.description" to "Ukrywa regularne godziny treningów.",
        "calendar.cancellation.fallbackTitle" to "Trening odwołany",
        "calendar.cancellation.reasonPlaceholder" to "Powód (opcjonalnie)",
        "calendar.cancellation.saving" to "Oszczędność...",
        "calendar.cancellation.submit" to "Dodać",
        "calendar.cancellation.subtitle" to "Odwołanie treningu",
        "calendar.cancellation.title" to "Trening odwołany",
        "calendar.cancellation.trainingGroups" to "Grupy szkoleniowe",
        "calendar.cancellation.untilOptional" to "Dopóki nie jest to opcjonalne",
        "calendar.customEvent.categoryPlaceholder" to "Kategoria (opcjonalnie)",
        "calendar.customEvent.description" to "Spotkania dzielnicowe, sesje, spotkania wewnętrzne,...",
        "calendar.customEvent.saving" to "Oszczędność...",
        "calendar.customEvent.submit" to "Tworzyć",
        "calendar.customEvent.subtitleFallback" to "Własne wydarzenie",
        "calendar.customEvent.title" to "Własne wydarzenia",
        "calendar.customEvent.titlePlaceholder" to "Tytuł",
        "calendar.description" to "Dni treningowe, turnieje klubowe i mecze ligowe w widoku miesięcznym.",
        "calendar.eventTitles.match" to "Mecz ligowy",
        "calendar.eventTitles.officialTournament" to "Udział w turnieju",
        "calendar.eventTitles.tournament" to "Turniej",
        "calendar.eventTitles.training" to "szkolenie",
        "calendar.eyebrow" to "Kalendarz klubu",
        "calendar.holidayTypes.holiday" to "Wakacje",
        "calendar.holidayTypes.schoolHoliday" to "Wakacje szkolne",
        "calendar.legend.customEvent" to "Wydarzenie",
        "calendar.legend.holiday" to "Wakacje",
        "calendar.legend.match" to "Mecz ligowy",
        "calendar.legend.officialTournament" to "Udział",
        "calendar.legend.schoolHoliday" to "Wakacje szkolne",
        "calendar.legend.tournament" to "Turniej",
        "calendar.legend.training" to "szkolenie",
        "calendar.legend.trainingCancellation" to "Odwołany",
        "calendar.loadError" to "Nie udało się wczytać danych kalendarza.",
        "calendar.loading" to "Ładowanie danych kalendarza...",
        "calendar.match.guest" to "Z dala",
        "calendar.match.home" to "Dom",
        "calendar.noClub" to "Najpierw wybierz klub.",
        "calendar.options.subtitle" to "Anulacje i własne wydarzenia",
        "calendar.options.title" to "Opcje",
        "calendar.participants" to "{count} uczestników",
        "calendar.quickCancellation.confirm" to "Dodaj anulowanie",
        "calendar.quickCancellation.message" to "Oznaczyć „{title}” jako odwołanie treningu?",
        "calendar.quickCancellation.noGroups" to "Brak dostępnych grup szkoleniowych z podanymi terminami treningów.",
        "calendar.quickCancellation.title" to "Odwołanie treningu",
        "calendar.quickCancellation.trainingGroups" to "Dotknięte grupy szkoleniowe",
        "calendar.quickCancellation.useWholeRange" to "Zastosuj na cały okres ({start} do {end})",
        "calendar.recurringTrainingTime" to "Regularny czas szkolenia",
        "calendar.sources.customEvents" to "Własne wydarzenia",
        "calendar.sources.holidays" to "Wakacje/wakacje szkolne",
        "calendar.sources.matches" to "Mecze ligowe",
        "calendar.sources.officialTournaments" to "Udział w turnieju",
        "calendar.sources.tournaments" to "Turnieje",
        "calendar.sources.trainingCancellations" to "Odwołania treningów",
        "calendar.sources.trainingDays" to "Dni szkoleniowe",
        "calendar.sources.trainingTimes" to "Czasy treningów",
        "calendar.sourceWarning" to "Nie można załadować {source}",
        "calendar.starts" to "Rozpoczyna się {count}",
        "calendar.title" to "Kalendarz",
        "calendar.today" to "Dzisiaj",
        "calendar.tournament.club" to "Turniej klubowy",
        "calendar.tournament.open" to "Otwarty turniej",
        "calendar.weekdays.friday" to "Pt",
        "calendar.weekdays.monday" to "Pon",
        "calendar.weekdays.saturday" to "Sob",
        "calendar.weekdays.sunday" to "Nd",
        "calendar.weekdays.thursday" to "Czw",
        "calendar.weekdays.tuesday" to "Wt",
        "calendar.weekdays.wednesday" to "Śr",
        "club.accessDenied" to "Dostęp do klubu został odrzucony.",
        "club.accessRequested" to "Poproszono o dostęp.",
        "club.accessRequestFailed" to "Nie udało się wysłać prośby o dostęp.",
        "club.accessRequestPending" to "Poproszono o dostęp do tego klubu. Proszę czekać.",
        "club.create" to "Utwórz klub",
        "club.createTitle" to "Utwórz klub",
        "club.diary" to "Dziennik treningowy",
        "club.errorLoadingRequests" to "Błąd podczas ładowania otwartych próśb",
        "club.load" to "Załaduj",
        "club.members" to "Członkowie",
        "club.mobileSelectHint" to "Najpierw wybierz klub, aby korzystać z aplikacji na smartfonie.",
        "club.name" to "Nazwa klubu",
        "club.new" to "Nowy klub",
        "club.noAccess" to "Nie masz jeszcze dostępu do tego klubu.",
        "club.openAccessRequests" to "Otwarte prośby o dostęp",
        "club.openRequests" to "Otwarte prośby o dostęp",
        "club.requestAccess" to "Poproś o dostęp",
        "club.select" to "Wybierz klub",
        "club.selectPlaceholder" to "Wybierz klub...",
        "club.title" to "Klub",
        "club.trainingDiary" to "Dziennik treningowy",
        "clubSettings.associationMemberNumber" to "Numer członkowski stowarzyszenia",
        "clubSettings.associationMemberNumberPlaceholder" to "np. SN-12-3456.",
        "clubSettings.autoFetchRankings" to "Automatycznie pobieraj rankingi",
        "clubSettings.greetingHint" to "Ten tekst pojawia się w zakładce „Witamy” w arkuszu raportu z gry.",
        "clubSettings.greetingPlaceholder" to "Tekst powitalny dla gier domowych...",
        "clubSettings.greetingText" to "Tekst powitania",
        "clubSettings.guestPlayers" to "Gracz i zespół gościnny gry podwójnej",
        "clubSettings.guestTeam" to "Nazwa zespołu gościa",
        "clubSettings.homePlayers" to "Gracze i gospodarze grają podwójnie",
        "clubSettings.homeTeam" to "Nazwa drużyny domowej",
        "clubSettings.loadFailed" to "Nie udało się wczytać ustawień",
        "clubSettings.memberDataQuality" to "Członkowie ds. jakości danych",
        "clubSettings.memberDataQualityHint" to "Pola te liczą się w razie potrzeby na stronie członkowskiej. Nadal można wypełnić wszystkie pola.",
        "clubSettings.myTischtennisFedNickname" to "Skrót stowarzyszenia",
        "clubSettings.myTischtennisFedNicknamePlaceholder" to "np. HeTTV",
        "clubSettings.myTischtennisRankings" to "Rankingi myTischtennis TTR/QTTR",
        "clubSettings.myTischtennisRankingsHint" to "Automatyczne pobieranie rankingu klubowego dla aktualizacji TTR i QTTR członków.",
        "clubSettings.noClubSelected" to "Najpierw wybierz lekarza.",
        "clubSettings.placeholders" to "Odstępnik",
        "clubSettings.rankingsUsesAssociationNumber" to "Numer klubu, do którego można uzyskać dostęp do listy rankingowej, odpowiada numerowi członkowskiemu stowarzyszenia podanemu powyżej.",
        "clubSettings.requireCity" to "Lokalizacja wymagana",
        "clubSettings.requireEmail" to "Wymagany e-mail",
        "clubSettings.requirePhone" to "Wymagany numer telefonu",
        "clubSettings.requirePostalCode" to "Wymagany kod pocztowy",
        "clubSettings.requireStreet" to "Wymagana droga",
        "clubSettings.save" to "Ratować",
        "clubSettings.saved" to "Przechowywane",
        "clubSettings.saveFailed" to "Nie można zapisać",
        "clubSettings.settings" to "Ustawienia",
        "clubSettings.title" to "Ustawienia klubu",
        "clubSettings.trainingGroups" to "Grupy szkoleniowe.",
        "clubSettings.trainingTimes" to "Harmonogram ćwiczeń",
        "common.actions" to "Akcje",
        "common.active" to "Aktywny",
        "common.add" to "Dodaj",
        "common.all" to "Wszystkie",
        "common.apply" to "Zastosuj",
        "common.back" to "Wstecz",
        "common.cancel" to "Anuluj",
        "common.choose" to "Wybierz",
        "common.clear" to "Wyczyść",
        "common.close" to "Zamknij",
        "common.confirm" to "Potwierdź",
        "common.create" to "Utwórz",
        "common.date" to "Data",
        "common.days" to "dni",
        "common.delete" to "Usuń",
        "common.description" to "Opis",
        "common.details" to "Details",
        "common.disabled" to "Wyłączony",
        "common.download" to "Pobierz",
        "common.edit" to "Edytuj",
        "common.enabled" to "Włączony",
        "common.filter" to "filtr",
        "common.hours" to "godziny",
        "common.in" to "in",
        "common.inactive" to "Nieaktywny",
        "common.loading" to "Ładowanie...",
        "common.min" to "min",
        "common.minutes" to "minuty",
        "common.months" to "miesiące",
        "common.move" to "Przenieś",
        "common.name" to "nazwa",
        "common.new" to "Nowy",
        "common.next" to "Dalej",
        "common.no" to "Nie",
        "common.ok" to "OK",
        "common.optional" to "Optional",
        "common.period" to "Okres",
        "common.previous" to "Poprzedni",
        "common.refresh" to "Odśwież",
        "common.remove" to "Usuń",
        "common.required" to "Wymagane",
        "common.reset" to "Resetuj",
        "common.save" to "Zapisz",
        "common.saved" to "Zapisano",
        "common.saving" to "Zapisywanie...",
        "common.search" to "Szukaj",
        "common.select" to "Wybierz",
        "common.status" to "status",
        "common.submit" to "Wyślij",
        "common.time" to "Czas",
        "common.today" to "Dzisiaj",
        "common.type" to "Typ",
        "common.update" to "Aktualizuj",
        "common.view" to "Pokaż",
        "common.weeks" to "tygodnie",
        "common.years" to "lata",
        "common.yes" to "Tak",
        "courtDrawing.cancel" to "Anulować",
        "courtDrawing.durationMinutes" to "Czas trwania (minuty)",
        "courtDrawing.durationText" to "Czas trwania (tekst)",
        "courtDrawing.durationTextPlaceholder" to "np. 2x5",
        "courtDrawing.group" to "Grupa",
        "courtDrawing.ok" to "OK",
        "courtDrawing.selectGroup" to "Wybierz grupę...",
        "courtDrawing.title" to "Skonfiguruj ćwiczenia w tenisie stołowym",
        "courtDrawingRender.animationRunning" to "Animacja w toku...",
        "courtDrawingRender.startAnimation" to "Rozpocznij animację",
        "courtDrawingTool.addStroke" to "Dodaj zagranie",
        "courtDrawingTool.backhand" to "Bekhend",
        "courtDrawingTool.codeLabel" to "Kod",
        "courtDrawingTool.completeFirstStroke" to "Uzupełnij pierwsze zagranie",
        "courtDrawingTool.completeFirstStrokeHint" to "Wybierz pozycję startową, stronę, rotację i cel. Następnie pojawi się grafika.",
        "courtDrawingTool.configureExercise" to "Konfiguruj ćwiczenie",
        "courtDrawingTool.counterSpin" to "Kontratopspin",
        "courtDrawingTool.forehand" to "Forhend",
        "courtDrawingTool.noAdditionalStrokes" to "Nie dodano jeszcze kolejnych zagrań.",
        "courtDrawingTool.preview" to "Podgląd",
        "courtDrawingTool.previewHint" to "Grafika pojawi się, gdy pierwsze zagranie będzie w pełni skonfigurowane.",
        "courtDrawingTool.service" to "Serwis:",
        "courtDrawingTool.serviceTitle" to "Serwis",
        "courtDrawingTool.sidespin" to "Rotacja boczna",
        "courtDrawingTool.sideUnderspin" to "Boczne podcięcie",
        "courtDrawingTool.spin" to "Rotacja:",
        "courtDrawingTool.startLeft" to "lewa",
        "courtDrawingTool.startMiddle" to "środek",
        "courtDrawingTool.startRight" to "prawa",
        "courtDrawingTool.stepAdditionalStrokes" to "4. Kolejne zagrania",
        "courtDrawingTool.stepAdditionalStrokesHint" to "Opcjonalnie dodaj kolejne piłki jako sekwencję.",
        "courtDrawingTool.stepFirstStroke" to "2. Pierwsze zagranie",
        "courtDrawingTool.stepFirstStrokeHint" to "Ustaw stronę i rotację pierwszej piłki.",
        "courtDrawingTool.stepStartPosition" to "1. Pozycja startowa",
        "courtDrawingTool.stepStartPositionHint" to "Z której pozycji serwisowej zaczyna się ćwiczenie?",
        "courtDrawingTool.stepTarget" to "3. Cel",
        "courtDrawingTool.stepTargetHint" to "Wybierz strefę celu dla pierwszego zagrania.",
        "courtDrawingTool.strokeSide" to "Strona",
        "courtDrawingTool.strokeTypeBlock" to "Block",
        "courtDrawingTool.strokeTypeChopDefense" to "Obrona podcięciem",
        "courtDrawingTool.strokeTypeCounter" to "Kontra",
        "courtDrawingTool.strokeTypeFlip" to "trzepnięcie",
        "courtDrawingTool.strokeTypeLabel" to "Typ zagrania",
        "courtDrawingTool.strokeTypeLobDefense" to "Obrona lobem",
        "courtDrawingTool.strokeTypePush" to "Pchnięcie",
        "courtDrawingTool.strokeTypeSmash" to "Smecz",
        "courtDrawingTool.strokeTypeTopspin" to "Najlepszy obrót",
        "courtDrawingTool.targetBackhandHalfLong" to "Backhand półdługi",
        "courtDrawingTool.targetBackhandLong" to "Backhand długi",
        "courtDrawingTool.targetBackhandShort" to "Backhand krótki",
        "courtDrawingTool.targetForehandHalfLong" to "Forehand półdługi",
        "courtDrawingTool.targetForehandLong" to "Forehand długi",
        "courtDrawingTool.targetForehandShort" to "Forehand krótki",
        "courtDrawingTool.targetMiddleHalfLong" to "Środek półdługi",
        "courtDrawingTool.targetMiddleLong" to "Środek długi",
        "courtDrawingTool.targetMiddleShort" to "Środek krótki",
        "courtDrawingTool.targetPosition" to "Pozycja celu:",
        "courtDrawingTool.targetPositionLabel" to "Pozycja celu",
        "courtDrawingTool.title" to "Rysunek ćwiczenia tenisa stołowego",
        "courtDrawingTool.titleLabel" to "Tytuł",
        "courtDrawingTool.topspin" to "Topspin",
        "courtDrawingTool.toTarget" to "do",
        "courtDrawingTool.underspin" to "Podcięcie",
        "createClub.clubExists" to "Stowarzyszenie już istnieje.",
        "createClub.clubName" to "nazwa klubu",
        "createClub.create" to "Utwórz klub",
        "createClub.nameRequired" to "Proszę o nadanie stowarzyszeniu sensownej nazwy.",
        "createClub.title" to "Utwórz klub",
        "createClub.unknownError" to "Wystąpił nieznany błąd. Spróbuj ponownie",
        "csvImport.cancel" to "Anulować",
        "csvImport.import" to "Importowanie",
        "csvImport.title" to "Harmonogram importu",
        "csvImport.uploadCsvFile" to "Prześlij plik CSV",
        "dialogExamples.composableConfirmDetails" to "To jest przykład użyciaConfirm Composable.",
        "dialogExamples.composableConfirmMessage" to "Czy chcesz kontynuować?",
        "dialogExamples.composableConfirmTitle" to "użyjPotwierdź przykład",
        "dialogExamples.composableDialogText" to "W tym oknie dialogowym używany jest plik useDialog Composable.",
        "dialogExamples.composableDialogText2" to "Dzięki temu łatwiej jest zarządzać!",
        "dialogExamples.composableDialogTitle" to "Dialog z useDialog Composable",
        "dialogExamples.composableUsage" to "Możliwość komponowania",
        "dialogExamples.confirmDeleteMessage" to "Czy na pewno chcesz usunąć tę kartę podarunkową?",
        "dialogExamples.confirmDeleteTitle" to "Potwierdź usunięcie",
        "dialogExamples.confirmDialogs" to "Okna dialogowe potwierdzenia",
        "dialogExamples.confirmWarningDetails" to "Tej akcji nie można cofnąć.",
        "dialogExamples.confirmWarningMessage" to "Czy na pewno chcesz kontynuować?",
        "dialogExamples.error" to "Błąd",
        "dialogExamples.errorDetails" to "Spróbuj ponownie później.",
        "dialogExamples.errorMessage" to "Wystąpił błąd.",
        "dialogExamples.fullscreenModal" to "Tryb pełnoekranowy",
        "dialogExamples.fullscreenModalText" to "To jest okno dialogowe pełnoekranowe.",
        "dialogExamples.fullscreenModalText2" to "Zajmuje prawie cały ekran (90vw x 90vh).",
        "dialogExamples.fullscreenModalTitle" to "Modalne okno dialogowe na pełnym ekranie",
        "dialogExamples.info" to "Informacja",
        "dialogExamples.infoDialogs" to "Dialogi informacyjne",
        "dialogExamples.infoMessage" to "To jest wiadomość informacyjna.",
        "dialogExamples.information" to "informacja",
        "dialogExamples.largeModal" to "Duży modal",
        "dialogExamples.largeModalText" to "To wspaniały dialog modalny.",
        "dialogExamples.largeModalText2" to "Oferuje więcej miejsca na treść.",
        "dialogExamples.largeModalTitle" to "Duży dialog modalny",
        "dialogExamples.minimizedDialogs" to "Zminimalizowane okna dialogowe:",
        "dialogExamples.modalDialogs" to "Dialogi modalne",
        "dialogExamples.multipleDialogs" to "Wiele okien dialogowych",
        "dialogExamples.nonModalDialog" to "Dialog niemodalny",
        "dialogExamples.nonModalDialogs" to "Dialogi niemodalne",
        "dialogExamples.nonModalText" to "Jest to dialog niemodalny.",
        "dialogExamples.nonModalText2" to "Możesz go przenieść i otworzyć kilka na raz!",
        "dialogExamples.nonModalTitle" to "Dialog niemodalny",
        "dialogExamples.scrollArea" to "Przewiń obszar, aby uzyskać wiele treści...",
        "dialogExamples.secondNonModalText" to "Kolejny niemodalny dialog!",
        "dialogExamples.secondNonModalTitle" to "Drugi dialog niemodalny",
        "dialogExamples.simpleModal" to "Prosty modalny",
        "dialogExamples.simpleModalText" to "Jest to proste modalne okno dialogowe średniej wielkości.",
        "dialogExamples.simpleModalText2" to "Kliknij na zewnątrz lub na X, aby zamknąć.",
        "dialogExamples.simpleModalTitle" to "Prosty dialog modalny",
        "dialogExamples.success" to "Osiągnięcie",
        "dialogExamples.successDetails" to "Wszystkie zmiany zostały zapisane.",
        "dialogExamples.successMessage" to "Operacja zakończyła się pomyślnie!",
        "dialogExamples.title" to "Przykłady dialogów",
        "dialogExamples.useConfirmExample" to "użyjPotwierdź przykład",
        "dialogExamples.useDialogExample" to "przykład useDialog",
        "dialogExamples.warning" to "Przestrogi",
        "dialogExamples.warningDetails" to "Niektóre pola mogą nie zostać wypełnione całkowicie.",
        "dialogExamples.warningMessage" to "Poniższe linki mogą Ci pomóc:",
        "dialogManager.close" to "Zamknąć",
        "dialogManager.minimize" to "zminimalizować",
        "dialogManager.noMinimizedDialogs" to "Brak zminimalizowanych okien dialogowych",
        "dialogs.confirm.cancel" to "Anulować",
        "dialogs.confirm.ok" to "OK",
        "dialogs.confirm.title" to "Potwierdzenie",
        "dialogs.info.ok" to "OK",
        "dialogs.info.title" to "informacja",
        "diary.activeTrainingDay" to "Aktywny dzień treningowy",
        "diary.activities" to "Aktywności",
        "diary.activity" to "Aktywność",
        "diary.activityDrawing" to "Rysunek aktywności",
        "diary.activityImage" to "Obraz aktywności",
        "diary.activityNotFound" to "Nie znaleziono aktywności. Wybierz jedną z listy.",
        "diary.activityOrTimeblock" to "Aktywność / blok czasowy",
        "diary.activityPlaceholder" to "Aktywność",
        "diary.activityRequired" to "Wpisz aktywność.",
        "diary.addActivity" to "Dodaj aktywność",
        "diary.addGroup" to "Dodaj grupę",
        "diary.addGroupActivity" to "Dodaj aktywność grupową",
        "diary.addGroupButton" to "+ Grupa",
        "diary.addTimeblock" to "Blok czasowy",
        "diary.all" to "Wszystkie",
        "diary.applySuggestion" to "Zastosuj sugestię",
        "diary.assignParticipants" to "Przypisz uczestników",
        "diary.assignParticipantsForGroupActivity" to "Przypisz uczestników do aktywności grupowej",
        "diary.assignShort" to "Przypisz",
        "diary.bookAccident" to "Zarejestruj wypadek",
        "diary.confirmDelete" to "Potwierdź usunięcie",
        "diary.confirmDeleteDate" to "Czy na pewno chcesz usunąć tę datę?",
        "diary.confirmDeleteDateDetails" to "Wszystkie powiązane dane również zostaną usunięte.",
        "diary.confirmDeleteGroup" to "Czy na pewno chcesz usunąć grupę „{name}”?",
        "diary.createDate" to "Utwórz datę",
        "diary.createDrawing" to "Utwórz rysunek ćwiczenia",
        "diary.createGroups" to "Utwórz grupy",
        "diary.createNew" to "Utwórz",
        "diary.createNewDate" to "Utwórz nową datę",
        "diary.date" to "Data",
        "diary.dateCannotBeDeleted" to "Nie można usunąć daty",
        "diary.dateCannotBeDeletedDetails" to "Nadal istnieje zawartość (plan, uczestnicy, aktywności, wypadki lub notatki).",
        "diary.dateNoLongerCurrent" to "Wybrana data nie była już aktualna. Spróbuj ponownie.",
        "diary.delete" to "Usuń",
        "diary.deleteDate" to "Usuń datę",
        "diary.deleteGroup" to "Usuń grupę",
        "diary.duration" to "Czas trwania",
        "diary.durationExampleLong" to "np. 2x7 lub 3*5",
        "diary.durationExampleShort" to "np. 2x7",
        "diary.durationMinutes" to "Czas trwania (min)",
        "diary.editActivity" to "Edytuj aktywność",
        "diary.editGroupActivity" to "Edytuj aktywność grupową",
        "diary.editTrainingTimes" to "Edytuj godziny treningu",
        "diary.errorCreatingActivity" to "Błąd podczas tworzenia aktywności",
        "diary.errorCreatingGroups" to "Błąd podczas tworzenia grup",
        "diary.errorDeletingGroup" to "Błąd podczas usuwania grupy",
        "diary.errorLoadingPredefinedActivities" to "Błąd podczas ładowania predefiniowanych aktywności",
        "diary.errorMarkingForm" to "Błąd podczas oznaczania formularza",
        "diary.errorOccurred" to "Wystąpił błąd. Spróbuj ponownie.",
        "diary.existingGroups" to "Istniejące grupy",
        "diary.filterAbsent" to "Nieobecny",
        "diary.filterAll" to "Wszystkie",
        "diary.filterExcused" to "Usprawiedliwiony",
        "diary.filterPresent" to "Obecny",
        "diary.filterTest" to "Próba",
        "diary.formHandedOver" to "Formularz członkowski przekazany",
        "diary.formMarkedAsHandedOver" to "Formularz członkowski oznaczono jako przekazany",
        "diary.freeActivities" to "Wolne aktywności",
        "diary.gallery" to "Galeria członków",
        "diary.galleryCreating" to "Tworzenie galerii…",
        "diary.group" to "Grupa...",
        "diary.groupDeletedSuccessfully" to "Grupa została pomyślnie usunięta.",
        "diary.groupManagement" to "Zarządzanie grupami",
        "diary.groupsCreated" to "Pomyślnie utworzono {count} grup.",
        "diary.groupsLabel" to "Grupy",
        "diary.groupsSection" to "Grupy",
        "diary.leader" to "Prowadzący",
        "diary.min" to "Min",
        "diary.minutes" to "Minuty",
        "diary.mustCreateAtLeastTwoGroups" to "Za pierwszym razem trzeba utworzyć co najmniej 2 grupy.",
        "diary.nextAppointment" to "Następny termin",
        "diary.noActiveTrainingDay" to "Nie wybrano dnia treningowego.",
        "diary.noEntries" to "Brak wpisów",
        "diary.noFreeActivitiesYet" to "Nie zapisano jeszcze żadnych wolnych aktywności.",
        "diary.noParticipants" to "Brak uczestników dla tego dnia treningowego.",
        "diary.numberOfGroups" to "Liczba grup",
        "diary.oneGroupAdded" to "Pomyślnie dodano 1 grupę.",
        "diary.openPlanItems" to "{count} otwarte",
        "diary.openPlanItemsLabel" to "Status planu",
        "diary.overallActivity" to "Aktywność ogólna",
        "diary.participants" to "Uczestnicy",
        "diary.participantStatusCancelled" to "Anulowano",
        "diary.participantStatusExcused" to "Usprawiedliwiony",
        "diary.participantStatusNone" to "Brak statusu",
        "diary.planActivitiesCount" to "Zaplanowane aktywności",
        "diary.planAddHint" to "Dodawaj nowe elementy planu za pomocą powyższych akcji.",
        "diary.planEmptyState" to "W planie treningowym nic jeszcze nie wpisano.",
        "diary.quickAdd" to "+ Szybkie dodawanie",
        "diary.quickCreate" to "Szybkie dodawanie",
        "diary.quickCreateFailed" to "Nie udało się utworzyć dnia treningowego.",
        "diary.quickCreateNoSlot" to "Nie znaleziono wolnego terminu treningu (wg harmonogramów grup, rok do przodu).",
        "diary.searchParticipants" to "Szukaj uczestników",
        "diary.selectGroup" to "Wybierz grupę...",
        "diary.selectGroupAndActivity" to "Wybierz grupę i wpisz aktywność.",
        "diary.selectParticipantAndNote" to "Wybierz uczestnika i wpisz notatkę.",
        "diary.selectTags" to "Wybierz tagi",
        "diary.selectTrainingGroup" to "Wybierz grupę treningową",
        "diary.selectTrainingGroupPlaceholder" to "Wybierz...",
        "diary.showImage" to "Pokaż obraz/rysunek",
        "diary.skipSuggestion" to "Kontynuuj bez sugestii",
        "diary.standardActivities" to "Aktywności standardowe",
        "diary.standardActivityAddError" to "Nie udało się dodać standardowej aktywności.",
        "diary.standardDurationShort" to "Min",
        "diary.startTime" to "Godzina rozpoczęcia",
        "diary.statusEmpty" to "Ten dzień treningowy jest jeszcze pusty.",
        "diary.statusInProgress" to "Ten dzień treningowy jest częściowo przygotowany.",
        "diary.statusOpenShort" to "Otwarte",
        "diary.statusReady" to "Godziny i plan treningowy są ustawione.",
        "diary.statusReadyShort" to "Gotowe",
        "diary.suggestion" to "Sugestia",
        "diary.timeblock" to "Blok czasowy",
        "diary.timeblocksCount" to "Bloki czasowe",
        "diary.title" to "Dziennik treningowy",
        "diary.today" to "Dzisiaj",
        "diary.trainingDayAsPDF" to "Pobierz dzień treningowy jako PDF",
        "diary.trainingDayAsPDFShort" to "Dzień treningowy jako PDF",
        "diary.trainingDayChecklist" to "Lista końcowa",
        "diary.trainingDaySection" to "Dzień treningowy",
        "diary.trainingDaySummaryPdfShort" to "Podsumowanie uczestników jako PDF",
        "diary.trainingEnd" to "Koniec treningu",
        "diary.trainingPlan" to "Plan treningowy",
        "diary.trainingPlanAsPDF" to "Plan treningowy jako PDF",
        "diary.trainingPlanPdfShort" to "Plan jako PDF",
        "diary.trainingStart" to "Początek treningu",
        "diary.trainingTimesUpdated" to "Godziny treningu zostały pomyślnie zaktualizowane.",
        "diary.trainingWindow" to "Okno treningowe",
        "diary.trainingWindowUnset" to "Jeszcze nie ustawiono",
        "diary.unassignedPlanItems" to "{count} otwarte",
        "diary.updateTimes" to "Aktualizuj godziny",
        "errors.ERROR_ACTIVITY_IMAGE_DELETE_FAILED" to "Błąd podczas usuwania obrazu.",
        "errors.ERROR_BAD_REQUEST" to "Nieprawidłowe żądanie.",
        "errors.ERROR_CLUB_ALREADY_EXISTS" to "Stowarzyszenie już istnieje.",
        "errors.ERROR_CLUB_NAME_REQUIRED" to "Proszę o nadanie stowarzyszeniu sensownej nazwy.",
        "errors.ERROR_CLUB_NAME_TOO_SHORT" to "Proszę o nadanie stowarzyszeniu sensownej nazwy.",
        "errors.ERROR_CLUB_NOT_FOUND" to "Nie znaleziono klubu.",
        "errors.ERROR_DIARY_ACTIVITY_PARTICIPANTS_UPDATE_FAILED" to "Błąd podczas aktualizowania uczestników działania",
        "errors.ERROR_DIARY_ASSIGN_ALL_PARTICIPANTS_FAILED" to "Błąd przy przypisywaniu wszystkich uczestników",
        "errors.ERROR_DIARY_ASSIGN_GROUP_FAILED" to "Grupa mapowania błędu",
        "errors.ERROR_DIARY_DATE_NOT_FOUND" to "Nie znaleziono daty",
        "errors.ERROR_DIARY_DATE_UPDATED" to "Data nie była (już) dostępna. Selektor dat został zaktualizowany. Spróbuj ponownie.",
        "errors.ERROR_DIARY_GROUP_ASSIGNMENT_UPDATE_FAILED" to "Błąd podczas aktualizowania przypisania do grupy",
        "errors.ERROR_DIARY_IMAGE_LOAD_FAILED" to "NIE udało się załadować obrazu",
        "errors.ERROR_DIARY_MEMBER_CREATE_FAILED" to "Błąd podczas tworzenia członka",
        "errors.ERROR_DIARY_NO_EXERCISE_DATA" to "Nie otrzymano danych ćwiczeń",
        "errors.ERROR_DIARY_NO_PARTICIPANTS" to "Brak chętnych na ten dzień szkoleniowy.",
        "errors.ERROR_DIARY_PARTICIPANT_ASSIGN_FAILED" to "Nie udało się przypisać uczestników.",
        "errors.ERROR_DIARY_PARTICIPANT_GROUP_ASSIGNMENT_UPDATE_FAILED" to "Błąd podczas aktualizowania przypisania grupy uczestników",
        "errors.ERROR_DIARY_PDF_GENERATION_FAILED" to "Błąd podczas generowania pliku PDF.",
        "errors.ERROR_DIARY_STATS_LOAD_FAILED" to "Nie udało się załadować statystyk.",
        "errors.ERROR_FORBIDDEN" to "Odmowa pozwolenia.",
        "errors.ERROR_GROUP_ALREADY_EXISTS" to "Grupa o tej nazwie już istnieje.",
        "errors.ERROR_GROUP_CANNOT_RENAME_PRESET" to "Nie można zmienić nazw grup domyślnych.",
        "errors.ERROR_GROUP_INVALID_PRESET_TYPE" to "Nieprawidłowy typ ustawienia wstępnego.",
        "errors.ERROR_GROUP_NAME_REQUIRED" to "Proszę wprowadzić nazwę grupy.",
        "errors.ERROR_GROUP_NOT_FOUND" to "Nie znaleziono grupy.",
        "errors.ERROR_INTERNAL_SERVER_ERROR" to "Wystąpił wewnętrzny błąd serwera.",
        "errors.ERROR_INVALID_PASSWORD" to "Nieprawidłowe hasło.",
        "errors.ERROR_LOG_NOT_FOUND" to "Nie znaleziono wpisu dziennika",
        "errors.ERROR_LOGIN_FAILED" to "Logowanie nie powiodło się.",
        "errors.ERROR_MEMBER_ALREADY_EXISTS" to "Członek już istnieje",
        "errors.ERROR_MEMBER_FIRSTNAME_REQUIRED" to "Imię jest wymagane.",
        "errors.ERROR_MEMBER_LASTNAME_REQUIRED" to "Nazwisko jest wymagane.",
        "errors.ERROR_MEMBER_NOT_FOUND" to "Nie znaleziono członków",
        "errors.ERROR_MEMBER_TRANSFER_BULK_FAILED" to "Błąd przesyłania zbiorczego: {message}",
        "errors.ERROR_MYTISCHTENNIS_ACCOUNT_NOT_LINKED" to "Żadne konto myTischtennis nie jest powiązane.",
        "errors.ERROR_MYTISCHTENNIS_CAPTCHA_REQUIRED" to "Wymagane CAPTCHA. MyTischtennis używa teraz CAPTCHA podczas logowania. Aby rozwiązać problem CAPTCHA, zaloguj się bezpośrednio na mytischtennis.de lub skontaktuj się z obsługą klienta.",
        "errors.ERROR_MYTISCHTENNIS_INVALID_PASSWORD" to "Nieprawidłowe hasło myTischtennis.",
        "errors.ERROR_MYTISCHTENNIS_LOGIN_FAILED" to "Logowanie nie powiodło się. Sprawdź swoje dane uwierzytelniające.",
        "errors.ERROR_MYTISCHTENNIS_NO_PASSWORD_SAVED" to "Żadne hasło nie zostało zapisane, a sesja wygasła. Proszę wpisać swoje hasło.",
        "errors.ERROR_MYTISCHTENNIS_PASSWORD_NOT_SAVED" to "Żadne hasło nie zostało zapisane. Proszę wpisać swoje hasło.",
        "errors.ERROR_MYTISCHTENNIS_SESSION_EXPIRED" to "Sesja wygasła. Proszę zalogować się ponownie.",
        "errors.ERROR_MYTISCHTENNIS_USER_NOT_FOUND" to "Nie znaleziono użytkownika myTischtennis.",
        "errors.ERROR_NOT_FOUND" to "Nie znaleziono.",
        "errors.ERROR_OFFICIAL_TOURNAMENT_PDF_UPLOAD" to "Błąd podczas przesyłania pliku PDF.",
        "errors.ERROR_SESSION_EXPIRED" to "Sesja wygasła.",
        "errors.ERROR_TEAM_LINK_TO_LEAGUE_REQUIRED" to "Proszę najpierw przypisać ligę do drużyny, aby móc przetworzyć dokumenty.",
        "errors.ERROR_TEAM_NOT_LINKED_TO_LEAGUE" to "Zespół ten nie jest przypisany do żadnej ligi.",
        "errors.ERROR_TEAM_PDF_LOAD_FAILED" to "Nie udało się załadować pliku PDF",
        "errors.ERROR_TEAM_STATS_LOAD_FAILED" to "Nie można załadować statystyk",
        "errors.ERROR_TOURNAMENT_CLASS_NAME_REQUIRED" to "Proszę wpisać nazwę zajęć!",
        "errors.ERROR_TOURNAMENT_NO_DATE" to "Brak daty turnieju!",
        "errors.ERROR_TOURNAMENT_NO_PARTICIPANTS" to "Nie znaleziono uczestników w dniu szkolenia w tym dniu!",
        "errors.ERROR_TOURNAMENT_NO_TRAINING_DAY" to "Nie znaleziono dnia szkoleniowego dla {date}!",
        "errors.ERROR_TOURNAMENT_NO_VALID_PARTICIPANTS" to "Nie znaleziono ważnych uczestników w dniu szkolenia w tej dacie!",
        "errors.ERROR_TOURNAMENT_NOT_FOUND" to "Nie znaleziono turnieju",
        "errors.ERROR_TOURNAMENT_PDF_GENERATION_FAILED" to "Błąd podczas generowania pliku PDF",
        "errors.ERROR_TOURNAMENT_SELECT_FIRST" to "Najpierw wybierz turniej.",
        "errors.ERROR_TRAINING_STATS_LOAD_FAILED" to "Błąd podczas ładowania statystyk treningu",
        "errors.ERROR_UNAUTHORIZED" to "Nieautoryzowany.",
        "errors.ERROR_UNKNOWN_ERROR" to "Wystąpił nieznany błąd.",
        "errors.ERROR_USER_NOT_FOUND" to "Nie znaleziono użytkownika.",
        "errors.ERROR_VALIDATION_FAILED" to "Nieudana weryfikacja",
        "errors.SUCCESS_DIARY_GROUP_ASSIGNMENT_UPDATED" to "Zaktualizowano mapowanie grup",
        "errors.SUCCESS_DIARY_MEMBER_CREATED" to "Członek „{name}” został pomyślnie utworzony i dodany!",
        "errors.SUCCESS_OFFICIAL_TOURNAMENT_PDF_UPLOAD" to "Przesyłanie powiodło się.",
        "home.authenticatedFeatures.keepDiary" to "Prowadź dziennik treningowy",
        "home.authenticatedFeatures.keepDiaryDesc" to "Dokumentuj działania szkoleniowe, uczestników, działania i notatki z każdego dnia szkoleniowego.",
        "home.authenticatedFeatures.manageMembers" to "Zarządzaj członkami",
        "home.authenticatedFeatures.manageMembersDesc" to "Zarządzaj członkami swojego klubu, twórz grupy treningowe i śledź wszystkich uczestników.",
        "home.authenticatedFeatures.manageTournaments" to "Zarządzaj turniejami",
        "home.authenticatedFeatures.manageTournamentsDesc" to "Twórz turnieje wewnętrzne i otwarte, importuj oficjalne turnieje i zarządzaj wpisami.",
        "home.authenticatedFeatures.myTischtennisIntegration" to "Integracja MyTable Tennis",
        "home.authenticatedFeatures.myTischtennisIntegrationDesc" to "Automatycznie synchronizuj wyniki gier i statystyki z MyTischtennis.de.",
        "home.authenticatedFeatures.pdfExport" to "Eksport PDF",
        "home.authenticatedFeatures.pdfExportDesc" to "Eksportuj dni szkoleniowe do pliku PDF z uczestnikami, działaniami i statystykami.",
        "home.authenticatedFeatures.statistics" to "Statystyki i oceny",
        "home.authenticatedFeatures.statisticsDesc" to "Uzyskaj szczegółowe przeglądy szkoleń i uczestnictwa, a także statystyki aktywności.",
        "home.authenticatedFeatures.teamManagement" to "Zarządzanie zespołem",
        "home.authenticatedFeatures.teamManagementDesc" to "Zarządzaj drużynami, ligami, terminarzami i wynikami swojego klubu.",
        "home.authenticatedFeatures.trainingGroups" to "Grupy i godziny treningów",
        "home.authenticatedFeatures.trainingGroupsDesc" to "Organizuj grupy szkoleniowe, definiuj godziny szkoleń i zarządzaj zadaniami grupowymi.",
        "home.faq" to "Często zadawane pytania",
        "home.faqFree.answer" to "Tak, możesz zacząć za darmo. Rozszerzenia mogą nastąpić później.",
        "home.faqFree.question" to "Czy korzystanie z niego jest bezpłatne?",
        "home.faqInstallation.answer" to "Nie, to aplikacja internetowa. Używasz go bezpośrednio w przeglądarce – na komputerze stacjonarnym, tablecie i smartfonie.",
        "home.faqInstallation.question" to "Czy potrzebuję instalacji?",
        "home.faqMyTischtennis.answer" to "Tak, po instalacji aplikacja automatycznie synchronizuje się z MyTischtennis.de i importuje wyniki gier oraz statystyki.",
        "home.faqMyTischtennis.question" to "Czy integracja MyTischtennis działa automatycznie?",
        "home.faqPermissions.answer" to "Istnieją cztery role: Administrator, Coach, Lider Zespołu i Członek. Każda rola ma określone uprawnienia, które można dostosować.",
        "home.faqPermissions.question" to "Jak działa system autoryzacji?",
        "home.faqPrivacy.answer" to "Opieramy się na gospodarce danymi, przejrzystych zezwoleniach, dostępie opartym na rolach i kompletnych dziennikach aktywności. Aplikacja jest zgodna z RODO.",
        "home.faqPrivacy.question" to "A co z ochroną danych?",
        "home.faqTournaments.answer" to "Możesz zarządzać turniejami wewnętrznymi, turniejami otwartymi i turniejami oficjalnymi (np. stowarzyszeń). Można importować oficjalne turnieje.",
        "home.faqTournaments.question" to "Jakie typy turniejów są obsługiwane?",
        "home.faqTrainingGroups.answer" to "Tak, możesz tworzyć grupy szkoleniowe, definiować godziny treningów i przypisywać członków do grup. Dziennik treningowy automatycznie sugeruje odpowiednie grupy i godziny.",
        "home.faqTrainingGroups.question" to "Czy mogę zarządzać grupami i godzinami treningów?",
        "home.features.activityLog" to "Dziennik aktywności",
        "home.features.activityLogDesc" to "Pełne rejestrowanie wszystkich działań w celu zapewnienia przejrzystości i identyfikowalności.",
        "home.features.keepDiary" to "Prowadź dziennik treningowy",
        "home.features.keepDiaryDesc" to "Dokumentuj treść, zakres i frekwencję w każdej jednostce – w sposób zrozumiały i uporządkowany.",
        "home.features.manageMembers" to "Zarządzaj członkami",
        "home.features.manageMembersDesc" to "Twórz profile członków, twórz grupy i aktualizuj statusy kontaktów i zatwierdzeń.",
        "home.features.myTischtennisIntegration" to "Integracja MyTable Tennis",
        "home.features.myTischtennisIntegrationDesc" to "Automatyczna synchronizacja z MyTischtennis.de w celu uzyskania wyników gier i statystyk.",
        "home.features.officialTournaments" to "Oficjalne turnieje",
        "home.features.officialTournamentsDesc" to "Importuj oficjalne turnieje i zarządzaj nimi, zarządzaj wpisami i wynikami.",
        "home.features.organizeSchedules" to "Organizuj plany gry",
        "home.features.organizeSchedulesDesc" to "Planuj gry, turnieje i wydarzenia, w tym grupy, rundy i wyniki.",
        "home.features.pdfExport" to "Eksport PDF",
        "home.features.pdfExportDesc" to "Eksportuj dni szkoleniowe do pliku PDF z uczestnikami, działaniami i statystykami.",
        "home.features.permissionSystem" to "System autoryzacji",
        "home.features.permissionSystemDesc" to "Dostęp oparty na rolach (administrator, trener, kapitan drużyny, członek) z indywidualnymi uprawnieniami.",
        "home.features.predefinedActivities" to "Predefiniowane działania",
        "home.features.predefinedActivitiesDesc" to "Używaj szablonów do powtarzających się ćwiczeń i przyspieszaj tworzenie dokumentacji.",
        "home.features.security" to "Bezpieczeństwo i RODO",
        "home.features.securityDesc" to "Architektura przyjazna ochronie danych, zgody członków i przejrzysty dostęp.",
        "home.features.statistics" to "Statystyki i ocena",
        "home.features.statisticsDesc" to "Otrzymuj przeglądy szkoleń i uczestnictwa, rozpoznaj rozwój i planuj konkretnie.",
        "home.features.teamManagement" to "Zarządzanie zespołem",
        "home.features.teamManagementDesc" to "Zarządzaj drużynami, ligami, terminarzami i wynikami swojego klubu.",
        "home.features.trainingGroups" to "Grupy i godziny treningów",
        "home.features.trainingGroupsDesc" to "Organizuj grupy szkoleniowe, definiuj godziny szkoleń i zarządzaj zadaniami grupowymi.",
        "home.forWhom" to "Dla kogo przeznaczony jest dziennik treningowy?",
        "home.forWhomText" to "TrainingDiary to kompleksowa platforma dla klubów, wydziałów i zespołów trenerskich. Łączy w sobie zarządzanie członkami z grupami treningowymi i czasami, szczegółowy dziennik treningowy, kompleksową organizację turniejów (turnieje wewnętrzne, otwarte i oficjalne), zarządzanie zespołem z integracją ligową, synchronizację MyTischtennis, przydatne statystyki i oceny, a także elastyczny system autoryzacji w nowoczesnej aplikacji internetowej. Dzięki jasnym rolom (administrator, trener, lider zespołu, członek) i indywidualnym upoważnieniom osoby odpowiedzialne zachowują kontrolę, podczas gdy członkowie mogą uczestniczyć w procesie w sposób samostanowiący. Idealny do sportów zespołowych, rakietowych i indywidualnych – od poziomu juniorskiego do zaawansowanego. Zgodny z RODO z przejrzystymi zgodami i pełnym dziennikiem aktywności.",
        "home.haveAccount" to "Mam już konto",
        "home.heroFeatures.memberManagement" to "Zarządzanie członkami i grupami",
        "home.heroFeatures.myTischtennis" to "Integracja MyTable Tennis",
        "home.heroFeatures.statistics" to "Statystyki i oceny",
        "home.heroFeatures.teamManagement" to "Zarządzanie zespołem i ligi",
        "home.heroFeatures.tournaments" to "Turnieje (wewnętrzne, otwarte, oficjalne)",
        "home.heroFeatures.trainingDiary" to "Dziennik szkoleń i dokumentacja",
        "home.heroFeatures.trainingGroups" to "Grupy szkoleniowe i godziny szkoleń",
        "home.heroSubtitle" to "TrainingDiary to kompleksowe rozwiązanie dla klubów: zarządzanie członkami, grupy treningowe, godziny treningów, dziennik treningowy, organizacja turniejów, zarządzanie zespołem, integracja z MyTable Tennis, statystyki i wiele więcej - zgodne z RODO i łatwe w użyciu.",
        "home.heroTitle" to "Zarządzanie klubem, planowanie treningów i turniejów – wszystko w jednym miejscu",
        "home.howItWorks" to "Tak to działa",
        "home.registerNow" to "Zarejestruj się teraz za darmo",
        "home.rolesAndPrivacy" to "Role, uprawnienia i RODO",
        "home.startFree" to "Zacznij za darmo",
        "home.step1.description" to "Załóż konto za darmo i aktywuj je poprzez e-mail.",
        "home.step1.title" to "Rejestr",
        "home.step2.description" to "Stwórz swój klub, zaproś członków i załóż grupy.",
        "home.step2.title" to "Utwórz klub",
        "home.step3.description" to "Planuj spotkania, dokumentuj szkolenia i śledź postępy.",
        "home.step3.title" to "Planuj i dokumentuj",
        "home.welcome" to "Witamy w dzienniku treningowym",
        "home.welcomeBack" to "Witamy ponownie! Jesteś zalogowany pomyślnie.",
        "home.whatCanYouDo" to "Co możesz zrobić z dziennikiem treningowym?",
        "imageDialog.close" to "Zamknąć",
        "imageDialog.noImageAvailable" to "Brak dostępnego zdjęcia",
        "imageDialog.title" to "Ekran",
        "imageViewer.camera" to "Kamera",
        "imageViewer.delete" to "Usuwać",
        "imageViewer.deleteImage" to "Usuń obraz",
        "imageViewer.nextImage" to "Następny obraz",
        "imageViewer.noImageAvailable" to "Brak dostępnego zdjęcia",
        "imageViewer.previousImage" to "poprzedni obraz",
        "imageViewer.rotateLeft" to "Obróć o 90° w lewo",
        "imageViewer.rotateRight" to "Obróć o 90° w prawo",
        "imageViewer.selectFiles" to "Wybierz opcję Pliki",
        "imageViewer.setAsPrimary" to "ustawić jako obraz główny",
        "imageViewer.setAsPrimaryButton" to "Ustaw wyróżniony obraz",
        "imprint.contact" to "Kontakt",
        "imprint.serviceProvider" to "Nazwa usługodawcy",
        "imprint.title" to "Nota prawna",
        "languages.de" to "Deutsch (Niemiecki)",
        "languages.de-CH" to "Schwiizerdütsch (Niemiecki szwajcarski)",
        "languages.en-AU" to "English (Angielski (AU))",
        "languages.en-GB" to "English (Angielski (GB))",
        "languages.en-US" to "English (Angielski (US))",
        "languages.es" to "Español (Hiszpański)",
        "languages.fil" to "Filipiński",
        "languages.fr" to "Français (Francuski)",
        "languages.it" to "Italiano (Włoski)",
        "languages.ja" to "日本語 (Japoński)",
        "languages.pl" to "Polski",
        "languages.th" to "ไทย (Tajski)",
        "languages.tl" to "tagalski",
        "languages.zh" to "中文 (Chiński)",
        "legal.backToHome" to "Powrót do strony głównej",
        "legal.imprint" to "Nota prawna",
        "legal.privacyPolicy" to "Polityka prywatności",
        "logs.actions" to "Działania",
        "logs.all" to "Wszystko",
        "logs.apiRequests" to "Żądania API",
        "logs.applyFilters" to "Zastosuj filtr",
        "logs.backend" to "Ustawienia backendu",
        "logs.clearFilters" to "Odwracać",
        "logs.cronJobs" to "Praca Crona",
        "logs.details" to "Details",
        "logs.displayed" to "wystawiany",
        "logs.displayedLabel" to "Oglądane",
        "logs.error" to "Błąd",
        "logs.errorLabel" to "Błąd",
        "logs.errorLoading" to "Błąd podczas ładowania dzienników",
        "logs.executionTime" to "Czas wykonania",
        "logs.from" to "Z",
        "logs.httpMethod" to "Metoda HTTP",
        "logs.justNow" to "właśnie",
        "logs.loadingLogs" to "Ładowanie dzienników...",
        "logs.logDetails" to "Szczegóły dziennika",
        "logs.logDetailsLabels.error" to "Błąd",
        "logs.logDetailsLabels.executionTime" to "Czas wykonania",
        "logs.logDetailsLabels.ip" to "IP",
        "logs.logDetailsLabels.method" to "Metoda",
        "logs.logDetailsLabels.path" to "ścieżka",
        "logs.logDetailsLabels.requestBody" to "Treść żądania",
        "logs.logDetailsLabels.responseBody" to "Treść odpowiedzi",
        "logs.logDetailsLabels.schedulerJob" to "Zadanie harmonogramu",
        "logs.logDetailsLabels.status" to "status",
        "logs.logDetailsLabels.time" to "Czas",
        "logs.logDetailsLabels.type" to "Typ",
        "logs.logType" to "Typ dziennika",
        "logs.logTypeLabels.api_request" to "Żądanie API",
        "logs.logTypeLabels.cron_job" to "Crona Joba",
        "logs.logTypeLabels.manual" to "Podręcznik",
        "logs.logTypeLabels.scheduler" to "harmonogram",
        "logs.manual" to "Wykonania ręczne",
        "logs.method" to "Metoda",
        "logs.minutesAgo" to "{n} minut temu",
        "logs.mytischtennis" to "mójTenis stołowy",
        "logs.next" to "Następny",
        "logs.of" to "przez",
        "logs.ownBackend" to "Własny backend",
        "logs.page" to "Strona",
        "logs.path" to "ścieżka",
        "logs.pathPlaceholder" to "np. /api/dziennik",
        "logs.previous" to "Poprzedni",
        "logs.recordsFound" to "Znaleziono zapisy",
        "logs.scheduler" to "harmonogram",
        "logs.secondsAgo" to "{n} sekund temu",
        "logs.status" to "status",
        "logs.subtitle" to "Przegląd wszystkich żądań API, odpowiedzi i wykonań",
        "logs.successfullyLoaded" to "Załadowano pomyślnie",
        "logs.time" to "Czas",
        "logs.title" to "Dzienniki systemowe",
        "logs.to" to "Do",
        "logs.total" to "Całkowity",
        "logs.type" to "Typ",
        "matchReport.analyzeNuscore" to "analiza nuscore",
        "matchReport.createLocalCopy" to "Utwórz kopię lokalną",
        "matchReport.hideAnalyzer" to "Ukryj analizator",
        "matchReportApi.availablePlayers" to "Dostępni gracze",
        "matchReportApi.bothTeamsAppeared" to "Rywalizowały obie drużyny",
        "matchReportApi.clickToRemove" to "Kliknij, aby usunąć",
        "matchReportApi.completed" to "Zamknięte",
        "matchReportApi.completion" to "Ukończenie",
        "matchReportApi.endTime" to "czas końca",
        "matchReportApi.errorLoading" to "Błąd ładowania danych",
        "matchReportApi.general" to "Ogólny",
        "matchReportApi.greeting" to "Powitanie",
        "matchReportApi.guestLineup" to "Konfiguracja gościa",
        "matchReportApi.guestPin" to "Klub gościnny PIN",
        "matchReportApi.guestTeamNotAppeared" to "Zespół gościnny {team} nie brał udziału w zawodach",
        "matchReportApi.homeLineup" to "Instalacja w domu",
        "matchReportApi.homePin" to "Klub domowy PIN",
        "matchReportApi.homeTeamNotAppeared" to "Zespół gospodarzy {team} nie brał udziału w zawodach",
        "matchReportApi.loading" to "Ładowanie danych raportu meczowego...",
        "matchReportApi.noLineupData" to "Brak danych instalacyjnych",
        "matchReportApi.notAppeared" to "Nie wszyscy wzięli udział",
        "matchReportApi.pending" to "Aż do",
        "matchReportApi.pinInput" to "Wprowadzenie PIN-u",
        "matchReportApi.playSystem" to "System gier",
        "matchReportApi.rank" to "Koło",
        "matchReportApi.result" to "Wprowadzanie wyników",
        "matchReportApi.retry" to "Spróbuj ponownie",
        "matchReportApi.selectedPlayers" to "Wybrany Gracz",
        "matchReportApi.setCurrentTime" to "Ustaw aktualny czas",
        "matchReportApi.signLineup" to "Instalacja znaku",
        "matchReportApi.startTime" to "czas rozpoczęcia",
        "matchReportApi.status" to "status",
        "matchReportApi.vs" to "vs",
        "matchReportHeaderActions.copied" to "Skopiowano!",
        "matchReportHeaderActions.copyError" to "Błąd podczas kopiowania kodu PIN",
        "matchReportHeaderActions.copyPin" to "Skopiuj PIN",
        "matchReportHeaderActions.copyPinTitle" to "Skopiuj do schowka",
        "matchReportHeaderActions.insertPin" to "WPROWADŹ PIN",
        "matchReportHeaderActions.insertPinTitle" to "Wstawianie automatyczne",
        "matchReportHeaderActions.noPinAvailable" to "Brak PIN-u",
        "memberActivities.activity" to "Ćwiczenia",
        "memberActivities.all" to "Wszystko",
        "memberActivities.close" to "Zamknąć",
        "memberActivities.dates" to "Dane",
        "memberActivities.frequency" to "Częstotliwość",
        "memberActivities.last3Months" to "Ostatnie 3 miesiące",
        "memberActivities.last4Weeks" to "ostatnie 2 miesiące",
        "memberActivities.last6Months" to "ostatnie pół roku",
        "memberActivities.lastYear" to "W ubiegłym roku",
        "memberActivities.loading" to "Ładowanie ćwiczeń...",
        "memberActivities.more" to "Inny",
        "memberActivities.noActivities" to "Nie znaleziono ćwiczeń w wybranym okresie.",
        "memberActivities.period" to "Okres",
        "memberActivities.showLess" to "pokaż mniej",
        "memberActivities.title" to "Ćwiczenia wg",
        "memberGallery.imageSize" to "Rozmiar obrazu",
        "memberGallery.loading" to "Ładowanie galerii...",
        "memberGallery.noImage" to "Brak obrazu",
        "memberGallery.noMembersWithImages" to "Nie znaleziono członków ze zdjęciami.",
        "memberGallery.title" to "Galeria członków",
        "memberGallery.titleWithDate" to "Galeria członków — kliknij obraz, aby dodać go jako uczestnika",
        "memberNotes.add" to "Dodać",
        "memberNotes.memberImage" to "Członek obrazu",
        "memberNotes.newNote" to "Nowa notatka",
        "memberNotes.notes" to "Notatki",
        "memberNotes.phone" to "Nr telefonu",
        "memberNotes.selectTags" to "Wybierz Tagi",
        "memberNotes.tags" to "Tags",
        "memberNotes.title" to "Notatki dla",
        "members.actions" to "Akcje",
        "members.active" to "Aktywny",
        "members.activeMembers" to "Aktywni członkowie",
        "members.addEmail" to "Dodaj adres e-mail",
        "members.addGroup" to "Dodaj grupę...",
        "members.addPhone" to "Dodaj numer telefonu",
        "members.address" to "Adres",
        "members.adultReleaseApproved" to "Dopuszczony do dorosłych",
        "members.adultReserveApproved" to "Rezerwa dorosłych",
        "members.adults" to "Dorośli (20+)",
        "members.age" to "Wiek",
        "members.ageFromPlaceholder" to "od",
        "members.ageGroup" to "Kategoria wiekowa",
        "members.ageRange" to "Wiek od - do",
        "members.ageToPlaceholder" to "do",
        "members.batchFormsMarkedEmpty" to "Brak niezweryfikowanych formularzy w bieżącym zaznaczeniu.",
        "members.batchFormsMarkedSuccess" to "Oznaczono {count} formularz(y) jako zweryfikowane.",
        "members.batchMarkedRegularEmpty" to "Brak członków próbnych w bieżącym zaznaczeniu.",
        "members.batchMarkedRegularSuccess" to "Oznaczono {count} członka/ów próbnych jako regularnych.",
        "members.batchPartialFailure" to "{success} zakończonych sukcesem, {failed} nieudanych.",
        "members.birthdate" to "Data urodzenia",
        "members.bulkActions" to "Akcje zbiorcze",
        "members.camera" to "Aparat",
        "members.change" to "Zmień",
        "members.city" to "Miasto",
        "members.clearFields" to "Wyczyść pola",
        "members.clearFilters" to "Resetuj filtry",
        "members.clickTtRequestAction" to "Poproś o uprawnienie Click-TT",
        "members.clickTtRequestConfirm" to "Czy uruchomić automatyczny wniosek Click-TT dla {name}?",
        "members.clickTtRequestError" to "Nie udało się wysłać wniosku Click-TT.",
        "members.clickTtRequestFailedLog" to "Wniosek Click-TT nie powiódł się",
        "members.clickTtRequestHint" to "Wniosek jest przetwarzany automatycznie przez backendowy workflow Click-TT.",
        "members.clickTtRequestPending" to "Wniosek Click-TT w toku",
        "members.clickTtRequestPendingShort" to "W toku...",
        "members.clickTtRequestShort" to "Kliknij przycisk TT",
        "members.clickTtRequestSuccess" to "Zaloguj się jeszcze do click-tt i wyślij tam wniosek.",
        "members.clickTtRequestTitle" to "Uruchom wniosek Click-TT",
        "members.clickTtSubmitted" to "Click-TT wysłane",
        "members.closeEditor" to "Zamknij edytor",
        "members.composeEmail" to "Przygotuj e-mail",
        "members.contact" to "Kontakt",
        "members.copyContactSummary" to "Kopiuj podsumowanie kontaktów",
        "members.copyContactSummarySuccess" to "Podsumowanie kontaktów skopiowano do schowka.",
        "members.copyEmails" to "Kopiuj e-maile",
        "members.copyEmailsEmpty" to "Brak adresów e-mail w bieżącym zaznaczeniu.",
        "members.copyEmailsSuccess" to "Lista e-mail skopiowana do schowka.",
        "members.copyPhones" to "Kopiuj telefony",
        "members.copyPhonesEmpty" to "Brak numerów telefonu w bieżącym zaznaczeniu.",
        "members.copyPhonesSuccess" to "Lista telefoniczna skopiowana do schowka.",
        "members.create" to "Utwórz",
        "members.createNewMember" to "Utwórz nowego członka",
        "members.dataIssueAddress" to "Brak adresu",
        "members.dataIssueBirthdate" to "Brak daty urodzenia",
        "members.dataIssueCity" to "Brak miasta",
        "members.dataIssueEmail" to "Brak e-maila",
        "members.dataIssueGender" to "Płeć nieokreślona",
        "members.dataIssuePhone" to "Brak telefonu",
        "members.dataIssuePostalCode" to "Brak kodu pocztowego",
        "members.dataIssueStreet" to "Brak ulicy",
        "members.dataIssueTrainingGroup" to "Brak grupy treningowej",
        "members.dataQuality" to "Jakość danych",
        "members.dataQualityComplete" to "Dane kompletne",
        "members.deactivateMember" to "Dezaktywuj członka",
        "members.deactivateMemberConfirm" to "Czy na pewno chcesz dezaktywować „{name}”?",
        "members.deactivateMemberTitle" to "Dezaktywuj członka",
        "members.deleteImageConfirm" to "Czy na pewno chcesz usunąć to zdjęcie?",
        "members.deleteImageTitle" to "Usuń zdjęcie",
        "members.editHint" to "Kliknięcie wiersza otwiera edytor.",
        "members.editMember" to "Edytuj członka",
        "members.editorAssignTrainingGroupHint" to "Przypisz co najmniej jedną grupę treningową.",
        "members.editorCreateHint" to "Utwórz nowego członka i od razu wprowadź dane kontaktowe.",
        "members.editorEditHint" to "Edytuj dane użytkownika {name}.",
        "members.editorRecommendedEntry" to "Zalecany wpis",
        "members.emailAddress" to "Adres e-mail",
        "members.emailAddressShort" to "E-mail",
        "members.emails" to "Adresy e-mail",
        "members.errorAddingToGroup" to "Błąd podczas dodawania do grupy",
        "members.errorDeactivatingMember" to "Błąd podczas dezaktywacji członka",
        "members.errorDeletingImage" to "Nie udało się usunąć zdjęcia",
        "members.errorLoadingImage" to "Błąd podczas ładowania zdjęcia",
        "members.errorLoadingMembers" to "Nie udało się załadować listy członków.",
        "members.errorLoadingTrainingParticipations" to "Błąd podczas ładowania udziałów treningowych",
        "members.errorMarkingForm" to "Błąd podczas oznaczania formularza.",
        "members.errorRemovingFromGroup" to "Błąd podczas usuwania z grupy",
        "members.errorRemovingTestMembership" to "Błąd podczas usuwania członkostwa próbnego.",
        "members.errorRotatingImage" to "Błąd podczas obracania zdjęcia",
        "members.errorSavingMember" to "Błąd podczas zapisywania członka",
        "members.errorSettingPrimaryImage" to "Nie udało się ustawić głównego zdjęcia",
        "members.errorTransfer" to "Błąd transferu",
        "members.errorUpdatingRatings" to "Błąd podczas aktualizacji wartości TTR/QTTR",
        "members.errorUploadingImage" to "Nie udało się przesłać zdjęcia",
        "members.exercises" to "Ćwiczenia",
        "members.exportCsv" to "Eksportuj CSV",
        "members.exportCsvFile" to "wybor-czlonkow.csv",
        "members.exportEmails" to "E-mail",
        "members.exportMembersSelected" to "aktualnie wybrani członkowie",
        "members.exportPhones" to "Telefon",
        "members.exportPreview" to "Podgląd eksportu",
        "members.exportPreviewEmpty" to "Brak członków w bieżącym zaznaczeniu",
        "members.exportPreviewNames" to "Podgląd",
        "members.exportReachableByEmail" to "z adresem e-mail",
        "members.exportReachableByPhone" to "z numerem telefonu",
        "members.firstName" to "Imię",
        "members.formHandedOver" to "Formularz członkowski przekazany",
        "members.formMarkedAsHandedOver" to "Formularz członkowski oznaczono jako przekazany.",
        "members.gender" to "Płeć",
        "members.genderDiverse" to "Inna",
        "members.genderFemale" to "Żeńska",
        "members.genderMale" to "Męska",
        "members.genderUnknown" to "Nieznana",
        "members.generatePhoneList" to "Generuj listę telefoniczną",
        "members.groupPhotoCrop" to "Przetwórz zdjęcie grupowe",
        "members.groupPhotoCropSaved" to "Zdjęcie członka zapisane ze zdjęcia grupowego.",
        "members.image" to "Obraz",
        "members.imageDeleted" to "Zdjęcie zostało usunięte.",
        "members.imageInternet" to "Zdjęcie (www?)",
        "members.imagePreview" to "Podgląd zdjęcia członka",
        "members.imageUpdated" to "Zdjęcie zaktualizowano",
        "members.inactive" to "nieaktywny",
        "members.inactiveMembers" to "Nieaktywni członkowie",
        "members.j11" to "U11",
        "members.j13" to "U13",
        "members.j15" to "U15",
        "members.j17" to "U17 (17 lat i mniej)",
        "members.j19" to "U19",
        "members.j9" to "U9",
        "members.lastName" to "Nazwisko",
        "members.lastTrainingFilter" to "Ostatni trening",
        "members.lastTrainingFilterHasDate" to "Z zapisaną datą",
        "members.lastTrainingFilterHint" to "Tabela: bieżący sezon w kolumnie AK. Pełne szczegóły (oba sezony, ostatni trening, udziały) po najechaniu na wiersz.",
        "members.lastTrainingFilterNoDate" to "Bez ostatniego treningu",
        "members.lastTrainingFilterNotInTraining" to "„Nie trenuje już”",
        "members.loadingMembers" to "Ładowanie członków...",
        "members.m11" to "G11",
        "members.m13" to "G13",
        "members.m15" to "G15",
        "members.m19" to "G19",
        "members.m9" to "G9",
        "members.markFormReceived" to "Oznacz formularz jako zweryfikowany",
        "members.markFormsForSelection" to "Zweryfikuj formularze zaznaczenia",
        "members.markRegular" to "Oznacz jako regularny",
        "members.markRegularForSelection" to "Oznacz zaznaczenie jako regularne",
        "members.memberDeactivated" to "Członek został dezaktywowany",
        "members.memberDetails" to "Szczegóły członka",
        "members.memberFormHandedOver" to "Formularz członkowski przekazany",
        "members.memberImage" to "Zdjęcie członka",
        "members.memberImages" to "Zdjęcia członka",
        "members.memberInfo" to "Informacje o członku",
        "members.memberScope" to "Zakres członków",
        "members.missingTtrHistoryId" to "Brak zapisanego identyfikatora myTischtennis",
        "members.name" to "Nazwisko, imię",
        "members.newMember" to "Nowy członek",
        "members.noAddressShort" to "Brak adresu",
        "members.noEmailShort" to "Brak e-maila",
        "members.noGroupsAssigned" to "Brak przypisanych grup",
        "members.noGroupsAvailable" to "Brak dostępnych grup",
        "members.noOpenTasks" to "Brak otwartych zadań",
        "members.noPhoneShort" to "Brak telefonu",
        "members.notes" to "Notatki",
        "members.noTestMembership" to "Nie jest już członkiem próbnym",
        "members.notInTrainingTooltip" to "Brak udziału od {weeks} tygodni treningowych",
        "members.onlyActiveMembers" to "Uwzględniani są tylko aktywni członkowie",
        "members.openTasks" to "Otwarte zadania",
        "members.parent" to "Rodzic",
        "members.parentFallback" to "Rodzic",
        "members.parentName" to "Imię (np. matka, ojciec)",
        "members.phoneList" to "lista-telefoniczna.pdf",
        "members.phoneListForSelection" to "Lista telefoniczna dla zaznaczenia",
        "members.phoneListSelectionFile" to "lista-telefoniczna-zaznaczenie.pdf",
        "members.phoneNumber" to "Numer telefonu",
        "members.phoneNumberShort" to "Tel.",
        "members.phones" to "Numery telefonów",
        "members.picsInInternetAllowed" to "Zdjęcia dozwolone w internecie",
        "members.postalCode" to "Kod pocztowy",
        "members.previewLastTraining" to "Ostatni trening",
        "members.previewNoLastTraining" to "Brak udziału do tej pory",
        "members.primary" to "Główny",
        "members.primaryImageUpdated" to "Zaktualizowano główne zdjęcie.",
        "members.remove" to "Usuń",
        "members.resultsVisible" to "widocznych członków",
        "members.rowTooltipSeparator" to "·",
        "members.scopeActive" to "Aktywni",
        "members.scopeActiveDataIncomplete" to "Aktywny + niepełne dane",
        "members.scopeActiveTest" to "Aktywni + próba",
        "members.scopeAll" to "Wszyscy",
        "members.scopeDataIncomplete" to "Niepełne dane",
        "members.scopeInactive" to "Nieaktywni",
        "members.scopeNeedsForm" to "Formularz niezweryfikowany",
        "members.scopeNotTraining" to "Już nie trenuje",
        "members.scopeTest" to "Próba",
        "members.search" to "Szukaj",
        "members.searchAndFilter" to "Wyszukiwanie i filtry",
        "members.searchPlaceholder" to "Szukaj po nazwisku, mieście, telefonie lub e-mailu",
        "members.selectFile" to "Wybierz plik",
        "members.showInactiveMembers" to "Pokaż nieaktywnych członków",
        "members.showTrainingParticipationsColumn" to "Pokaż kolumnę „Udziały w treningu”",
        "members.showTtrHistory" to "Pokaż historię TTR",
        "members.sixOrMoreParticipations" to "6 lub więcej udziałów w treningu",
        "members.sortAge" to "Wiek",
        "members.sortBirthday" to "Data urodzenia",
        "members.sortBy" to "Sortuj według",
        "members.sortFirstName" to "Imię",
        "members.sortLastName" to "Nazwisko",
        "members.sortLastTraining" to "Ostatni trening",
        "members.sortOpenTasks" to "Otwarte zadania",
        "members.sortQttr" to "Wartość QTTR",
        "members.status" to "status",
        "members.street" to "Ulica",
        "members.subtitle" to "Szukaj, filtruj i edytuj członków bezpośrednio.",
        "members.taskActionMarkRegular" to "Oznacz jako regularny",
        "members.taskActionRequest" to "Poproś",
        "members.taskActionReview" to "Otwórz",
        "members.taskActionVerify" to "Zweryfikuj",
        "members.taskAssignTrainingGroup" to "Przypisz grupę treningową",
        "members.taskCheckClickTt" to "Sprawdź uprawnienie Click-TT",
        "members.taskCheckDataQuality" to "Sprawdź jakość danych",
        "members.taskCheckTrainingStatus" to "Sprawdź status treningowy",
        "members.taskReviewTrialStatus" to "Sprawdź status próbny",
        "members.taskVerifyForm" to "Zweryfikuj formularz",
        "members.testMember" to "Próba",
        "members.testMembers" to "Członkowie próbni",
        "members.testMembership" to "Członkostwo próbne",
        "members.testMembershipRemoved" to "Usunięto członkostwo próbne.",
        "members.threeOrMoreParticipations" to "3 lub więcej udziałów w treningu",
        "members.title" to "Członkowie",
        "members.toggleSortDirection" to "Zmień kierunek sortowania",
        "members.trainingGroups" to "Grupy treningowe",
        "members.trainingParticipations" to "Udziały w treningach",
        "members.transferErrorTitle" to "Błąd transferu",
        "members.transferMembers" to "Przenieś członków",
        "members.transferSuccessTitle" to "Transfer zakończony sukcesem",
        "members.ttAdult" to "Dorośli (brak juniora wg terminu)",
        "members.ttAgeClassCol" to "Kategoria (TT)",
        "members.ttFilterGroupJ" to "Dziewczęta i chłopcy (mieszane)",
        "members.ttFilterGroupM" to "Tylko dziewczęta",
        "members.ttrQttr" to "TTR/QTTR",
        "members.ttSeasonCurrentTag" to "bieżący",
        "members.ttSeasonFilter" to "Sezon (termin)",
        "members.ttSeasonNextTag" to "następny",
        "members.ttStichtagHint" to "Termin 1.01 (DTTB). Chłopcy: tylko klasy J. Dziewczęta: J i M.",
        "members.updateRatings" to "Aktualizuj TTR/QTTR z myTischtennis",
        "members.updating" to "Aktualizowanie...",
        "members.visibleMembers" to "Widoczni członkowie",
        "members.wantsToPlay" to "Chce grać",
        "memberSelection.close" to "Zamknąć",
        "memberSelection.deselectAll" to "Odznacz wszystko",
        "memberSelection.generatePdf" to "Wygeneruj plik PDF",
        "memberSelection.members" to "Członkowie",
        "memberSelection.noRecommendations" to "Nie znaleziono pasujących rekomendacji.",
        "memberSelection.recommendations" to "Zalecenia",
        "memberSelection.selectAll" to "Wybierz wszystko",
        "memberSelection.title" to "Wybierz Członkowie",
        "memberTransfer.additionalField" to "Dodatkowe pole",
        "memberTransfer.additionalFieldExample1" to "Dodatkowe pole (np. client_id)",
        "memberTransfer.additionalFieldExample2" to "Dodatkowe pole (np. Client_secret)",
        "memberTransfer.analyzeAndImport" to "Analizuj i importuj szablon",
        "memberTransfer.availablePlaceholders" to "Dostępne symbole zastępcze",
        "memberTransfer.bulkMode" to "Tryb importu zbiorczego (przenieś wszystkich członków jednocześnie)",
        "memberTransfer.bulkModeActive" to "Tryb aktywny",
        "memberTransfer.bulkModeActiveDescription" to "Szablon definiuje format pojedynczego elementu. Elementy są automatycznie zawijane w tablicę. Opcjonalnie możesz zdefiniować strukturę zewnętrzną w „szablonie opakowania zbiorczego” (patrz poniżej).",
        "memberTransfer.bulkModeHint" to "Jeśli ta opcja jest włączona, wszystkie elementy żądania są przesyłane jako tablica.",
        "memberTransfer.bulkWrapperDescription" to "Opcjonalnie można zdefiniować strukturę zewnętrzną, do której zostanie wstawiony szyk prętowy. Użyj PLACEHOLDER_MEMBERS jako symboli zastępczych tablicy elementów.",
        "memberTransfer.bulkWrapperNote" to "Uwaga: Jeśli nie określono żadnego szablonu opakowania, automatycznie używana jest tablica Members.",
        "memberTransfer.bulkWrapperTemplate" to "Szablon opakowania zbiorczego (opcjonalnie)",
        "memberTransfer.bulkWrapperWhat" to "Co to jest szablon opakowania zbiorczego?",
        "memberTransfer.configDeleted" to "Konfiguracja została pomyślnie usunięta!",
        "memberTransfer.configInfo" to "Tutaj możesz skonfigurować ustawienia przenoszenia członków do systemów zewnętrznych. Ustawienia te są zapisywane zależnie od klubu.",
        "memberTransfer.configSaved" to "Konfiguracja została zapisana pomyślnie",
        "memberTransfer.confirmDelete" to "Usuń konfigurację",
        "memberTransfer.confirmDeleteMessage" to "Czy na pewno chcesz zwrócić pieniądze za tę transakcję?",
        "memberTransfer.deleteConfig" to "Usuń konfigurację",
        "memberTransfer.deleting" to "clearing...",
        "memberTransfer.errorDeleting" to "Usuwanie błędów",
        "memberTransfer.errorLoading" to "Błąd ładowania konfiguracji",
        "memberTransfer.errorParsingTemplate" to "Błąd podczas analizowania szablonu",
        "memberTransfer.errorSaving" to "Błąd podczas zapisywania",
        "memberTransfer.example" to "Przykład",
        "memberTransfer.exampleFormData" to "Przykład formatu danych formularza",
        "memberTransfer.exampleJson" to "Przykład formatu JSON (zalecany)",
        "memberTransfer.exampleXml" to "Przykład formatu XML",
        "memberTransfer.formDataHint" to "W przypadku danych formularzy użyj prostego szablonu tekstowego z liniami w formacie nazwa_pola=placeholder:",
        "memberTransfer.httpMethod" to "Metoda HTTP",
        "memberTransfer.importTemplate" to "Importuj szablon z pełnego przykładu",
        "memberTransfer.importTemplateHint" to "Dołącz pełny przykładowy szablon (z przykładowymi elementami). System automatycznie wykryje szablon elementu i szablon opakowania zbiorczego.",
        "memberTransfer.importTemplatePlaceholder" to "Wstaw tutaj pełny przykładowy szablon, np.:\nLBRACE\n  Grudzień: [\n    LBRACE\n      D .firstNameD.: D .MaxD.,\n      D. NazwiskoD.: D. MustermannD.,\n      Adres e-mail: DMaxATexample.comMail: DMaxATexample.com\n    RBRACE\n  ]\nRBRACE",
        "memberTransfer.invalidJson" to "Upewnij się, że używany jest prawidłowy JSON.",
        "memberTransfer.invalidTemplateFormat" to "Nieprawidłowy format szablonu",
        "memberTransfer.loadingConfig" to "Ładowanie konfiguracji...",
        "memberTransfer.loginConfiguration" to "Konfiguracja logowania",
        "memberTransfer.loginData" to "Dane logowania",
        "memberTransfer.loginEndpointHint" to "Opcjonalnie: Ścieżka względna do punktu końcowego logowania (np. /api/auth/login)",
        "memberTransfer.loginEndpointPath" to "Ścieżka punktu końcowego logowania",
        "memberTransfer.loginEndpointPlaceholder" to "/api/auth/login",
        "memberTransfer.loginFormat" to "Format logowania",
        "memberTransfer.membersArray" to "Tablica członkowska",
        "memberTransfer.password" to "Hasło",
        "memberTransfer.passwordEncrypted" to "Hasła są przechowywane w postaci zaszyfrowanej.",
        "memberTransfer.placeholderHint" to "Kliknij symbol zastępczy, aby wstawić go w bieżącej pozycji kursora:",
        "memberTransfer.placeholders.address" to "Połączony adres",
        "memberTransfer.placeholders.addressDesc" to "Ulica i miasto razem",
        "memberTransfer.placeholders.birthDate" to "Data urodzenia",
        "memberTransfer.placeholders.birthDateAlt" to "Data urodzenia (stara)",
        "memberTransfer.placeholders.birthDateAltDesc" to "Data urodzenia w formacie RRRR-MM-DD (imię alternatywne)",
        "memberTransfer.placeholders.birthDateDesc" to "w formacie RRRR-MM-DD",
        "memberTransfer.placeholders.city" to "Lokalizacja",
        "memberTransfer.placeholders.cityDesc" to "Miejsce zamieszkania",
        "memberTransfer.placeholders.email" to "Adres e-mail",
        "memberTransfer.placeholders.emailDesc" to "Adres e-mail członka",
        "memberTransfer.placeholders.firstName" to "Imię",
        "memberTransfer.placeholders.firstNameDesc" to "Imię członka",
        "memberTransfer.placeholders.fullName" to "Pełne imię i nazwisko",
        "memberTransfer.placeholders.fullNameDesc" to "Imię i nazwisko połączone",
        "memberTransfer.placeholders.gender" to "Seks",
        "memberTransfer.placeholders.genderDesc" to "Płeć członka",
        "memberTransfer.placeholders.lastName" to "Nazwisko",
        "memberTransfer.placeholders.lastNameDesc" to "Nazwisko członka",
        "memberTransfer.placeholders.phone" to "Numer telefonu",
        "memberTransfer.placeholders.phoneDesc" to "Telefon członka personelu",
        "memberTransfer.placeholders.qttr" to "Wartość QTTR",
        "memberTransfer.placeholders.qttrDesc" to "Wartość QTTR członka",
        "memberTransfer.placeholders.street" to "Ulica",
        "memberTransfer.placeholders.streetDesc" to "Ulica i numer domu",
        "memberTransfer.placeholders.ttr" to "Wartość TTR",
        "memberTransfer.placeholders.ttrDesc" to "Wartość TTR członka",
        "memberTransfer.save" to "Ratować",
        "memberTransfer.saving" to "Oszczędność...",
        "memberTransfer.serverBaseUrl" to "Podstawowy adres URL serwera",
        "memberTransfer.serverBaseUrlHint" to "Bazowy adres URL serwera (np. https://example.com)",
        "memberTransfer.serverBaseUrlPlaceholder" to "https://example.com",
        "memberTransfer.serverConfiguration" to "Konfiguracja serwera",
        "memberTransfer.templateDescription" to "Szablon określa format, w jakim dane członkowskie są przekazywane do systemu zewnętrznego. Użyj symboli zastępczych, takich jak PLACEHOLDER_FIRSTNAME, aby automatycznie zastąpić dane.",
        "memberTransfer.templateImported" to "Szablon został pomyślnie zaimportowany.",
        "memberTransfer.templateImportedBulk" to "Wykryto szablon elementu członkowskiego, włączono tryb zbiorczy.",
        "memberTransfer.templateImportedDetails" to "Wykryto i ukończono szablony elementów członkowskich i opakowań zbiorczych.",
        "memberTransfer.templateImportedSingle" to "Wykryto szablon z jednym elementem.",
        "memberTransfer.templateTip" to "Wskazówka: Umieść kursor w żądanym miejscu szablonu i kliknij symbol zastępczy, aby go wstawić. Po przeniesieniu elementy zastępcze są automatycznie zastępowane rzeczywistymi danymi członków.",
        "memberTransfer.templateWhat" to "Co to jest szablon?",
        "memberTransfer.title" to "Przeniesienie członka - Ustawienia",
        "memberTransfer.transferConfiguration" to "Konfiguracja transmisji",
        "memberTransfer.transferConfigurationTitle" to "Konfiguracja transmisji",
        "memberTransfer.transferEndpointHint" to "Ścieżka względna do punktu końcowego transmisji (np. /api/members/bulk)",
        "memberTransfer.transferEndpointPath" to "Ścieżka punktu końcowego transmisji",
        "memberTransfer.transferEndpointPlaceholder" to "/api/członkowie/luzem",
        "memberTransfer.transferFormat" to "Format transmisji",
        "memberTransfer.transferTemplate" to "Szablon przelewu",
        "memberTransfer.usernameEmail" to "Nazwa użytkownika / e-mail",
        "memberTransferDialog.additionalErrors" to "dodatkowe usterki",
        "memberTransferDialog.additionalFieldPlaceholder" to "Dodatkowe pole (np. client_id)",
        "memberTransferDialog.additionalFieldPlaceholderForm" to "Nazwa pola: Wartość (np. Client_id: abc123)",
        "memberTransferDialog.bulkImport" to "Import zbiorczy",
        "memberTransferDialog.cancel" to "Anulować",
        "memberTransferDialog.editConfig" to "Edytuj konfigurację.",
        "memberTransferDialog.endpoint" to "Endpoint",
        "memberTransferDialog.excludedMembers" to "Wykluczeni członkowie (brak obowiązkowych pól)",
        "memberTransferDialog.format" to "Format",
        "memberTransferDialog.goToSettings" to "Ustawienia Dokąd?",
        "memberTransferDialog.loadingConfig" to "Ładowanie zapisanej konfiguracji",
        "memberTransferDialog.loginData" to "Dane logowania",
        "memberTransferDialog.loginDataHint" to "Dane do logowania wykorzystywane są w ustawieniach. W razie potrzeby możesz je tutaj zastąpić.",
        "memberTransferDialog.loginDataOverride" to "Dane logowania (opcjonalne nadpisanie)",
        "memberTransferDialog.loginDataOverrideHint" to "Wypełnij tylko jeśli chcesz nadpisać zapisane dane logowania. Puste pola korzystają z przechowywanych wartości.",
        "memberTransferDialog.method" to "Metoda",
        "memberTransferDialog.mode" to "tryb",
        "memberTransferDialog.noConfigFound" to "Nie znaleziono konfiguracji",
        "memberTransferDialog.noConfigMessage" to "Najpierw skonfiguruj przeniesienie członka w ustawieniach.",
        "memberTransferDialog.passwordPlaceholder" to "Hasło (pozostaw puste, aby zapisać)",
        "memberTransferDialog.server" to "Server",
        "memberTransferDialog.single" to "Pojedynczy",
        "memberTransferDialog.title" to "Członkowie transferowi",
        "memberTransferDialog.transfer" to "Przeniesiony",
        "memberTransferDialog.transferConfiguration" to "Konfiguracja transmisji",
        "memberTransferDialog.transferError" to "Błąd podczas transmisji",
        "memberTransferDialog.transferFailed" to "Transfer nie powiódł się",
        "memberTransferDialog.transferring" to "Przyległy...",
        "memberTransferDialog.transferSuccess" to "{transferred} pomyślnie przeniesiony przez {total} członków.",
        "memberTransferDialog.usernameEmail" to "Nazwa użytkownika / e-mail",
        "messages.cancel" to "Anuluj",
        "messages.confirm" to "Potwierdź",
        "messages.error" to "Błąd",
        "messages.fileTooLarge" to "Plik jest za duży",
        "messages.imageMaxSize" to "Obraz musi mieć maksymalnie 5 MB.",
        "messages.info" to "Informacja",
        "messages.invalidFile" to "Nieprawidłowy plik",
        "messages.note" to "Ogłoszenie",
        "messages.pleaseSelectImageFile" to "Proszę wybrać plik obrazu.",
        "messages.recordsDisplayed" to "wystawiany",
        "messages.recordsFound" to "Znaleziono zapisy",
        "messages.success" to "Sukces",
        "messages.successfullyLoaded" to "Załadowano pomyślnie",
        "messages.warning" to "Ostrzeżenie",
        "mobile.active" to "Aktiv",
        "mobile.add" to "Hinzufügen",
        "mobile.appLoading" to "App wird geladen",
        "mobile.calendarAgendaEmpty" to "Brak terminów w tym miesiącu.",
        "mobile.calendarAgendaTitle" to "Terminy w miesiącu",
        "mobile.calendarAllSourcesFailed" to "Nie udało się wczytać kalendarza.",
        "mobile.calendarCancellationEnd" to "Do (opcjonalnie)",
        "mobile.calendarCancellationHint" to "Ukrywa cykliczne terminy treningów w te dni.",
        "mobile.calendarCancellationInMonth" to "Odwołania w tym miesiącu",
        "mobile.calendarCancellationReason" to "Powód",
        "mobile.calendarCancellationSave" to "Zapisz",
        "mobile.calendarCancellationStart" to "Data (RRRR-MM-DD)",
        "mobile.calendarCancellationTitle" to "Trening odwołany",
        "mobile.calendarGridTitle" to "Miesiąc",
        "mobile.calendarLegend" to "Widok",
        "mobile.calendarLegendCancellation" to "Odwołanie",
        "mobile.calendarLegendHoliday" to "Święto",
        "mobile.calendarLegendMatch" to "Mecz",
        "mobile.calendarLegendOfficial" to "Start",
        "mobile.calendarLegendSchool" to "Ferie",
        "mobile.calendarLegendTournament" to "Turniej",
        "mobile.calendarLegendTraining" to "Trening",
        "mobile.calendarSourceCancellations" to "Odwołania",
        "mobile.calendarSourceDiary" to "Dziennik",
        "mobile.calendarSourceFailed" to "nie wczytano",
        "mobile.calendarSourceHolidays" to "Święta / ferie",
        "mobile.calendarSourceMatches" to "Mecze ligowe",
        "mobile.calendarSourceOfficial" to "Oficjalne starty",
        "mobile.calendarSourceTournaments" to "Turnieje",
        "mobile.calendarSourceTrainingTimes" to "Terminy treningów",
        "mobile.calendarSubtitle" to "Treningi, turnieje, mecze i święta w miesiącu.",
        "mobile.calendarTitle" to "Kalendarz",
        "mobile.calendarToday" to "Dziś",
        "mobile.cancel" to "Abbrechen",
        "mobile.clubRequest" to "Zugriff anfragen",
        "mobile.clubRequested" to "Angefragt",
        "mobile.createDiaryEntry" to "Eintrag erstellen",
        "mobile.deleteNote" to "Notiz löschen",
        "mobile.deleteTag" to "Tag entfernen",
        "mobile.editTimes" to "Zeiten bearbeiten",
        "mobile.emailAndPasswordRequired" to "E-Mail und Passwort sind erforderlich",
        "mobile.entry" to "Eintrag",
        "mobile.inactive" to "Inaktiv",
        "mobile.language" to "Sprache",
        "mobile.lastTraining" to "Letztes Training",
        "mobile.loginFailed" to "Login fehlgeschlagen",
        "mobile.loginInProgress" to "Anmelden...",
        "mobile.more" to "Mehr",
        "mobile.new" to "Neu",
        "mobile.newNote" to "Neue Notiz",
        "mobile.newTag" to "Neuer Tag",
        "mobile.noDiaryEntries" to "Noch keine Tagebuch-Einträge",
        "mobile.noMembers" to "Keine Mitglieder gefunden",
        "mobile.noResults" to "Keine Treffer",
        "mobile.noTimes" to "Keine Zeiten",
        "mobile.offlineCacheHint" to "Brak połączenia – wyświetlane ostatnio wczytane dane.",
        "mobile.participationTop" to "Top Teilnahmen",
        "mobile.refresh" to "Aktualisieren",
        "mobile.requestedAccess" to "Angefragt",
        "mobile.role" to "Rolle",
        "mobile.saveEntry" to "Speichern",
        "mobile.search" to "Suche",
        "mobile.select" to "Auswählen",
        "mobile.sessionCheck" to "Session prüfen",
        "mobile.sessionCheckFailed" to "Session check fehlgeschlagen",
        "mobile.sessionInvalid" to "Session ungültig",
        "mobile.sessionValid" to "Session gültig",
        "mobile.status" to "Status",
        "mobile.user" to "Benutzer",
        "myTischtennis.about" to "O myTischtennis",
        "myTischtennis.aboutFeatures.fetch" to "Bezpośrednie pobieranie danych konkurencji",
        "myTischtennis.aboutFeatures.import" to "Automatycznie importuj dane turniejowe",
        "myTischtennis.aboutFeatures.sync" to "Synchronizuj wyniki graczy",
        "myTischtennis.aboutText" to "Łącząc swoje konto myTischtennis, możesz:",
        "myTischtennis.autoUpdates" to "Automatyczna aktualizacja",
        "myTischtennis.club" to "Stowarzyszenie (myTischtennis)",
        "myTischtennis.deleteAccount" to "Odłącz konto",
        "myTischtennis.disabled" to "Niepowstrzymany",
        "myTischtennis.editAccount" to "Edytuj konto",
        "myTischtennis.enabled" to "NA",
        "myTischtennis.fetchStatistics" to "Statystyki pobierania danych",
        "myTischtennis.lastFetch" to "Ostatnio pobrane:",
        "myTischtennis.lastLoginAttempt" to "Ostatnia próba logowania",
        "myTischtennis.lastSuccessfulLogin" to "Ostatnie udane logowanie",
        "myTischtennis.leagueTables" to "Klasyfikacja JoomSport",
        "myTischtennis.linkAccount" to "Połącz konto",
        "myTischtennis.linkedAccount" to "Połączone konto",
        "myTischtennis.loadingStats" to "Ładowanie statystyk",
        "myTischtennis.matchResults" to "Wyniki wydarzenia",
        "myTischtennis.neverFetched" to "Nigdy nie odzyskane",
        "myTischtennis.no" to "NIE",
        "myTischtennis.noAccount" to "Żadne konto myTischtennis nie jest powiązane.",
        "myTischtennis.passwordNote" to "Uwaga: zapisanie hasła jest opcjonalne. Jeśli go nie zapiszesz, przy każdej synchronizacji będziesz proszony o podanie hasła.",
        "myTischtennis.passwordSaved" to "Hasło zapisane",
        "myTischtennis.passwordsEncrypted" to "Hasła są przechowywane w postaci zaszyfrowanej.",
        "myTischtennis.playerRatings" to "Oceny graczy",
        "myTischtennis.refreshStats" to "Załaduj ponownie statystyki",
        "myTischtennis.testLogin" to "Zaloguj się ponownie",
        "myTischtennis.title" to "myTischtennis-Account",
        "myTischtennis.updateHistory" to "Aktualizuj historię",
        "myTischtennis.yes" to "Tak",
        "myTischtennisAccount.aboutDescription" to "Łącząc swoje konto myTischtennis, możesz:",
        "myTischtennisAccount.aboutFeature1" to "Automatycznie importuj dane turniejowe",
        "myTischtennisAccount.aboutFeature2" to "Synchronizuj wyniki graczy",
        "myTischtennisAccount.aboutFeature3" to "Bezpośrednie pobieranie danych konkurencji",
        "myTischtennisAccount.aboutHint" to "Zapisanie hasła jest opcjonalne. Jeśli go nie zapiszesz, przy każdej synchronizacji będziesz proszony o podanie hasła.",
        "myTischtennisAccount.aboutMyTischtennis" to "O myTischtennis",
        "myTischtennisAccount.accountSaved" to "Konto myTischtennis zostało pomyślnie zapisane",
        "myTischtennisAccount.accountUnlinked" to "Konto myTischtennis zostało pomyślnie odłączone",
        "myTischtennisAccount.autoUpdates" to "Automatyczne aktualizacje:",
        "myTischtennisAccount.club" to "Stowarzyszenie (myTischtennis):",
        "myTischtennisAccount.daysAgo" to "{count} dni temu",
        "myTischtennisAccount.disabled" to "Niepowstrzymany",
        "myTischtennisAccount.editAccount" to "Edytuj konto",
        "myTischtennisAccount.email" to "E-mail:",
        "myTischtennisAccount.enabled" to "NA",
        "myTischtennisAccount.errorLoadingAccount" to "Błąd ładowania konta myTischtennis",
        "myTischtennisAccount.errorLoadingStatistics" to "Błąd podczas ładowania statystyk pobierania",
        "myTischtennisAccount.errorUnlinking" to "Błąd podczas odłączania konta",
        "myTischtennisAccount.fetchStatistics" to "Statystyki pobierania danych",
        "myTischtennisAccount.hoursAgo" to "{count} godz. temu",
        "myTischtennisAccount.justNow" to "właśnie",
        "myTischtennisAccount.lastFetch" to "Ostatnio pobrane:",
        "myTischtennisAccount.lastLoginAttempt" to "Ostatnia próba logowania:",
        "myTischtennisAccount.lastSuccessfulLogin" to "Ostatnie udane logowanie:",
        "myTischtennisAccount.leagueTables" to "Klasyfikacja JoomSport",
        "myTischtennisAccount.linkAccount" to "Połącz konto",
        "myTischtennisAccount.linkedAccount" to "Połączone konto",
        "myTischtennisAccount.loading" to "Załadunek...",
        "myTischtennisAccount.loadingStatistics" to "Ładowanie statystyk",
        "myTischtennisAccount.loginAgain" to "Zaloguj się ponownie",
        "myTischtennisAccount.loginFailed" to "Logowanie nie powiodło się",
        "myTischtennisAccount.loginSuccessful" to "Zaloguj się pomyślnie! Zaktualizowano szczegóły połączenia.",
        "myTischtennisAccount.matchResults" to "Wyniki wydarzenia",
        "myTischtennisAccount.minutesAgo" to "{count} min temu",
        "myTischtennisAccount.never" to "Nigdy",
        "myTischtennisAccount.neverFetched" to "Nigdy nie odzyskane",
        "myTischtennisAccount.no" to "NIE",
        "myTischtennisAccount.noAccountLinked" to "Żadne konto myTischtennis nie jest powiązane.",
        "myTischtennisAccount.passwordRequired" to "Wymagane hasło",
        "myTischtennisAccount.passwordSaved" to "Hasło zapisane",
        "myTischtennisAccount.playerRatings" to "Oceny graczy",
        "myTischtennisAccount.playersUpdated" to "Gracz zaktualizowany",
        "myTischtennisAccount.refreshStatistics" to "Załaduj ponownie statystyki",
        "myTischtennisAccount.results" to "Wyniki",
        "myTischtennisAccount.teams" to "Teams",
        "myTischtennisAccount.title" to "konto myTischtennis",
        "myTischtennisAccount.unlinkAccount" to "Odłącz konto",
        "myTischtennisAccount.unlinkAccountConfirm" to "Czy na pewno chcesz odłączyć konto myTischtennis?",
        "myTischtennisAccount.unlinkAccountTitle" to "Odłącz konto",
        "myTischtennisAccount.updateHistory" to "Aktualizuj historię",
        "myTischtennisAccount.yes" to "Tak",
        "myTischtennisAccount.yesterday" to "Wczoraj",
        "myTischtennisDialog.appPassword" to "Hasło do aplikacji do potwierdzenia",
        "myTischtennisDialog.appPasswordHint" to "Ze względów bezpieczeństwa potrzebujemy Twojego hasła do aplikacji, aby zapisać hasło myTischtennis.",
        "myTischtennisDialog.appPasswordPlaceholder" to "Twoje hasło do tej aplikacji",
        "myTischtennisDialog.autoUpdateRatings" to "Włącz automatyczne oceny aktualizacji",
        "myTischtennisDialog.autoUpdateRatingsHint" to "Najnowsze oceny z myTischtennis są automatycznie pobierane codziennie o godzinie 6:00. Wymaga zapisanego hasła.",
        "myTischtennisDialog.autoUpdateWarning" to "Aby możliwe były automatyczne aktualizacje, należy zapisać hasło myTischtennis.",
        "myTischtennisDialog.cancel" to "Anulować",
        "myTischtennisDialog.editAccount" to "edytuj moje konto Tischtennis",
        "myTischtennisDialog.email" to "myTischtennis-E-mail",
        "myTischtennisDialog.emailPlaceholder" to "Twój adres e-mail myTischtennis",
        "myTischtennisDialog.errorLogin" to "Błąd logowania.",
        "myTischtennisDialog.errorSaving" to "Błąd podczas zapisywania konta",
        "myTischtennisDialog.linkAccount" to "połącz konto myTischtennis",
        "myTischtennisDialog.loadingLoginForm" to "Ładowanie formularza logowania...",
        "myTischtennisDialog.loggingIn" to "Zaloguj się...",
        "myTischtennisDialog.login" to "Zaloguj się",
        "myTischtennisDialog.password" to "myTischtennis-Hasło",
        "myTischtennisDialog.passwordPlaceholder" to "Twoje hasło do myTischtennis",
        "myTischtennisDialog.passwordPlaceholderKeep" to "Pozostaw puste, aby je zachować",
        "myTischtennisDialog.save" to "Ratować",
        "myTischtennisDialog.savePassword" to "zapisz hasło do mojegotabletennis",
        "myTischtennisDialog.savePasswordHint" to "Jeśli ta opcja jest włączona, Twoje hasło myTischtennis będzie przechowywane w postaci zaszyfrowanej, co umożliwi automatyczną synchronizację.",
        "myTischtennisDialog.saving" to "Oszczędność...",
        "myTischtennisHistory.close" to "Zamknąć",
        "myTischtennisHistory.failed" to "To nie zadziałało.",
        "myTischtennisHistory.loading" to "Ładowanie historii...",
        "myTischtennisHistory.noHistory" to "Nie wykonano jeszcze żadnych automatycznych aktualizacji.",
        "myTischtennisHistory.ratingsUpdated" to "Oceny zaktualizowane",
        "myTischtennisHistory.successful" to "Udany",
        "myTischtennisHistory.title" to "Aktualizuj historię ocen",
        "navigation.approvals" to "Zatwierdzenia",
        "navigation.backToHome" to "Powrót do strony głównej",
        "navigation.billing" to "Rozliczenia",
        "navigation.clickTtAccount" to "Konto HTTV / click-TT",
        "navigation.clickTtBrowser" to "HTTV / click-TT",
        "navigation.clubSettings" to "Ustawienia klubu",
        "navigation.clubTournaments" to "Turnieje klubowe",
        "navigation.competitions" to "Rozgrywki",
        "navigation.dailyBusiness" to "Codzienna praca",
        "navigation.diary" to "Dziennik",
        "navigation.home" to "Strona główna",
        "navigation.login" to "Zaloguj",
        "navigation.logout" to "Wyloguj",
        "navigation.logs" to "Logi systemowe",
        "navigation.members" to "Członkowie",
        "navigation.memberTransfer" to "Transfer członków",
        "navigation.myTischtennisAccount" to "Konto myTischtennis",
        "navigation.orders" to "Zamówienia",
        "navigation.permissions" to "Uprawnienia",
        "navigation.personalSettings" to "Ustawienia osobiste",
        "navigation.predefinedActivities" to "Predefiniowane aktywności",
        "navigation.register" to "Zarejestruj",
        "navigation.schedule" to "Harmonogramy",
        "navigation.settings" to "Ustawienia",
        "navigation.statistics" to "Statystyki treningowe",
        "navigation.teamManagement" to "Zarządzanie drużyną",
        "navigation.tournamentParticipations" to "Udziały w turniejach",
        "navigation.tournaments" to "Turnieje",
        "nuscoreAnalyzer.analysisComplete" to "✅ Analiza zakończona: znaleziono zasoby {count}",
        "nuscoreAnalyzer.analyze" to "🔍 analiza nuscore",
        "nuscoreAnalyzer.analyzing" to "Analizuję...",
        "nuscoreAnalyzer.createLocalCopy" to "Utwórz 🏗️ lokalną kopię",
        "nuscoreAnalyzer.creating" to "🏗️Tworzenie...",
        "nuscoreAnalyzer.description" to "Analizuje i pobiera zasoby nuscore do użytku lokalnego",
        "nuscoreAnalyzer.downloading" to "⬇️ Pobieram...",
        "nuscoreAnalyzer.downloadResources" to "Pobierz zasoby",
        "nuscoreAnalyzer.foundResources" to "📋 Znaleziono zasoby:",
        "nuscoreAnalyzer.log" to "Dziennik",
        "nuscoreAnalyzer.pageLoaded" to "✅ strona nuscore została załadowana",
        "nuscoreAnalyzer.startAnalysis" to "🔍 Rozpoczęcie analizy nuscore...",
        "nuscoreAnalyzer.title" to "🔍 nuscore Analyzer",
        "officialTournaments.action" to "Działanie",
        "officialTournaments.age" to "Wiek",
        "officialTournaments.ageClassCompetition" to "Grupa wiekowa/konkurs",
        "officialTournaments.ageClasses" to "Klasy wiekowe",
        "officialTournaments.all" to "Wszystko",
        "officialTournaments.birthDate" to "Data urodzenia",
        "officialTournaments.checkBoxToActivate" to "Włącz pole wyboru",
        "officialTournaments.competition" to "Konkurent",
        "officialTournaments.competitions" to "Konkursy",
        "officialTournaments.competitionTypes" to "Rodzaje zawodów:",
        "officialTournaments.cutoffDate" to "Data wejścia w życie:",
        "officialTournaments.date" to "Data",
        "officialTournaments.dateTime" to "Data:",
        "officialTournaments.deadlineDate" to "Termin rejestracji (data):",
        "officialTournaments.deadlineOnline" to "Termin rejestracji (online):",
        "officialTournaments.deadlines" to "Terminy rejestracji:",
        "officialTournaments.deadlinesByAgeClass" to "Terminy rejestracji dla każdej AK:",
        "officialTournaments.delete" to "Usuwać",
        "officialTournaments.editTitle" to "Edytuj tytuł",
        "officialTournaments.eligible" to "Kwalifikuje się do udziału",
        "officialTournaments.entryFee" to "gotówka na start",
        "officialTournaments.entryFees" to "Opłaty za uczestnictwo:",
        "officialTournaments.events" to "Wydarzenia",
        "officialTournaments.finalRound" to "Konkurs Finałowy",
        "officialTournaments.hasPlayed" to "{0} rozegrali swoją turę.",
        "officialTournaments.last12Months" to "Ostatnie 12 miesięcy",
        "officialTournaments.last2Years" to "Ostatnie 2 lata",
        "officialTournaments.last3Months" to "Ostatnie 3 miesiące",
        "officialTournaments.last6Months" to "Ostatnie 6 miesięcy",
        "officialTournaments.markAsParticipated" to "Oznacz jako uczęszczane",
        "officialTournaments.markAsRegistered" to "Oznacz jako zalogowany",
        "officialTournaments.member" to "Członek",
        "officialTournaments.name" to "nazwa",
        "officialTournaments.noEvents" to "Brak dostępnych wydarzeń. Aby rozpocząć, prześlij plik PDF.",
        "officialTournaments.notInterested" to "Nie jestem zainteresowany",
        "officialTournaments.openTo" to "Otwórz na",
        "officialTournaments.participants" to "Uczestnicy",
        "officialTournaments.participantsPdf" to "Uczestnik w formacie PDF",
        "officialTournaments.participated" to "Brał udział",
        "officialTournaments.participations" to "Udział w turnieju",
        "officialTournaments.pdfForSelectedMembers" to "PDF dla oznaczonych członków",
        "officialTournaments.placement" to "Umieszczenie",
        "officialTournaments.preliminaryRound" to "1. etap:",
        "officialTournaments.previousSeason" to "Poprzedni sezon",
        "officialTournaments.registered" to "Zalogowany",
        "officialTournaments.resetStatus" to "Zresetuj stan",
        "officialTournaments.results" to "Wyniki",
        "officialTournaments.savedEvents" to "Zapisane wydarzenia",
        "officialTournaments.selectMembers" to "Wybierz Członkowie",
        "officialTournaments.showCompetitions" to "Obejrzyj Konkursy",
        "officialTournaments.showEvents" to "Wyświetl zapisane wydarzenia",
        "officialTournaments.showParticipants" to "Zobacz uczestnika",
        "officialTournaments.showParticipations" to "Zobacz udziały w turniejach",
        "officialTournaments.showResults" to "Zobacz wyniki",
        "officialTournaments.startTime" to "czas rozpoczęcia",
        "officialTournaments.startTimes" to "Godziny rozpoczęcia:",
        "officialTournaments.status" to "status",
        "officialTournaments.timeRange" to "Okres:",
        "officialTournaments.title" to "Tytuł:",
        "officialTournaments.tournament" to "Turniej",
        "officialTournaments.updatePlacementError" to "Błąd podczas aktualizowania miejsca docelowego",
        "officialTournaments.updateStatusError" to "Nie udało się zaktualizować stanu",
        "officialTournaments.updateTitleError" to "Tego nie udało się uratować.",
        "officialTournaments.uploadError" to "Błąd podczas przesyłania pliku PDF.",
        "officialTournaments.uploadPdf" to "Prześlij plik PDF",
        "officialTournaments.venues" to "Miejsca",
        "officialTournaments.wantsToParticipate" to "Chcesz dołączyć",
        "orders.addOrder" to "Dodaj zamówienie",
        "orders.budget" to "budżet",
        "orders.club" to "Klub",
        "orders.cost" to "Koszt",
        "orders.dateAutoHint" to "Data jest ustawiana automatycznie, a każda zmiana jest zapisywana z datą.",
        "orders.errorLoading" to "Nie udało się załadować zamówień.",
        "orders.errorSaving" to "Nie udało się zapisać zamówienia.",
        "orders.filterAllClubs" to "Wszystkie kluby",
        "orders.filterAllCompletionStates" to "Wszystkie stopnie",
        "orders.filterAllStatuses" to "Wszystkie statusy",
        "orders.filterHandedOver" to "Przedmiot rozdany",
        "orders.filterPaid" to "Płatny",
        "orders.globalSubtitle" to "Tutaj można przeglądać i zarządzać zamówieniami ze wszystkich klubów.",
        "orders.globalTitle" to "Zamówienia ze wszystkich klubów",
        "orders.history" to "Historia",
        "orders.item" to "Artykuł",
        "orders.itemPlaceholder" to "np. koszulka, bluza lub pokrowiec na rakietkę",
        "orders.loading" to "Ładowanie zamówień...",
        "orders.member" to "Członek",
        "orders.memberTitle" to "Zamówienia: {name}",
        "orders.noOrdersGlobal" to "Obecnie nie ma żadnych zamówień.",
        "orders.noOrdersMember" to "Ten członek nie ma jeszcze żadnych zamówień.",
        "orders.open" to "Pozostało",
        "orders.orderDate" to "Utworzono",
        "orders.paid" to "Zapłacono",
        "orders.paidConfirmed" to "Płatny",
        "orders.searchPlaceholder" to "Szukaj po klubie, członku lub artykule",
        "orders.showCompleted" to "Pokaż ukończone",
        "orders.status" to "status",
        "orders.statusArrived" to "artykuł dotarł",
        "orders.statusDate" to "Ostatnia zmiana",
        "orders.statusHandedOver" to "artykuł wydany",
        "orders.statusOrdered" to "zamówione",
        "orders.statusRequested" to "pożądane",
        "orders.title" to "Zamówienia",
        "pdfGenerator.activityTimeBlock" to "Aktywność / Blok czasowy",
        "pdfGenerator.allGames" to "Wszystkie miasta",
        "pdfGenerator.alsoPlayable" to "Również grywalne",
        "pdfGenerator.birthDate" to "Data urodzenia",
        "pdfGenerator.clubLabel" to "Klub:",
        "pdfGenerator.competition" to "Wydarzenie",
        "pdfGenerator.competitionName" to "Konkurent",
        "pdfGenerator.date" to "Data:",
        "pdfGenerator.diff" to "Diff",
        "pdfGenerator.duration" to "Minuty do blokady",
        "pdfGenerator.fee" to "Opłata",
        "pdfGenerator.generatedAt" to "Utworzono:",
        "pdfGenerator.group" to "Grupa",
        "pdfGenerator.groupLabel" to "Grupa",
        "pdfGenerator.groupMatrices" to "Macierze grupowe",
        "pdfGenerator.hallShoes" to "Buty halowe (nie mogą ścierać się o podłogę)",
        "pdfGenerator.hints" to "Uwagi:",
        "pdfGenerator.informTrainer" to "Ponieważ klub chce przejąć zapisy, należy poinformować trenerów o udziale przynajmniej na tydzień przed turniejem",
        "pdfGenerator.leagueLabel" to "Liga:",
        "pdfGenerator.lineupQttr" to "(Q)TTR",
        "pdfGenerator.member" to "Członkowie:",
        "pdfGenerator.nameFirstName" to "Nazwisko, imię",
        "pdfGenerator.noActivities" to "W tym dniu szkoleniowym nie zarejestrowano żadnych działań.",
        "pdfGenerator.noWhiteJersey" to "Brak białej koszulki",
        "pdfGenerator.officialTournament" to "Oficjalny turniej",
        "pdfGenerator.oneHourBefore" to "Bądź na hali na godzinę przed rozpoczęciem zawodów",
        "pdfGenerator.overallRanking" to "Klasyfikacja ogólna (rundy pucharowe)",
        "pdfGenerator.periodLabel" to "Zgłoszenie na:",
        "pdfGenerator.phoneList" to "Lista telefonów — aktywni członkowie",
        "pdfGenerator.phoneNumber" to "Nr telefonu",
        "pdfGenerator.place" to "Kwadrat",
        "pdfGenerator.placement" to "Umieszczenie",
        "pdfGenerator.plannedLeagueLabel" to "Planowana liga:",
        "pdfGenerator.player" to "Łyżwiarze",
        "pdfGenerator.player1" to "Gracz 1",
        "pdfGenerator.player2" to "4 1/2 minuty",
        "pdfGenerator.points" to "Zwrotnica",
        "pdfGenerator.recommendations" to "Zalecenia",
        "pdfGenerator.result" to "Wynik",
        "pdfGenerator.round" to "Okrągły",
        "pdfGenerator.seasonLabel" to "Sezon:",
        "pdfGenerator.sets" to "frazesy",
        "pdfGenerator.sportShorts" to "Spodenki sportowe (lub spódnice sportowe), najlepiej też nie białe",
        "pdfGenerator.startTime" to "czas rozpoczęcia",
        "pdfGenerator.status" to "status",
        "pdfGenerator.teamAgeGroupLabel" to "Kategoria wiekowa drużyny:",
        "pdfGenerator.teamGenderLabel" to "Płeć drużyny:",
        "pdfGenerator.teamLineupTitle" to "Skład drużyny",
        "pdfGenerator.teamNameLabel" to "Drużyna:",
        "pdfGenerator.time" to "Czas:",
        "pdfGenerator.timeBlock" to "Blok czasowy",
        "pdfGenerator.tournament" to "Turniej",
        "pdfGenerator.trainersPresent" to "Trenerzy starają się być obecni na wszystkich turniejach.",
        "pdfGenerator.trainingPlan" to "Plan treningowy",
        "pdfGenerator.venue" to "Lokalizacja",
        "pdfGenerator.venues" to "Miejsca",
        "pdfGenerator.waterBottle" to "Miej przy sobie butelkę wody",
        "pendingApprovals.actions" to "Działania",
        "pendingApprovals.approve" to "Zatwierdzić",
        "pendingApprovals.email" to "Email",
        "pendingApprovals.errorApproving" to "Błąd podczas zatwierdzania użytkownika",
        "pendingApprovals.errorLoadingRequests" to "nie udało się załadować oczekujących dla %<%E%s%E%>",
        "pendingApprovals.errorRejecting" to "Błąd podczas odrzucania użytkownika",
        "pendingApprovals.firstName" to "Imię",
        "pendingApprovals.lastName" to "Nazwisko",
        "pendingApprovals.noPendingRequests" to "Brak oczekujących żądań użytkowników.",
        "pendingApprovals.noPermission" to "Brak pozwolenia",
        "pendingApprovals.noPermissionDetails" to "Tylko administratorzy mogą edytować prośby o członkostwo.",
        "pendingApprovals.noPermissionMessage" to "Nie masz uprawnień do zarządzania udziałami.",
        "pendingApprovals.reject" to "Odrzucać",
        "pendingApprovals.title" to "Oczekujące żądania użytkowników",
        "permissions.actions" to "Działania",
        "permissions.active" to "Aktywny",
        "permissions.availableRoles" to "Dostępne role",
        "permissions.baseRole" to "Rola podstawowa",
        "permissions.cancel" to "Anulować",
        "permissions.clickToActivate" to "Kliknij, aby aktywować.",
        "permissions.clickToDeactivate" to "Kliknij, aby wyłączyć",
        "permissions.clubMembers" to "Członkowie klubu",
        "permissions.creator" to "Twórca",
        "permissions.customize" to "Dostosuj",
        "permissions.customizeInfo" to "Tutaj możesz dokonać indywidualnych ustawień.",
        "permissions.email" to "Email",
        "permissions.errorLoadingData" to "Błąd ładowania danych",
        "permissions.errorSavingPermissions" to "Błąd podczas zapisywania uprawnień",
        "permissions.errorUpdatingRole" to "Nie udało się zaktualizować roli",
        "permissions.inactive" to "Niepowstrzymany",
        "permissions.loadingMembers" to "Zapraszanie członków...",
        "permissions.permissionsFor" to "Uprawnienia dla",
        "permissions.reset" to "Odwracać",
        "permissions.resetAll" to "Zresetuj wszystko",
        "permissions.role" to "Rola",
        "permissions.save" to "Ratować",
        "permissions.status" to "status",
        "permissions.subtitle" to "Zarządzaj prawami dostępu dla członków klubu",
        "permissions.title" to "Zarządzanie poświadczeniami",
        "predefinedActivities.addImage" to "Dodaj obraz",
        "predefinedActivities.cancel" to "Anulować",
        "predefinedActivities.code" to "Skrót",
        "predefinedActivities.createDrawing" to "Utwórz rysunek ćwiczeń",
        "predefinedActivities.deduplicate" to "Połącz duplikaty",
        "predefinedActivities.delete" to "Usuwać",
        "predefinedActivities.description" to "Opis",
        "predefinedActivities.duration" to "Czas trwania minuty",
        "predefinedActivities.durationText" to "Czas trwania (tekst)",
        "predefinedActivities.durationTextPlaceholder" to "np. 2x7",
        "predefinedActivities.editActivity" to "Edytuj aktywność",
        "predefinedActivities.editDrawing" to "Edytuj rysunek ćwiczeń",
        "predefinedActivities.excludeFromStats" to "Wyklucz ze statystyk",
        "predefinedActivities.filterAll" to "Wszystko",
        "predefinedActivities.filterCustom" to "Zwyczaj",
        "predefinedActivities.filterStandard" to "Standardowe działania",
        "predefinedActivities.imageHelp" to "Możesz wprowadzić link do obrazu lub przesłać obraz:",
        "predefinedActivities.imageLink" to "Link do obrazu (opcjonalnie)",
        "predefinedActivities.imageLinkPlaceholder" to "np. https://example.com/bild.jpg lub /api/predefiniowane-aktywności/:id/image/:imageId",
        "predefinedActivities.merge" to "Łączyć",
        "predefinedActivities.min" to "min",
        "predefinedActivities.name" to "nazwa",
        "predefinedActivities.new" to "Nowy",
        "predefinedActivities.newActivity" to "Nowa aktywność",
        "predefinedActivities.orUploadImage" to "Lub prześlij obraz:",
        "predefinedActivities.reload" to "Przeładować",
        "predefinedActivities.searchPlaceholder" to "Wyszukaj skróty (np. „as vh us” lub „vh as us”)...",
        "predefinedActivities.selectSource" to "Wybierz źródło",
        "predefinedActivities.selectTarget" to "Wybierz miejsce docelowe",
        "predefinedActivities.title" to "Predefiniowane działania",
        "predefinedActivities.upload" to "Wgrywać",
        "predefinedActivities.uploadAfterSave" to "Prześlij po zapisaniu",
        "predefinedActivities.uploadedImages" to "Przesłane filmy:",
        "predefinedActivities.uploadNote" to "Uwaga: obraz nie zostanie przesłany, dopóki aktywność nie zostanie zapisana.",
        "privacy.clubData" to "Dane klubu/aktywności",
        "privacy.consent" to "Operacje oparte na zgodzie",
        "privacy.cookies" to "Pliki cookie/pamięć lokalna",
        "privacy.dataCategories" to "Kategorie danych osobowych",
        "privacy.logData" to "Pliki dziennika",
        "privacy.memberData" to "Dane członkowskie",
        "privacy.myTischtennisData" to "Dane MyTischtennis",
        "privacy.purposes" to "Cele i podstawy prawne przetwarzania",
        "privacy.recipients" to "Odbiorca",
        "privacy.registrationData" to "Dane rejestracyjne/profilowe",
        "privacy.responsible" to "Administrator danych",
        "privacy.title" to "Polityka prywatności",
        "privacy.tournamentData" to "Dane turnieju",
        "privacy.trainingData" to "Dane treningowe",
        "privacy.usage" to "Korzystanie z dziennika treningowego",
        "privacy.usageData" to "Dane dotyczące użytkowania",
        "privacy.website" to "Przygotowanie strony internetowej",
        "quickAddMember.birthDate" to "Data urodzenia (opcjonalnie)",
        "quickAddMember.cancel" to "Anulować",
        "quickAddMember.createAndAdd" to "Utwórz i dodaj nowe",
        "quickAddMember.firstName" to "Imię",
        "quickAddMember.gender" to "Seks",
        "quickAddMember.lastName" to "Nazwisko (opcjonalnie)",
        "quickAddMember.pleaseSelect" to "Proszę wybrać",
        "quickAddMember.title" to "Dodaj nowego członka",
        "schedule.activeSelection" to "Aktywny wybór",
        "schedule.addressLabel" to "Adres",
        "schedule.adultSchedule" to "Harmonogram dla dorosłych",
        "schedule.ageClass" to "Grupa wiekowa",
        "schedule.allLeagueMatches" to "Wszystkie mecze",
        "schedule.balls" to "Piłki",
        "schedule.cancel" to "Anulować",
        "schedule.cityLabel" to "Kod pocztowy/miasto",
        "schedule.code" to "Code",
        "schedule.completedShort" to "Zakończony",
        "schedule.copyCode" to "Skopiuj kod",
        "schedule.copyGuestPin" to "Skopiuj PIN",
        "schedule.copyHomePin" to "Skopiuj domowy PIN",
        "schedule.date" to "Data",
        "schedule.downloadPDF" to "Pobierz PDF",
        "schedule.errorCopying" to "Błąd podczas kopiowania",
        "schedule.errorImportingCSV" to "Nie udało się zaimportować pliku CSV",
        "schedule.errorLoadingAdultSchedule" to "Nie udało się załadować harmonogramu dla dorosłych",
        "schedule.errorLoadingGallery" to "Nie udało się załadować galerii.",
        "schedule.errorLoadingMatches" to "Nie udało się wczytać meczów",
        "schedule.errorLoadingMembers" to "Nie udało się załadować listy członków.",
        "schedule.errorLoadingOverallSchedule" to "Nie udało się załadować ogólnego harmonogramu",
        "schedule.errorLoadingTable" to "Nie udało się załadować danych tabeli ligowej z myTischtennis",
        "schedule.errorLoadingTeams" to "Nie udało się załadować zespołów",
        "schedule.errorSavingPlayerSelection" to "Nie udało się zapisać wyboru gracza",
        "schedule.fetchDataFailed" to "Nie udało się pobrać danych zespołu.",
        "schedule.fetchingTeamData" to "Ujmujący…",
        "schedule.fetchStartFailed" to "Nie można rozpocząć pobierania.",
        "schedule.fetchTeamData" to "Pobierz harmonogram i wyniki",
        "schedule.fetchTimedOut" to "Przekroczono limit czasu podczas pobierania danych.",
        "schedule.gallery" to "Galeria członków",
        "schedule.galleryLoading" to "Ładowanie galerii…",
        "schedule.galleryTitle" to "Galeria członków - kliknij obraz, aby oznaczyć go jako gotowy",
        "schedule.gamesFor" to "Mecze dla",
        "schedule.guestPin" to "PIN wyjazdowy",
        "schedule.guestTeam" to "Zespół wyjazdowy",
        "schedule.homePin" to "Domowy PIN",
        "schedule.homeTeam" to "Zespół gospodarzy",
        "schedule.imageSize" to "Rozmiar obrazu",
        "schedule.importSchedule" to "Harmonogram importu",
        "schedule.leagueTable" to "Tabela ligowa",
        "schedule.loadingMembers" to "Ładowanie członków...",
        "schedule.locationDialogTitle" to "Pokój gier",
        "schedule.locationInfo" to "Lokalizacja",
        "schedule.locationName" to "Pokój gier",
        "schedule.matches" to "zapałki",
        "schedule.matchLabel" to "Gra",
        "schedule.matchOverviewDescription" to "Kontrole jakie mecze z aktualnie wybranej ligi pokazane są w harmonogramie.",
        "schedule.matchOverviewTitle" to "Przegląd meczu",
        "schedule.nextMatch" to "Następny mecz",
        "schedule.noActiveMembers" to "Nie znaleziono aktywnych członków",
        "schedule.noGames" to "Brak dostępnych dopasowań",
        "schedule.noLeagueForTeam" to "Do tej drużyny nie jest przypisana żadna liga. Najpierw przypisz ligę.",
        "schedule.noMatchesForPDF" to "Nie znaleziono dopasowań do wygenerowania pliku PDF.",
        "schedule.noMatchingTeams" to "Żaden zespół nie pasuje do bieżącego wyszukiwania.",
        "schedule.noMembersWithImages" to "Nie znaleziono członków ze zdjęciami.",
        "schedule.noSelectionMessage" to "Wybierz harmonogram ogólny, harmonogram dla dorosłych lub zespół z lewej strony.",
        "schedule.noSelectionTitle" to "Nie ma jeszcze aktywnego wyboru",
        "schedule.noTableData" to "Brak danych tabelarycznych",
        "schedule.noTeamsFound" to "Nie znaleziono żadnych drużyn na ten sezon",
        "schedule.openMatchReport" to "Otwórz raport z meczu",
        "schedule.otherTeamMatches" to "Inny zespół",
        "schedule.overallSchedule" to "Ogólny harmonogram",
        "schedule.ownTeamMatches" to "Własny zespół",
        "schedule.pendingShort" to "Otwarte",
        "schedule.planned" to "Planowany",
        "schedule.played" to "Zagrał",
        "schedule.player" to "Odtwarzacz",
        "schedule.playerSelection" to "Wybór gracza",
        "schedule.playerSelectionSaved" to "Wybór gracza został zapisany",
        "schedule.pleaseSelectGame" to "Najpierw wybierz dopasowanie",
        "schedule.points" to "Pkt",
        "schedule.position" to "Pozycja",
        "schedule.ready" to "Gotowy",
        "schedule.refreshTable" to "Odśwież tabelę",
        "schedule.result" to "Wynik",
        "schedule.save" to "Ratować",
        "schedule.scheduleImportSuccess" to "Harmonogram zaimportowany pomyślnie.",
        "schedule.schedulePDF" to "Harmonogramy.pdf",
        "schedule.scheduleTab" to "Harmonogram",
        "schedule.searchTeams" to "Wyszukaj drużynę lub ligę",
        "schedule.selection" to "Wybór",
        "schedule.selectOtherTeam" to "Wybierz inny zespół",
        "schedule.selectSpecificLeague" to "Aby załadować tabelę, wybierz konkretną ligę.",
        "schedule.sets" to "Zestawy",
        "schedule.showLocation" to "Zobacz miejsce gry",
        "schedule.subtitle" to "Wybieraj drużyny, przeglądaj mecze i kontroluj tabele ligowe.",
        "schedule.tableDataLoaded" to "Dane tabeli ligowej zostały pomyślnie załadowane z myTischtennis.",
        "schedule.tableLoading" to "Ładowanie tabeli…",
        "schedule.tableTab" to "Tabela",
        "schedule.team" to "Team",
        "schedule.teamDataFetched" to "Dane zespołu zostały pomyślnie zaktualizowane.",
        "schedule.teamDataFetchedDetails" to "Zespół: {team}\nPrzetworzone rekordy: {count}",
        "schedule.teams" to "Teams",
        "schedule.time" to "Czas",
        "schedule.title" to "Harmonogramy",
        "schedule.vs" to "vs",
        "schedule.workspaceScheduleDescription" to "{matches} mecze, {completed} zakończone i {pending} otwarte.",
        "schedule.workspaceTableDescription" to "{count} wiersze tabeli aktualnie załadowane.",
        "seasonSelector.addSeason" to "Dodaj nowy sezon",
        "seasonSelector.alreadyExists" to "Ten sezon już istnieje!",
        "seasonSelector.cancel" to "Anulować",
        "seasonSelector.create" to "Tworzyć",
        "seasonSelector.errorCreating" to "Błąd podczas tworzenia sezonu",
        "seasonSelector.errorLoading" to "Błąd podczas ładowania sezonów",
        "seasonSelector.hint" to "Ogłoszenie",
        "seasonSelector.label" to "Sezon:",
        "seasonSelector.loading" to "Załadunek...",
        "seasonSelector.newSeason" to "Utwórz nowy sezon",
        "seasonSelector.placeholder" to "np. 2023/2024",
        "seasonSelector.selectSeason" to "Wybierz sezon(y)",
        "settings.language" to "Język",
        "settings.languageChanged" to "Język został zmieniony pomyślnie",
        "settings.languageDescription" to "Wybierz preferowany język aplikacji",
        "settings.personalSettings" to "Ustawienia osobiste",
        "settings.selectLanguage" to "Wybierz język",
        "settings.title" to "Ustawienia",
        "tagHistory.noHistory" to "Brak dostępnej historii tagów",
        "tagHistory.selectTags" to "Wybierz Tagi",
        "tagHistory.title" to "Etykieta: TypePad",
        "teamManagement.activeTeam" to "Aktywny zespół",
        "teamManagement.addPlanningTeam" to "Dodaj zespół planowania",
        "teamManagement.allMembersAssigned" to "Wszyscy członkowie są obecnie przydzieleni.",
        "teamManagement.assignLeagueBeforeDocuments" to "Najpierw przypisz ligę do drużyny, aby móc przetworzyć dokumenty.",
        "teamManagement.assignLeagueBeforeParsing" to "Najpierw przypisz ligę do zespołu, aby przeanalizować pliki PDF.",
        "teamManagement.assignMemberToTeam" to "Dodaj do zespołu",
        "teamManagement.association" to "Stowarzyszenie",
        "teamManagement.asyncJobStartFailed" to "Nie można uruchomić zadania asynchronicznego.",
        "teamManagement.autoFetchEnabled" to "Automatyczne pobieranie danych jest włączone",
        "teamManagement.automaticJobs" to "Automatyczne zadania",
        "teamManagement.autoSaved" to "Autozapisane",
        "teamManagement.autoSaveError" to "Automatyczne zapisywanie nie powiodło się",
        "teamManagement.availableLineupMembers" to "Dostępni zawodnicy",
        "teamManagement.basicSettings" to "Podstawowe ustawienia",
        "teamManagement.basicSettingsIntro" to "Przejrzyj i dostosuj nazwę zespołu i ligę w spokojniejszej formie.",
        "teamManagement.change" to "Zmiana",
        "teamManagement.clearFields" to "Wyczyść pola",
        "teamManagement.codeList" to "Lista kodów",
        "teamManagement.configurationStatus" to "Stan konfiguracji",
        "teamManagement.configureLeagueDetails" to "Stowarzyszenie: {association}\nSezon: {season}\nLiga: {league}\nIdentyfikator grupy: {groupId}\n\nChcesz skonfigurować tę ligę w bazie danych? Umożliwia to automatyczne pobieranie danych z tabeli.",
        "teamManagement.configureLeagueTitle" to "Skonfigurować ligę?",
        "teamManagement.createAndEdit" to "Twórz i edytuj",
        "teamManagement.created" to "Stworzony",
        "teamManagement.createNewTeam" to "Utwórz nowy zespół",
        "teamManagement.dataFetchFailed" to "Nie udało się pobrać danych.",
        "teamManagement.delete" to "Usuwać",
        "teamManagement.deleteTeamConfirm" to "Czy na pewno chcesz usunąć drużynę klubową „{name}”?",
        "teamManagement.deleteTeamTitle" to "Usuń drużynę klubową",
        "teamManagement.documentAvailable" to "Dostępny",
        "teamManagement.documentMissing" to "Zaginiony",
        "teamManagement.documentNotFound" to "Nie można znaleźć wybranego dokumentu.",
        "teamManagement.documentParsedSummary" to "{label} przesłano i przeanalizowano pomyślnie.\n\nZnaleziono dopasowania: {matchesFound}\nUtworzono nowe dopasowania: {created}\nZaktualizowano mecze: {updated}",
        "teamManagement.documents" to "Dokumenty",
        "teamManagement.documentsIntro" to "W razie potrzeby przesyłaj, przeglądaj i ponownie analizuj listy kodów i listy PIN.",
        "teamManagement.documentUploaded" to "{label} „{fileName}” został pomyślnie przesłany.",
        "teamManagement.edit" to "Redagować",
        "teamManagement.editTeam" to "Edytuj zespół",
        "teamManagement.eligibility" to "Uprawnienie",
        "teamManagement.eligibilityAdultRelease" to "Dopuszczony do dorosłych",
        "teamManagement.eligibilityAdultReleaseAndReserve" to "Dopuszczony + rezerwowy u dorosłych",
        "teamManagement.eligibilityAdultReserve" to "Rezerwowy u dorosłych",
        "teamManagement.eligibilityRegular" to "Standardowe",
        "teamManagement.enterUrlForAutoConfig" to "Wprowadź adres URL myTischtennis w celu automatycznej konfiguracji",
        "teamManagement.error" to "Błąd",
        "teamManagement.errorConfiguringLeague" to "Nie można skonfigurować ligi.",
        "teamManagement.errorConfiguringTeam" to "Nie można skonfigurować zespołu.",
        "teamManagement.errorDeletingTeam" to "Nie udało się usunąć drużyny klubowej.",
        "teamManagement.errorLoadingPdf" to "Nie udało się załadować pliku PDF.",
        "teamManagement.errorLoadingStats" to "Nie można załadować statystyk.",
        "teamManagement.errorParsingPdf" to "Nie udało się przeanalizować pliku PDF",
        "teamManagement.errorParsingUrl" to "Nie można przeanalizować adresu URL. Sprawdź format.",
        "teamManagement.errorsCount" to "Błędy: {count}",
        "teamManagement.errorUploadingDocument" to "Nie udało się przesłać i przeanalizować pliku.",
        "teamManagement.exportLineupPdf" to "Eksport składu do PDF",
        "teamManagement.fetched" to "pobrane",
        "teamManagement.fetchTimedOut" to "Upłynął limit czasu podczas pobierania danych (zadanie asynchroniczne trwało zbyt długo).",
        "teamManagement.fetchTimeoutShort" to "Przekroczono limit czasu podczas pobierania danych.",
        "teamManagement.fileTooLarge" to "{label} nie może przekraczać 10 MB.",
        "teamManagement.fileTooLargeTitle" to "Plik jest za duży",
        "teamManagement.filterAll" to "Wszystko",
        "teamManagement.filterConfigured" to "Skonfigurowane",
        "teamManagement.filterNeedsAttention" to "Wymaga przeglądu",
        "teamManagement.filterNoLeague" to "Bez ligi",
        "teamManagement.firstHalf" to "Pierwsza runda",
        "teamManagement.firstHalfFull" to "Pierwsza runda (lipiec - grudzień)",
        "teamManagement.fullyConfigured" to "W pełni skonfigurowany",
        "teamManagement.groupId" to "Identyfikator grupy",
        "teamManagement.groupName" to "Nazwa grupy",
        "teamManagement.invalidFileExtension" to "{label} musi mieć jedno z następujących rozszerzeń: {extensions}.",
        "teamManagement.invalidFileTypeTitle" to "Nieprawidłowy typ pliku",
        "teamManagement.invalidMimeType" to "{label} ma nieoczekiwany typ MIME: {type}.",
        "teamManagement.lastRun" to "Ostatni bieg",
        "teamManagement.lastUpdated" to "Ostatnia aktualizacja",
        "teamManagement.latestUpload" to "Ostatnio przesłane: {date}",
        "teamManagement.league" to "Liga",
        "teamManagement.leagueConfiguredDetails" to "Liga: {league}\nSezon: {season}\nStowarzyszenie: {association}\nIdentyfikator grupy: {groupId}\n\nDane tabeli można teraz pobierać automatycznie.",
        "teamManagement.leagueConfiguredSuccess" to "Liga została pomyślnie skonfigurowana. Dane tabeli można teraz pobierać automatycznie.",
        "teamManagement.leagueFieldRequired" to "Wybierz klasę rozgrywkową i zapisz.",
        "teamManagement.lineupEmpty" to "Do tej drużyny nie zgłoszono jeszcze żadnych zawodników.",
        "teamManagement.lineupPdfEmpty" to "Brak zawodników w składzie – nie można utworzyć PDF.",
        "teamManagement.lineupPdfFilePrefix" to "Sklad",
        "teamManagement.lineupProposal" to "Zgłoszenie według QTTR",
        "teamManagement.lineupSaved" to "Skład drużyny zapisany.",
        "teamManagement.lineupSaveError" to "Nie udało się zapisać zgłoszenia drużyny.",
        "teamManagement.lineupUnsavedChanges" to "W składzie drużyny znajdują się niezapisane zmiany.",
        "teamManagement.lineupValidationTooLargeGap" to "{higher} ma ponad 30 punktów QTTR przewagi nad {lower}. Popraw tę kolejność.",
        "teamManagement.loadingStats" to "Ładowanie statystyk...",
        "teamManagement.manualFetch" to "Aportować",
        "teamManagement.markAsInterested" to "Oznacz jako zainteresowany",
        "teamManagement.matchesSummary" to "Znaleziono dopasowania: {matchesFound}\nUtworzono nowe dopasowania: {created}\nZaktualizowano mecze: {updated}",
        "teamManagement.matchResults" to "Wyniki meczów",
        "teamManagement.missingConfigSummary" to "Brakujące informacje:",
        "teamManagement.missingItems" to "Brakuje: {items}",
        "teamManagement.missingLeagueForTeam" to "Dla wybranej drużyny nie została przewidziana żadna liga.",
        "teamManagement.moreErrors" to "... i {count} więcej",
        "teamManagement.myTischtennis" to "mój Tischtennis",
        "teamManagement.myTischtennisIntro" to "Wklej adres URL, przejrzyj konfigurację i pobierz dane ręcznie, jeśli zajdzie taka potrzeba.",
        "teamManagement.mytischtennisLoginRequired" to "Wymagane logowanie do myTischtennis",
        "teamManagement.myTischtennisUrlPlaceholder" to "Adres URL mojego Tischtennis...",
        "teamManagement.myTischtennisUrlRequired" to "Wklej i przeanalizuj adres URL MyTischtennis, aby powiązać ID drużyny i dane ligi.",
        "teamManagement.never" to "Nigdy",
        "teamManagement.newTeam" to "Nowy zespół",
        "teamManagement.noAssignment" to "Brak przypisania",
        "teamManagement.noAutomaticUpdate" to "Nie ma jeszcze automatycznej aktualizacji",
        "teamManagement.noDocumentUploadYet" to "Nie przesłano jeszcze żadnego dokumentu.",
        "teamManagement.noIssues" to "Żadnych otwartych problemów z konfiguracją.",
        "teamManagement.noLeague" to "Żadnej ligi",
        "teamManagement.noMatchesFoundDetails" to "Uwaga: nie wykryto żadnych dopasowań.\nWiersze w dokumencie: {lines}",
        "teamManagement.noMatchesFoundTitle" to "Nie znaleziono żadnych dopasowań",
        "teamManagement.noMatchingTeams" to "Żaden zespół nie pasuje do bieżącego wyszukiwania lub filtra.",
        "teamManagement.noMembersInPool" to "Nie znaleziono pasujących członków.",
        "teamManagement.noPlannedLeague" to "Brak zaplanowanej ligi",
        "teamManagement.noPlayerStats" to "Nie odnotowano żadnych występów.",
        "teamManagement.notConfigured" to "Nie skonfigurowano",
        "teamManagement.notCreated" to "Nie utworzono",
        "teamManagement.noTeamsYet" to "Nie ma jeszcze żadnych zespołów. Stwórz swój pierwszy zespół.",
        "teamManagement.openDocument" to "Otwarte",
        "teamManagement.openInWorkspace" to "Otwórz, aby edytować",
        "teamManagement.parseDocument" to "Przeanalizuj ponownie",
        "teamManagement.parseUrlAction" to "Sprawdź adres URL",
        "teamManagement.partiallyConfigured" to "Częściowo skonfigurowany",
        "teamManagement.pdfFileNotFound" to "Nie można znaleźć pliku PDF.",
        "teamManagement.pinList" to "Lista PIN-ów",
        "teamManagement.plannedLeague" to "Planowana klasa rozgrywkowa",
        "teamManagement.plannedLeagueHint" to "Opcjonalnie. Niezależnie od zgłoszonej ligi (MyTischtennis).",
        "teamManagement.plannedLeaguePlaceholder" to "np. klasa okręgowa, po następnej deklaracji …",
        "teamManagement.planningSubtitle" to "Przydzielaj członków zaplanowanym zespołom, ustalaj kolejność i przeglądaj otwarte zadania.",
        "teamManagement.planningTitle" to "Planowanie zespołu",
        "teamManagement.player" to "Odtwarzacz",
        "teamManagement.playersPoolSubtitle" to "Wszyscy aktywni członkowie zainteresowani grą",
        "teamManagement.playerStats" to "Występy",
        "teamManagement.playerStatsIntro" to "Szybki przegląd występów tej drużyny w bieżącym sezonie.",
        "teamManagement.playersWantToPlay" to "Chcemy grać.",
        "teamManagement.qttr" to "Ocena (Q)TTR",
        "teamManagement.ratingUpdates" to "Aktualizacje ocen",
        "teamManagement.refreshStats" to "Odświeżać",
        "teamManagement.reuploadFile" to "Prześlij plik ponownie i spróbuj jeszcze raz.",
        "teamManagement.searchMembers" to "Wyszukaj członka",
        "teamManagement.searchTeams" to "Zespół poszukiwawczy",
        "teamManagement.season" to "Sezon",
        "teamManagement.seasonFull" to "Pełny sezon (od 1 lipca)",
        "teamManagement.seasonUnknown" to "nieznany",
        "teamManagement.secondHalf" to "Druga runda",
        "teamManagement.secondHalfFull" to "Druga runda (od 1 stycznia)",
        "teamManagement.selectedLineup" to "Zgłoszeni zawodnicy",
        "teamManagement.selectMember" to "Wybierz członka",
        "teamManagement.selectTeam" to "Wybierz opcję Zespół",
        "teamManagement.selectTeamFirst" to "Najpierw wybierz drużynę",
        "teamManagement.selectTeamForConfiguration" to "Aby aktywować konfigurację myTischtennis, musisz najpierw wybrać drużynę z listy.",
        "teamManagement.selectTeamTitle" to "Wybierz zespół",
        "teamManagement.showCodeList" to "Pokaż listę kodów",
        "teamManagement.showPinList" to "Pokaż listę PIN-ów",
        "teamManagement.sortFirstLast" to "Sortowanie: Imię Nazwisko",
        "teamManagement.sortLastFirst" to "Sortowanie: Nazwisko Imię",
        "teamManagement.status" to "status",
        "teamManagement.subtitle" to "Wybierz drużyny, przejrzyj konfigurację i przechowuj dane ligowe w jednym miejscu.",
        "teamManagement.successful" to "Udany",
        "teamManagement.tableUpdateLabel" to "Aktualizacja tabeli:",
        "teamManagement.tableUrlDetected" to "Wykryto adres URL tabeli",
        "teamManagement.team" to "Team",
        "teamManagement.teamAgeGroup" to "Grupa wiekowa",
        "teamManagement.teamConfiguredDetails" to "Liga: {league}\nSezon: {season}\nAutomatyczne pobieranie danych jest teraz aktywne.",
        "teamManagement.teamConfiguredSuccess" to "Zespół został pomyślnie skonfigurowany. Automatyczne pobieranie danych jest teraz aktywne.",
        "teamManagement.teamDataFetched" to "Dane zespołu zostały pomyślnie pobrane.",
        "teamManagement.teamDataFetchedDetails" to "Zespół: {team}\nPobrane rekordy: {count}",
        "teamManagement.teamGender" to "Płeć",
        "teamManagement.teamGenderFemale" to "Kobieta",
        "teamManagement.teamGenderOpen" to "Otwarte",
        "teamManagement.teamHasNoLeague" to "Zespół ten nie jest przypisany do ligi.",
        "teamManagement.teamId" to "Identyfikator zespołu",
        "teamManagement.teamName" to "Nazwa zespołu",
        "teamManagement.teamNamePlaceholder" to "np. Mężczyźni 1, Kobiety 2",
        "teamManagement.teams" to "Teams",
        "teamManagement.title" to "Zarządzanie zespołem",
        "teamManagement.unassignedMembers" to "jeszcze nie przydzielony",
        "teamManagement.unassignedMembersSubtitle" to "Członkowie bez przypisania do zespołu",
        "teamManagement.unknown" to "Nieznany",
        "teamManagement.unknownTeam" to "Nieznany zespół",
        "teamManagement.updated" to "zaktualizowany",
        "teamManagement.uploadNewVersion" to "Prześlij nową wersję",
        "tournament.apply" to "Zastosuj zmiany",
        "tournaments.action" to "Działanie",
        "tournaments.add" to "Dodać",
        "tournaments.addClass" to "Dodaj klasę",
        "tournaments.addClubMember" to "Dodaj członka klubu",
        "tournaments.addExternalParticipant" to "Dodaj uczestnika zewnętrznego",
        "tournaments.addPairing" to "Dodaj parowanie",
        "tournaments.addPoolRule" to "Dodaj regułę puli",
        "tournaments.address" to "Adres",
        "tournaments.adjustTournamentSearch" to "Dostosuj wyszukiwane hasło lub utwórz nowy turniej.",
        "tournaments.advancersPerGroup" to "Promotorzy na grupę",
        "tournaments.allClasses" to "Wszystkie klasy",
        "tournaments.allDataComplete" to "Wszystkie dane uczestników są kompletne.",
        "tournaments.allDataCompleteTop3" to "Wszystkie dane pierwszych 3 miejsc są kompletne.",
        "tournaments.apply" to "Zastosuj zmiany",
        "tournaments.assignmentReviewTitle" to "{count} uczestnicy muszą dokonać wyboru:",
        "tournaments.atLeastOnePoolRule" to "Dodaj co najmniej jedną regułę puli dla {label} (np. miejsca 1,2).",
        "tournaments.autoAssignableParticipantsHint" to "{count} z nich można przypisać automatycznie.",
        "tournaments.autoAssignEligible" to "Przypisz automatycznie",
        "tournaments.autoAssignEligibleDone" to "{count} uczestników zostało przypisanych automatycznie.",
        "tournaments.autoAssignEligibleNone" to "Obecnie nie ma uczestników z jednym automatycznym przypisaniem zajęć.",
        "tournaments.autoAssignEligiblePartial" to "{successCount} uczestników zostało przypisanych automatycznie, {errorCount} nie powiodło się.",
        "tournaments.birthdate" to "Data urodzenia",
        "tournaments.cancel" to "Anulować",
        "tournaments.class" to "Klasa",
        "tournaments.classes" to "Zajęcia",
        "tournaments.className" to "Nazwa klasy",
        "tournaments.cleanupOrphanedMatches" to "Posprzątaj osierocone gry",
        "tournaments.club" to "Stowarzyszenie",
        "tournaments.clubMember" to "(członek klubu)",
        "tournaments.conflictSuggestionLabel" to "Sugestie:",
        "tournaments.correctMatch" to "Popraw",
        "tournaments.create" to "Tworzyć",
        "tournaments.createFinalFromIntermediate" to "Utwórz rundę finałową z rundy pośredniej",
        "tournaments.createFinalFromPreliminary" to "Utwórz rundę finałową z rundy wstępnej",
        "tournaments.createGroupMatches" to "Twórz mecze grupowe",
        "tournaments.createGroups" to "Kto może tworzyć grupy",
        "tournaments.createIntermediateFromPreliminary" to "Utwórz rundę pośrednią z rundy wstępnej",
        "tournaments.createMatches" to "Ustaw mecze",
        "tournaments.createSuggestedPairings" to "Twórz pary",
        "tournaments.currentClass" to "Aktywna klasa",
        "tournaments.dataNotRecorded" to "Jeszcze nie wprowadzono",
        "tournaments.date" to "Data",
        "tournaments.delete" to "Usuwać",
        "tournaments.deleteClassConfirm" to "Czy na pewno chcesz usunąć klasę „{name}”?",
        "tournaments.deleteClassParticipantsDetached" to "Wszyscy uczestnicy zostaną odłączeni od tej klasy.",
        "tournaments.deleteClassTitle" to "Usuń klasę",
        "tournaments.deleteExistingPairingsConfirm" to "Istniejące pary zostaną usunięte. Kontynuować?",
        "tournaments.deleteKORound" to "Nokaut",
        "tournaments.diff" to "Diff",
        "tournaments.distributeTables" to "Rozdziel wolne stoły",
        "tournaments.distributeTablesResult" to "Podział stołów",
        "tournaments.doubles" to "Podwójnie",
        "tournaments.doublesPairingHint" to "{count} uczestnicy tej klasy gry podwójnej nadal potrzebują partnera.",
        "tournaments.doublesTournament" to "Turniej gry podwójnej",
        "tournaments.doublesTournamentHint" to "Przełącza wszystkie istniejące klasy na podwójne i domyślnie tworzy nowe klasy jako podwójne.",
        "tournaments.edit" to "Redagować",
        "tournaments.eligibleClassesHint" to "Pasuje do: {classes}",
        "tournaments.email" to "Adres e-mail",
        "tournaments.encounter" to "Spotkanie",
        "tournaments.enterClassName" to "Wprowadź nazwę klasy.",
        "tournaments.enterExternalParticipantName" to "Wprowadź co najmniej imię i nazwisko.",
        "tournaments.enterMiniLocation" to "Wprowadź lokalizację.",
        "tournaments.errorCreatingGroups" to "Błąd podczas tworzenia grup.",
        "tournaments.errorCreatingTournament" to "Błąd podczas tworzenia turnieju.",
        "tournaments.errorDistributingTables" to "Błąd podczas rozdzielania stołów.",
        "tournaments.errorGeneratingPdf" to "Błąd podczas generowania PDF.",
        "tournaments.errorMergingClasses" to "Nie udało się połączyć klas.",
        "tournaments.errorMoreSeededThanUnseeded" to "Jest więcej graczy obstawiających niż nierozstawionych. Nie można tworzyć losowych par.",
        "tournaments.errorResettingKORound" to "Błąd podczas resetowania rundy pucharowej.",
        "tournaments.errorUpdatingTournament" to "Błąd podczas aktualizacji turnieju.",
        "tournaments.exportPDF" to "Eksportuj PDF",
        "tournaments.external" to "Zewnętrzny",
        "tournaments.finalPlacements" to "Ostateczne miejsca docelowe",
        "tournaments.finalRound" to "Runda finałowa",
        "tournaments.finishMatch" to "Zakończ",
        "tournaments.firstName" to "Imię",
        "tournaments.forForwarding" to "do przesyłania",
        "tournaments.gaveUp" to "Umieszczony",
        "tournaments.gaveUpHint" to "Gracz się poddał – wszystkie partie liczą się dla przeciwnika (11:0) lub 0:0 dla obu.",
        "tournaments.genderAll" to "Wszystko",
        "tournaments.genderMixed" to "Mixed",
        "tournaments.generatingPDF" to "Generowanie PDF...",
        "tournaments.group" to "Grupa",
        "tournaments.groupMatches" to "Mecze międzygrupowe",
        "tournaments.groupNumber" to "Grupa",
        "tournaments.groupPlacements" to "Miejsca grupowe",
        "tournaments.groupsLabel" to "Grupy",
        "tournaments.groupsOverview" to "Przegląd grup",
        "tournaments.groupsPerClass" to "Klasyfikacja basenowa",
        "tournaments.groupsPerClassHint" to "Dla każdej klasy podaj liczbę grup (0 = brak grup w tej klasie):",
        "tournaments.index" to "Index",
        "tournaments.intermediateRound" to "Runda pośrednia (runda 2)",
        "tournaments.internalStatsAbsoluteRank" to "Ranking sumy",
        "tournaments.internalStatsAgeFilter" to "Grupa wiekowa i płeć (singel)",
        "tournaments.internalStatsAgeFilterAll" to "Wszystkie klasy wiekowe",
        "tournaments.internalStatsAgeFilterNone" to "Nie wybrano klasy wiekowej",
        "tournaments.internalStatsAgeNoClass" to "Bez przypisania do klasy",
        "tournaments.internalStatsAgeSelectAll" to "Wszystkie",
        "tournaments.internalStatsAgeSelectNone" to "Żadna",
        "tournaments.internalStatsAverageRank" to "Ranking średniej (na turniej)",
        "tournaments.internalStatsAvgPoints" to "Śr.",
        "tournaments.internalStatsEmpty" to "Brak danych w wybranym okresie.",
        "tournaments.internalStatsExportPdf" to "Eksportuj do PDF",
        "tournaments.internalStatsFilterAgeBands" to "Klasy wiekowe",
        "tournaments.internalStatsFilterGenderColumn" to "Płeć",
        "tournaments.internalStatsGenderScopeAll" to "Wszystko",
        "tournaments.internalStatsGenderScopeGirls" to "Tylko dziewczyny",
        "tournaments.internalStatsLast12Months" to "Ostatnie 12 miesięcy",
        "tournaments.internalStatsLast3Months" to "Ostatnie 3 miesiące",
        "tournaments.internalStatsLast6Months" to "Ostatnie 6 miesięcy",
        "tournaments.internalStatsOpenButton" to "Statystyki turniejów (singel)",
        "tournaments.internalStatsPeriod" to "Okres",
        "tournaments.internalStatsPoints" to "Suma",
        "tournaments.internalStatsPointsExplain" to "Punktacja: w każdej grupie miejsce jest wyrażone w procentach (przy N sklasyfikowanych: 1. = 100%, ostatni = 0%, liniowo pomiędzy; remis = ten sam wynik). N liczy wszystkich z miejscem w grupie (goście włączenie). Przy jednym zawodniku: 100%. W KO: maks. wynik grupowy klasy + 1, potem +1 za wygrany mecz KO. Tylko członkowie klubu, singel.",
        "tournaments.internalStatsTitle" to "Statystyki turniejów wewnętrznych (singel)",
        "tournaments.internalStatsTournamentsInPeriod" to "{count} turniej(ów) w okresie (bez mini-mistrzostw).",
        "tournaments.internalStatsTtAdult" to "Dorośli",
        "tournaments.internalTournaments" to "Turnieje wewnętrzne",
        "tournaments.knockoutLabel" to "KO",
        "tournaments.koRound" to "runda pucharowa",
        "tournaments.lastName" to "Nazwisko",
        "tournaments.livePosition" to "Siedzisko na żywo",
        "tournaments.loadFromTraining" to "Obciążenie z dnia treningowego",
        "tournaments.markMatchLive" to "Oznacz jako na żywo",
        "tournaments.maxGroupSize" to "Maksymalny rozmiar imprezy",
        "tournaments.mergeClasses" to "Połącz klasy (faza wspólnej grupy)",
        "tournaments.mergeDistribute" to "Rozdziel graczy z A do wszystkich grup (z B)",
        "tournaments.mergeSingleGroup" to "Wszyscy gracze z A w grupie (w B)",
        "tournaments.minBirthYear" to "Urodzony w roku lub później",
        "tournaments.miniChampionshipLocation" to "Lokalizacja",
        "tournaments.miniChampionships" to "Mini Mistrzostwa",
        "tournaments.miniChampionshipYear" to "Rok",
        "tournaments.miniChampionshipYearHint" to "12 = w tym roku 12 lub 13 lat, 10 = 10 lub 11, 8 = 9 i mniej",
        "tournaments.minimumParticipantsForPairings" to "Do parowań wymaganych jest co najmniej 2 uczestników.",
        "tournaments.missingDataPDF" to "Brakujące dane jako PDF",
        "tournaments.missingDataPDFSubtitle" to "Proszę zebrać brakujące dane (oznaczone ____) od uczestników i zanotować je tutaj.",
        "tournaments.missingDataPDFSubtitleTop3" to "Proszę zebrać brakujące dane pierwszych 3 (oznaczone ____) i zanotować je tutaj.",
        "tournaments.missingDataPDFTitle" to "Brakujące dane uczestników – Mini mistrzostwa",
        "tournaments.missingDataPDFTitleTop3" to "Brakujące dane – Top 3 Mini mistrzostwa",
        "tournaments.name" to "nazwa",
        "tournaments.newMiniChampionship" to "Nowe Mini Mistrzostwa",
        "tournaments.setShort" to "Set",
        "tournaments.newTournament" to "Dodaj nowy turniej",
        "tournaments.noAssignableMatches" to "Brak meczów, w których obaj gracze są wolni.",
        "tournaments.noClassesYet" to "Nie ma jeszcze dostępnych zajęć. Dodaj nową klasę.",
        "tournaments.noEligibleClass" to "Nie znaleziono odpowiedniej klasy.",
        "tournaments.noFreeTables" to "Brak wolnych stołów.",
        "tournaments.noMatchingTournamentsTitle" to "Brak pasujących turniejów",
        "tournaments.noOrphanedMatchesFound" to "Nie znaleziono osieroconych meczów.",
        "tournaments.noPlacementsYet" to "Nie ma jeszcze dostępnych miejsc docelowych.",
        "tournaments.noPlayerDataAvailable" to "Brak danych gracza",
        "tournaments.noPoolRulesYet12" to "Brak reguł. Przykład: miejsca 1 i 2 -> górne grupy rundy 2.",
        "tournaments.noPoolRulesYetFinal" to "Brak reguł. Przykład: miejsca 1 i 2 -> runda finałowa.",
        "tournaments.noTop3Yet" to "Pierwsze 3 miejsca nie zostały jeszcze ustalone.",
        "tournaments.noTournamentDate" to "Brak daty turnieju.",
        "tournaments.noTournamentsCreatedYet" to "Nie utworzono jeszcze żadnych turniejów.",
        "tournaments.noTrainingOnDate" to "Nie znaleziono treningu dla {date}.",
        "tournaments.noTrainingParticipants" to "Nie znaleziono uczestników treningu dla tej daty.",
        "tournaments.noValidTrainingParticipants" to "Nie znaleziono prawidłowych uczestników treningu dla tej daty.",
        "tournaments.numberOfGroups" to "Liczba grup",
        "tournaments.numberOfTables" to "Liczba stołów",
        "tournaments.openTournaments" to "Otwarte turnieje",
        "tournaments.optional" to "optional",
        "tournaments.orphanedMatchesRemoved" to "Usunięto {count} osieroconych meczów.",
        "tournaments.outOfCompetition" to "Gracz z grupy A poza konkursem",
        "tournaments.page" to "Strona",
        "tournaments.pairingAlreadyExists" to "Ta para już istnieje.",
        "tournaments.pairings" to "Podwójne pary",
        "tournaments.pairingsCreatedWithErrors" to "Utworzono {successCount} par, błędy: {errorCount}.",
        "tournaments.participantConflicts" to "Konflikty",
        "tournaments.participantNotFound" to "Nie znaleziono uczestnika.",
        "tournaments.participants" to "Uczestnicy",
        "tournaments.participantsNeedClassAssignment" to "{count} uczestnicy nie są jeszcze przypisani do zajęć. Należy je przypisać w pierwszej kolejności.",
        "tournaments.phone" to "Telefon",
        "tournaments.placementsPendingFinals" to "Ostateczne miejsca zostaną wyświetlone po utworzeniu wielu grup lub rundzie finałowej.",
        "tournaments.placementsPendingGroups" to "Miejsca w grupach pojawią się po rozegraniu meczów grupowych.",
        "tournaments.placementsPendingNoGroups" to "Miejsca pojawią się tutaj po rozegraniu meczów grupowych lub rundy finałowej.",
        "tournaments.placementsPendingSelectedClass" to "W aktualnie wybranej klasie nie ma jeszcze miejsc.",
        "tournaments.placementsPendingTitle" to "Miejsca docelowe nie są jeszcze dostępne",
        "tournaments.placesFromEachGroup" to "Miejsca z każdej grupy (np. 1,2)",
        "tournaments.player" to "Łyżwiarze",
        "tournaments.playerOne" to "Zawodnik 1",
        "tournaments.playerTwo" to "Zawodnik 2",
        "tournaments.playInGroups" to "Gra w grupach",
        "tournaments.playThirdPlace" to "Rozegraj mecz o trzecie miejsce",
        "tournaments.pleaseEnterDate" to "Proszę wprowadzić datę",
        "tournaments.pleaseSelectParticipant" to "Proszę wybrać ucznia.",
        "tournaments.points" to "Zwrotnica",
        "tournaments.pointsRatio" to "Punkty gry",
        "tournaments.poolRuleLabel" to "Reguła {number}",
        "tournaments.poolRulePlacesHelp" to "Przykład: 1 lub 1,2",
        "tournaments.poolRulePlacesLabel" to "Które miejsca awansują?",
        "tournaments.poolRulePreview" to "Z każdej grupy miejsca {places} awansują do {target}.",
        "tournaments.poolRuleQuickExamples" to "Szybkie przykłady:",
        "tournaments.poolRuleSummary" to "Miejsca {places} przejdź do {target}",
        "tournaments.poolRuleTargetGroupsDetailed" to "{count} grupy docelowe",
        "tournaments.poolRuleTargetKnockout" to "wspornik nokautu",
        "tournaments.poolRuleTargetLabel" to "Dokąd prowadzą te miejsca?",
        "tournaments.position" to "Kwadrat",
        "tournaments.problemConfigDescription" to "Sprawdź datę, nazwę i zwycięskie zestawy.",
        "tournaments.problemConfigTitle" to "Konfiguracja niekompletna",
        "tournaments.problemConflictsDescription" to "Przejrzyj nieprawidłowe zajęcia, brakujące dane lub niejasne przypisania.",
        "tournaments.problemConflictsTitle" to "{count} uczestnicy z konfliktami",
        "tournaments.problemDoublesAutoDescription" to "Klasę open debla można od razu sparować automatycznie.",
        "tournaments.problemDoublesDescription" to "Jedna lub więcej klas gry podwójnej nadal wymaga przypisania partnerów.",
        "tournaments.problemDoublesTitle" to "{count} partnerzy w grze podwójnej otwartej",
        "tournaments.problemGroupMatchesDescription" to "Grupy są już gotowe, ale mecze nie zostały jeszcze utworzone.",
        "tournaments.problemGroupMatchesTitle" to "Mecze grupowe nie zostały jeszcze wygenerowane",
        "tournaments.problemGroupsMissingDescription" to "Turniej grupowy wymaga najpierw utworzenia grup.",
        "tournaments.problemGroupsMissingTitle" to "Grupy nie zostały jeszcze utworzone",
        "tournaments.problemKnockoutReadyDescription" to "Faza grupowa dobiegła końca i można teraz rozpocząć rundę finałową.",
        "tournaments.problemKnockoutReadyTitle" to "Można rozpocząć nokaut",
        "tournaments.problemUnassignedAutoDescription" to "{count} z nich można przypisać automatycznie od razu.",
        "tournaments.problemUnassignedDescription" to "Ci uczestnicy nadal potrzebują ręcznego przypisania zajęć.",
        "tournaments.problemUnassignedTitle" to "{count} uczestnicy bez zajęć",
        "tournaments.promotionRule12" to "Awans: runda wstępna → runda pośrednia (1→2)",
        "tournaments.promotionRuleDescription12" to "Określ, które miejsca z każdej grupy wstępnej przejdą do rundy pośredniej.",
        "tournaments.promotionRuleDescriptionFinalGroups" to "Określ, które miejsca z poprzedniej rundy awansują do grup rundy finałowej.",
        "tournaments.promotionRuleDescriptionFinalKnockout" to "Określ, które miejsca z poprzedniej rundy awansują do drabinki pucharowej.",
        "tournaments.promotionRuleFinal" to "Awans: runda {from} → runda {to}",
        "tournaments.randomizeGroups" to "Losuj",
        "tournaments.randomPairings" to "Losowe pary podwójne",
        "tournaments.randomPairingsCreated" to "Utworzono losowe pary.",
        "tournaments.resetGroupMatches" to "Mecze międzygrupowe",
        "tournaments.resetGroups" to "Zresetuj grupy",
        "tournaments.result" to "Wynik",
        "tournaments.resultsRanking" to "Zaszeregowanie",
        "tournaments.round" to "Okrągły",
        "tournaments.roundGroupCount" to "Liczba grup",
        "tournaments.roundMode" to "Tryb",
        "tournaments.ruleStatusBlocked" to "Zablokowany",
        "tournaments.ruleStatusOk" to "Wygląda dobrze",
        "tournaments.ruleStatusOkDescription" to "Ta zasada pasuje do bieżącej rundy docelowej i może być używana bez zmian.",
        "tournaments.ruleStatusReview" to "Recenzja",
        "tournaments.save" to "Ratować",
        "tournaments.saveRounds" to "Zapisz rundy",
        "tournaments.seeded" to "Nasienie",
        "tournaments.selectClass" to "Wybierz klasę",
        "tournaments.selectClassPrompt" to "Proszę wybrać zajęcia.",
        "tournaments.selectedTournament" to "Aktywny turniej",
        "tournaments.selectParticipant" to "Wybierz użytkownika",
        "tournaments.selectPlayer" to "Wybierz graczy",
        "tournaments.selectTournamentFirst" to "Najpierw wybierz turniej.",
        "tournaments.selectTwoDifferentPlayers" to "Wybierz dwóch różnych zawodników.",
        "tournaments.setDiff" to "Różnica zdań",
        "tournaments.sets" to "frazesy",
        "tournaments.showClass" to "Zobacz klasę",
        "tournaments.showingTournamentCount" to "{visible} z {total}",
        "tournaments.showPlayerDetails" to "Wyświetl szczegóły gracza",
        "tournaments.singles" to "Pojedynczy",
        "tournaments.sourceClass" to "Źródło",
        "tournaments.stageActionMissingRulesHint" to "Zanim przeniesiesz graczy do następnej rundy, utwórz najpierw co najmniej jedną zasadę rozwoju.",
        "tournaments.stageActionRun" to "Uciekaj teraz",
        "tournaments.stageActionsDescription" to "Te kroki przechodzą zakwalifikowanych graczy do następnej rundy.",
        "tournaments.stageActionsTitle" to "Następne działania",
        "tournaments.stageConfigBadServerResponse" to "Nieprawidłowa odpowiedź serwera.",
        "tournaments.stageConfigCurrentSetup" to "Obecna struktura",
        "tournaments.stageConfigIntro" to "Runda pośrednia jest opcjonalna. Jeśli ją włączysz, później zawsze nastąpi runda finałowa. Finałowa runda pucharowa jest tworzona jako pojedyncza drabinka.",
        "tournaments.stageConfigLoadError" to "Błąd podczas ładowania konfiguracji rund.",
        "tournaments.stageConfigLoading" to "Ładowanie konfiguracji rund…",
        "tournaments.stageConfigMissingIds" to "Nie można zapisać: brak identyfikatora klubu lub turnieju.",
        "tournaments.stageConfigTitle" to "Runda pośrednia i finałowa",
        "tournaments.stageCreated" to "Utworzono rundę {round}.",
        "tournaments.stageFinalDescription" to "Zdecyduj, czy runda finałowa powinna zostać rozegrana w grupach, czy bezpośrednio w drabince pucharowej.",
        "tournaments.stageFlowBreakdownActionAddRule" to "Dodaj regułę",
        "tournaments.stageFlowBreakdownActionOpen" to "Otwórz regułę",
        "tournaments.stageFlowBreakdownActionReview" to "Przejrzyj problemy",
        "tournaments.stageFlowBreakdownErrors" to "{count} błędy blokowania",
        "tournaments.stageFlowBreakdownMissingRule" to "Nie dodano jeszcze żadnej kompletnej reguły",
        "tournaments.stageFlowBreakdownOk" to "Konfiguracja wygląda dobrze",
        "tournaments.stageFlowBreakdownWarnings" to "{count} ostrzeżenia są otwarte",
        "tournaments.stageFlowDirectFinal" to "Runda wstępna -> runda finałowa ({final})",
        "tournaments.stageFlowHealthBlocked" to "Okrągła logika jest sprzeczna",
        "tournaments.stageFlowHealthBlockedDescription" to "Co najmniej jedna reguła obecnie nie pasuje do rundy docelowej lub zawiera błędy konfiguracji blokowania.",
        "tournaments.stageFlowHealthIncomplete" to "Okrągła logika jest niekompletna",
        "tournaments.stageFlowHealthMissingRules" to "Co najmniej jedno przejście nie ma jeszcze pełnej reguły rozwoju.",
        "tournaments.stageFlowHealthOk" to "Okrągła logika wygląda dobrze",
        "tournaments.stageFlowHealthOkDescription" to "Przejścia pomiędzy rundami są w pełni skonfigurowane i na bieżąco spójne.",
        "tournaments.stageFlowHealthReviewDescription" to "Okrągła logika jest w zasadzie użyteczna, ale nadal powinna zostać przejrzana ze względu na otwarte wskazówki.",
        "tournaments.stageFlowPreviewMissing" to "Żadna reguła nie została jeszcze skonfigurowana.",
        "tournaments.stageFlowPreviewRule" to "Miejsca {places} przejdź do {target}",
        "tournaments.stageFlowPreviewRuleWithCount" to "{base} (oczekiwane kwalifikatory: {count})",
        "tournaments.stageFlowQualifiedPreviewEntry" to "G{group} · Miejsce {position} · {name}",
        "tournaments.stageFlowQualifiedPreviewTitle" to "Obecnie zakwalifikowany",
        "tournaments.stageFlowReadinessIncompleteGroups" to "Grupy {count} nie zostały jeszcze w pełni ustalone",
        "tournaments.stageFlowReadinessNoGroups" to "Nie ma jeszcze pasujących grup",
        "tournaments.stageFlowReadinessReady" to "Przejście jest gotowe do rozpoczęcia",
        "tournaments.stageFlowRecommendationError" to "Najpierw przejrzyj pierwszy błąd blokowania w logice rundy.",
        "tournaments.stageFlowRecommendationFixes" to "Typowe problemy z konfiguracją można natychmiast usunąć automatycznie.",
        "tournaments.stageFlowRecommendationMissingRule" to "Nadal brakuje pełnej reguły dla {label}. To najlepsze miejsce na kontynuację.",
        "tournaments.stageFlowRecommendationSave" to "Okrągła logika jest spójna. Możesz teraz zapisać konfigurację.",
        "tournaments.stageFlowRecommendationTitle" to "Zalecany następny krok",
        "tournaments.stageFlowRecommendationWarnings" to "Nadal istnieją ostrzeżenia, które należy sprawdzić przed zapisaniem.",
        "tournaments.stageFlowWithIntermediate" to "Runda wstępna -> runda pośrednia ({stage2}) -> runda finałowa ({final})",
        "tournaments.stageParticipantsTransferred" to "Kwalifikujący się gracze zostali przeniesieni do {round}.",
        "tournaments.stageStep1" to "Krok 1",
        "tournaments.stageStep1Description" to "Najpierw zdecyduj, czy po rundzie wstępnej powinna odbyć się dodatkowa runda.",
        "tournaments.stageStep1Title" to "Zdecyduj się na rundę pośrednią",
        "tournaments.stageStep2" to "Krok 2",
        "tournaments.stageStep2Description" to "Określ, jak powinna wyglądać runda pośrednia i ile grup potrzebuje.",
        "tournaments.stageStep3" to "Krok 3",
        "tournaments.stageValidationApplyAllFixes" to "Zastosuj szybkie poprawki {count}",
        "tournaments.stageValidationApplyFix" to "Stosować",
        "tournaments.stageValidationApplyTargetGroupFix" to "Ustaw na {count} grupy docelowe",
        "tournaments.stageValidationApplyTargetTypeFix" to "Przełącz na {target}",
        "tournaments.stageValidationDescription" to "Napraw te punkty przed zapisaniem lub przeniesieniem graczy do następnej rundy.",
        "tournaments.stageValidationGroupCountRequired" to "Ustaw co najmniej jedną prawidłową liczbę grup.",
        "tournaments.stageValidationKnockoutByesLikely" to "Biorąc pod uwagę oczekiwane kwalifikacje {count}, drabinka pucharowa najprawdopodobniej będzie zawierać pożegnania.",
        "tournaments.stageValidationKnockoutNeedsTwoPlayers" to "Drabina pucharowa wymaga co najmniej 2 wykwalifikowanych graczy.",
        "tournaments.stageValidationKnockoutTargetOnly" to "W rundzie finałowej z nokautem jako cel może służyć wyłącznie wspornik nokautu.",
        "tournaments.stageValidationNoRules" to "Nie ma jeszcze reguły awansu dla {stage}.",
        "tournaments.stageValidationNotEnoughQualifiersForGroups" to "Mając tylko kwalifikatory {count} dla grup docelowych {groups}, zostaną utworzone puste grupy.",
        "tournaments.stageValidationRulePlacesDuplicate" to "Pojedyncza reguła nie może zawierać tego samego miejsca więcej niż raz.",
        "tournaments.stageValidationRulePlacesGap" to "Definicja miejsca zawiera luki. Zwykle zamierzona jest kolejność ciągła, taka jak 1,2 lub 1,2,3.",
        "tournaments.stageValidationRulePlacesInvalid" to "Definicja miejsca jest nieprawidłowa. Dozwolone są tylko dodatnie liczby całkowite, takie jak 1 lub 1,2.",
        "tournaments.stageValidationRulePlacesRequired" to "Wpisz chociaż jedno miejsce, które powinno awansować.",
        "tournaments.stageValidationRulesOverlap" to "Miejsce {place} jest przypisane dwukrotnie, w regule {first} i regule {second}.",
        "tournaments.stageValidationSaveBlocked" to "Najpierw napraw wyróżnione błędy konfiguracji.",
        "tournaments.stageValidationSuggestion" to "Sugestia: {value}",
        "tournaments.stageValidationTargetGroupCountMismatch" to "Liczba grup docelowych musi odpowiadać rundzie docelowej. Oczekiwano: {expected}.",
        "tournaments.stageValidationTargetGroupsRequired" to "Proszę wprowadzić prawidłową liczbę grup docelowych.",
        "tournaments.stageValidationTargetTypeMismatch" to "Cel tej reguły musi odpowiadać rundzie docelowej. Oczekiwano: {target}.",
        "tournaments.stageValidationThinGroupsLikely" to "W przypadku kwalifikatorów {count} w {groups} grupach docelowych grupy będą prawdopodobnie bardzo małe.",
        "tournaments.stageValidationTitle" to "Przejrzyj konfigurację",
        "tournaments.startKORound" to "Rozpocznij rundę pucharową",
        "tournaments.statusActionAssign" to "Przydzielać",
        "tournaments.statusActionCreate" to "Tworzyć",
        "tournaments.statusActionGenerate" to "Spowodować",
        "tournaments.statusActionPair" to "Para",
        "tournaments.statusActionReview" to "Recenzja",
        "tournaments.statusActionStart" to "Start",
        "tournaments.statusConfigIncomplete" to "Konfiguracja niekompletna",
        "tournaments.statusConfigReady" to "Konfiguracja gotowa",
        "tournaments.statusFinished" to "Zakończone",
        "tournaments.statusGroupsMissing" to "Grupy nie zostały jeszcze utworzone",
        "tournaments.statusGroupsReady" to "Grupy gotowe",
        "tournaments.statusGroupsRunning" to "Faza grupowa w toku",
        "tournaments.statusKnockoutReady" to "Nokaut gotowy do rozpoczęcia",
        "tournaments.statusKnockoutRunning" to "Trwa nokaut",
        "tournaments.statusLive" to "Na żywo",
        "tournaments.statusOpen" to "Otwarte",
        "tournaments.statusParticipantsConflicts" to "{count} uczestnicy z konfliktami",
        "tournaments.statusParticipantsReady" to "{count} uczestnicy bezkonfliktowi",
        "tournaments.statusParticipantsUnassigned" to "{count} bez klasy",
        "tournaments.statusTournamentCompleted" to "Turniej zakończony",
        "tournaments.statusUnpairedDoubles" to "{count} gra podwójna bez partnera",
        "tournaments.strategy" to "Strategia",
        "tournaments.tabConfig" to "Konfiguracja",
        "tournaments.tabGroups" to "Klasyfikacja basenowa",
        "tournaments.table" to "Stół",
        "tournaments.tablesDistributed" to "Stoły zostały rozdzielone.",
        "tournaments.tabParticipants" to "Uczestnicy",
        "tournaments.tabPlacements" to "Miejsca",
        "tournaments.tabResults" to "Wyniki",
        "tournaments.target" to "Cel",
        "tournaments.targetClass" to "Cel",
        "tournaments.targetGroupCount" to "Docelowa liczba grup",
        "tournaments.targetGroupsLabel" to "grupy {count}",
        "tournaments.tournamentClassGenderFemale" to "Kobiety",
        "tournaments.tournamentClassGenderOpen" to "Otwarta (wszyscy)",
        "tournaments.tournamentName" to "Nazwa turnieju",
        "tournaments.tournamentParticipations" to "Oficjalne turnieje i zgłoszenia",
        "tournaments.transferQualifiedToFinalFromIntermediate" to "Przenieś kwalifikujących się graczy do rundy finałowej",
        "tournaments.transferQualifiedToFinalFromIntermediateDesc" to "Stosuje zasady rundy pośredniej do rundy finałowej i przenosi kwalifikujących się graczy pomiędzy rundami.",
        "tournaments.transferQualifiedToFinalFromPreliminary" to "Przenieś kwalifikujących się graczy bezpośrednio do rundy finałowej",
        "tournaments.transferQualifiedToFinalFromPreliminaryDesc" to "Korzysta z zasad rundy wstępnej do rundy finałowej i bezpośrednio tam tworzy kwalifikujących się graczy.",
        "tournaments.transferQualifiedToIntermediate" to "Przenieś kwalifikujących się graczy do rundy pośredniej",
        "tournaments.transferQualifiedToIntermediateDesc" to "Stosuje zasady rundy wstępnej do rundy pośredniej i przenosi kwalifikujących się graczy pomiędzy nimi.",
        "tournaments.unknown" to "Nieznany",
        "tournaments.unknownDate" to "Nieznana data",
        "tournaments.unmarkMatchLive" to "Usuń oznaczenie na żywo",
        "tournaments.unpairedDoubles" to "Debel bez partnera",
        "tournaments.useIntermediateStage" to "Użyj rundy pośredniej",
        "tournaments.warningBirthDateMissing" to "Brakuje daty urodzenia dla tej klasy",
        "tournaments.warningClassMissing" to "Nie znaleziono klasy",
        "tournaments.warningGenderMismatch" to "Płeć nie pasuje do klasy",
        "tournaments.warningGenderMissing" to "Brakuje płci dla tej klasy",
        "tournaments.warningMissingPairing" to "Brakuje partnera do debla",
        "tournaments.warningTooOldForClass" to "Za stary do tej klasy",
        "tournaments.warningTooYoungForClass" to "Za młody do tej klasy",
        "tournaments.winningSets" to "Zwycięskie stawki",
        "tournaments.withoutClass" to "Bez klasy",
        "tournaments.workspaceProblemsTitle" to "{count} otwarte problemy",
        "trainingDetails.birthdate" to "Data urodzenia",
        "trainingDetails.birthYear" to "Rok urodzenia",
        "trainingDetails.last12Months" to "Ostatnie 12 miesięcy",
        "trainingDetails.last3Months" to "Ostatnie 3 miesiące",
        "trainingDetails.maxBirthYear" to "Urodzony ≤ rok",
        "trainingDetails.noTrainings" to "Brak możliwości udziału w szkoleniu",
        "trainingDetails.title" to "Szczegóły szkolenia",
        "trainingDetails.total" to "Całkowity",
        "trainingDetails.trainingParticipations" to "Udział w szkoleniach (posortowane malejąco)",
        "trainingGroupsTab.addMember" to "Dodaj członka...",
        "trainingGroupsTab.cancel" to "Anulować",
        "trainingGroupsTab.create" to "Tworzyć",
        "trainingGroupsTab.delete" to "Usuwać",
        "trainingGroupsTab.edit" to "Redagować",
        "trainingGroupsTab.editGroup" to "Edytuj grupę",
        "trainingGroupsTab.groupName" to "Nazwa grupy",
        "trainingGroupsTab.groups" to "Klasyfikacja basenowa",
        "trainingGroupsTab.members" to "Członkowie",
        "trainingGroupsTab.newGroup" to "+ Nowa grupa",
        "trainingGroupsTab.noMembersAvailable" to "Brak dostępnych partnerów stowarzyszonych",
        "trainingGroupsTab.remove" to "Usunąć",
        "trainingStats.actions" to "Akcje",
        "trainingStats.activeMembers" to "Aktywni członkowie",
        "trainingStats.allTrainingDays" to "Wszystkie dni treningowe",
        "trainingStats.attendingMembers" to "Obecni członkowie",
        "trainingStats.averageParticipationCurrentMonth" to "Średnia frekwencja (bieżący miesiąc)",
        "trainingStats.averageParticipationHalfYear" to "Średnia frekwencja (półrocze)",
        "trainingStats.averageParticipationLastMonth" to "Średnia frekwencja (poprzedni miesiąc)",
        "trainingStats.averageParticipationQuarter" to "Średnia frekwencja (kwartał)",
        "trainingStats.averageParticipationYear" to "Średnia frekwencja (rok)",
        "trainingStats.birthdate" to "Data urodzenia",
        "trainingStats.date" to "Data",
        "trainingStats.lastTraining" to "Ostatni trening",
        "trainingStats.memberParticipations" to "Udziały członków",
        "trainingStats.name" to "nazwa",
        "trainingStats.noParticipants" to "Brak uczestników",
        "trainingStats.panelAgeGroups" to "Frekwencja wg kategorii wiekowej",
        "trainingStats.panelBestDay" to "Najbardziej uczęszczany trening",
        "trainingStats.panelGroupPerformance" to "Rozwój wg grup",
        "trainingStats.panelMemberStructure" to "Struktura członków",
        "trainingStats.panelMonthlyTrend" to "Trend miesięczny",
        "trainingStats.panelSummary" to "Kluczowe liczby (filtr)",
        "trainingStats.panelWeekdayStats" to "Dni treningowe wg dnia tygodnia",
        "trainingStats.participants" to "Uczestnicy",
        "trainingStats.participations12Months" to "Udziały (12 miesięcy)",
        "trainingStats.participations3Months" to "Udziały (3 miesiące)",
        "trainingStats.participationsTotal" to "Udziały (łącznie)",
        "trainingStats.qttr" to "QTTR",
        "trainingStats.showDetails" to "Pokaż szczegóły",
        "trainingStats.title" to "Statystyki treningowe",
        "trainingStats.trainingDayFilter" to "Dzień treningowy",
        "trainingStats.trainingDays" to "Dni treningowe (ostatnie 12 miesięcy)",
        "trainingStats.ttr" to "TTR",
        "trainingStats.weekday" to "Dzień tygodnia",
        "trainingTimesTab.addTime" to "Dodaj czas",
        "trainingTimesTab.cancel" to "Anulować",
        "trainingTimesTab.create" to "Tworzyć",
        "trainingTimesTab.delete" to "Usuwać",
        "trainingTimesTab.edit" to "Redagować",
        "trainingTimesTab.editTime" to "Edytuj czas treningu",
        "trainingTimesTab.excludeFromQuickDiaryCreate" to "Wyklucz z szybkiego tworzenia (pamiętnik)",
        "trainingTimesTab.excludeFromQuickDiarySaveError" to "Nie można zapisać ustawienia.",
        "trainingTimesTab.friday" to "Piątek",
        "trainingTimesTab.from" to "Z:",
        "trainingTimesTab.loading" to "Ładowanie czasów treningów...",
        "trainingTimesTab.monday" to "Poniedziałek",
        "trainingTimesTab.noTimes" to "Nie określono godzin szkoleń",
        "trainingTimesTab.saturday" to "Sobota",
        "trainingTimesTab.save" to "Ratować",
        "trainingTimesTab.saveError" to "Błąd podczas zapisywania czasu treningu",
        "trainingTimesTab.sunday" to "Niedziela",
        "trainingTimesTab.thursday" to "Czwartek",
        "trainingTimesTab.to" to "Do:",
        "trainingTimesTab.tuesday" to "Wtorek",
        "trainingTimesTab.wednesday" to "Środa",
        "trainingTimesTab.weekday" to "Dni powszednie:",
        "unknown" to "Nieznany",
    ) }

    private val th: Map<String, String> by lazy { mapOf(
        "accident.accident" to "อุบัติเหตุ",
        "accident.accidentDescription" to "รายละเอียดของอุบัติเหตุ...",
        "accident.close" to "ปิด",
        "accident.member" to "สมาชิก",
        "accident.pleaseSelect" to "กรุณาเลือก",
        "accident.reportAccident" to "แจ้งอุบัติเหตุ",
        "accident.reportedAccidents" to "รายงานอุบัติเหตุ",
        "accident.submit" to "ส่ง",
        "activityStats.activityStatistics" to "สถิติการออกกำลังกาย",
        "activityStats.last3Participations" to "3 รายการสุดท้าย",
        "activityStats.noParticipations" to "ไม่มีรายการที่มีอยู่",
        "activityStats.noStatistics" to "ไม่มีสถิติ",
        "activityStats.title" to "สถิติการออกกำลังกาย",
        "app.name" to "สมุดบันทึกการฝึกซ้อม",
        "app.title" to "สมุดบันทึกการฝึกซ้อม",
        "auth.accountActivated" to "เปิดใช้งานบัญชีแล้ว! ตอนนี้คุณสามารถเข้าสู่ระบบได้แล้ว",
        "auth.activate" to "เปิดใช้งาน",
        "auth.activateAccount" to "เปิดใช้งานบัญชี",
        "auth.activationFailed" to "การเปิดใช้งานล้มเหลว กรุณาตรวจสอบลิงก์",
        "auth.confirmPassword" to "ยืนยันรหัสผ่าน",
        "auth.email" to "อีเมล",
        "auth.forgotPassword" to "ลืมรหัสผ่าน?",
        "auth.forgotPasswordDescription" to "กรอกอีเมลของคุณ คุณจะได้รับลิงก์สำหรับรีเซ็ตรหัสผ่าน",
        "auth.hasAccount" to "มีบัญชีอยู่แล้ว?",
        "auth.login" to "เข้าสู่ระบบ",
        "auth.loginFailed" to "เข้าสู่ระบบล้มเหลว กรุณาตรวจสอบข้อมูลของคุณ",
        "auth.loginSuccess" to "เข้าสู่ระบบสำเร็จ",
        "auth.logout" to "ออกจากระบบ",
        "auth.logoutSuccess" to "ออกจากระบบสำเร็จ",
        "auth.newPassword" to "รหัสผ่านใหม่",
        "auth.noAccount" to "ยังไม่มีบัญชี?",
        "auth.password" to "รหัสผ่าน",
        "auth.passwordResetSuccess" to "เปลี่ยนรหัสผ่านสำเร็จ คุณสามารถเข้าสู่ระบบได้แล้ว",
        "auth.passwordsDoNotMatch" to "รหัสผ่านไม่ตรงกัน",
        "auth.passwordTooShort" to "รหัสผ่านต้องมีอย่างน้อย 6 ตัวอักษร",
        "auth.register" to "ลงทะเบียน",
        "auth.registerFailed" to "การลงทะเบียนล้มเหลว โปรดลองอีกครั้ง",
        "auth.registerSuccess" to "การลงทะเบียนสำเร็จ! โปรดตรวจสอบอีเมลของคุณเพื่อเปิดใช้งานบัญชีของคุณ",
        "auth.rememberMe" to "จดจำฉัน",
        "auth.resetEmailSent" to "หากมีบัญชีที่ใช้อีเมลนี้ ลิงก์รีเซ็ตได้ถูกส่งแล้ว กรุณาตรวจสอบกล่องจดหมาย (และสแปม)",
        "auth.resetFailed" to "ไม่สามารถเปลี่ยนรหัสผ่านได้ ลิงก์อาจหมดอายุแล้ว",
        "auth.resetPassword" to "ตั้งรหัสผ่านใหม่",
        "auth.resetRequestFailed" to "คำขอล้มเหลว กรุณาลองอีกครั้ง",
        "auth.saveNewPassword" to "บันทึกรหัสผ่าน",
        "auth.saving" to "กำลังบันทึก...",
        "auth.sending" to "กำลังส่ง...",
        "auth.sendResetLink" to "ส่งลิงก์",
        "auth.sessionExpired" to "เซสชันของคุณหมดอายุแล้ว คุณจะถูกออกจากระบบ",
        "auth.toLogin" to "ไปที่เข้าสู่ระบบ",
        "baseDialog.close" to "ปิด",
        "baseDialog.minimize" to "ย่อเล็กสุด",
        "baseDialog.resize" to "ปรับขนาด",
        "billing.autoSuggestMapping" to "แนะนำรถ",
        "billing.deleteBilling" to "ลบ",
        "billing.deleteConfirm" to "ลบคำสั่งที่สร้างขึ้นนี้จริงหรือ",
        "billing.deleteError" to "ไม่สามารถลบการเรียกเก็บเงินได้",
        "billing.deleteSuccess" to "ลบการเรียกเก็บเงินแล้ว",
        "billing.deleteTemplate" to "ลบเทมเพลต",
        "billing.deleteTemplateConfirm" to "ต้องการลบเทมเพลตนี้จริงหรือ",
        "billing.deleteTemplateError" to "ไม่สามารถลบเทมเพลตได้",
        "billing.deleteTemplateSuccess" to "ลบเทมเพลตแล้ว",
        "billing.documentDate" to "วันที่",
        "billing.downloadError" to "ไม่สามารถดาวน์โหลด PDF ได้",
        "billing.downloadPdf" to "ดาวน์โหลดไฟล์ PDF",
        "billing.generateAndDownloadPdf" to "สร้าง + ดาวน์โหลด PDF",
        "billing.generateError" to "ไม่สามารถสร้าง PDF ได้",
        "billing.generateOwnBilling" to "สร้างการเรียกเก็บเงินของคุณเอง",
        "billing.generatePdf" to "สร้าง PDF",
        "billing.generateSuccess" to "สร้าง PDF แล้ว",
        "billing.generatingPdf" to "สร้าง PDF...",
        "billing.hourlyRate" to "เงินเดือนรายชั่วโมง",
        "billing.hoursAutoHint" to "จำนวนชั่วโมงจะคำนวณโดยอัตโนมัติจากวันฝึกอบรม: {hours} ชม. ({count} หน่วย)",
        "billing.hoursTotal" to "จำนวนชั่วโมง",
        "billing.iban" to "IBAN",
        "billing.ibanBoxesReset" to "กล่อง IBAN ถูกรีเซ็ตแล้ว",
        "billing.ibanLearnCancel" to "ยกเลิกการเรียนรู้ IBAN",
        "billing.ibanLearnDone" to "กล่อง IBAN ได้รับการกำหนดจากพื้นที่ที่เลือก",
        "billing.ibanLearnStart" to "เรียนรู้ IBAN",
        "billing.ibanLearnStep1" to "การเรียนรู้ IBAN: โปรดคลิกที่ช่อง IBAN แรกที่จะใช้",
        "billing.ibanLearnStep2" to "การเรียนรู้ IBAN: โปรดคลิกที่ช่อง IBAN สุดท้ายที่จะใช้",
        "billing.ibanWithoutCountry" to "โดยไม่มีรหัสประเทศ",
        "billing.locationText" to "ที่ตั้ง",
        "billing.mappingEditorHint" to "เลือกช่อง จากนั้นคลิกใน PDF จะเข้ารับตำแหน่งทันที",
        "billing.mappingEditorTitle" to "กำหนดฟิลด์ใน PDF ด้วยการคลิก",
        "billing.mappingField" to "สนาม",
        "billing.mappingHint" to "ปรับและบันทึกพิกัดหนึ่งครั้งสำหรับแต่ละฟิลด์ ตำแหน่งเหล่านี้ใช้ใน \"สร้าง PDF\"",
        "billing.mappingPreviewError" to "ไม่สามารถโหลดตัวอย่าง PDF สำหรับการแมปได้",
        "billing.mappingSaved" to "บันทึกการทำแผนที่แล้ว",
        "billing.mappingSaveError" to "ไม่สามารถบันทึกการแมปได้",
        "billing.mappingSuggested" to "มีการป้อนคำแนะนำรถยนต์แล้ว โปรดตรวจสอบและปรับแต่ง",
        "billing.mappingSuggestError" to "ไม่สามารถระบุคำแนะนำอัตโนมัติได้",
        "billing.mappingTitle" to "การทำแผนที่ตำแหน่ง",
        "billing.monthFrom" to "เดือนของ",
        "billing.monthTo" to "เดือนถึง",
        "billing.noRuns" to "ยังไม่มีใบแจ้งหนี้",
        "billing.noSessionsInRange" to "ไม่พบเซสชันการฝึกอบรมในช่วงเวลาที่เลือก",
        "billing.noTemplates" to "ยังไม่มีเทมเพลตที่ใช้ได้",
        "billing.omitField" to "อย่าระบุ",
        "billing.openMappingEditor" to "การทำแผนที่ด้วยการคลิก",
        "billing.resetIbanBoxes" to "กล่อง IBAN รีเซ็ต",
        "billing.runSection" to "ดำเนินการเรียกเก็บเงิน",
        "billing.runsTitle" to "การเรียกเก็บเงินก่อนหน้า",
        "billing.sameAccountCheckbox" to "บัญชีเดียวกันกับใบแจ้งยอดครั้งล่าสุด",
        "billing.saveMapping" to "บันทึกการทำแผนที่",
        "billing.selfRecipientName" to "ชื่อของตัวเอง",
        "billing.sessionHours" to "ชั่วโมง",
        "billing.sessionLabel" to "ตัวระบุ",
        "billing.sessionTime" to "เวลา",
        "billing.step1" to "ขั้นตอนที่ 1: เทมเพลตร้านค้า",
        "billing.step2" to "ขั้นตอนที่ 2: สร้างการดำเนินการเรียกเก็บเงิน",
        "billing.step3" to "ขั้นตอนที่ 3: สร้างและดาวน์โหลดไฟล์ PDF",
        "billing.subtitle" to "สร้างใบเรียกเก็บเงินบทเรียนฝึกฝนรายเดือนของคุณเอง",
        "billing.template" to "แม่แบบ",
        "billing.templateDescription" to "คำอธิบาย",
        "billing.templateName" to "ชื่อเทมเพลต",
        "billing.templatePdf" to "เทมเพลต PDF",
        "billing.templateSection" to "อัปโหลดเทมเพลต",
        "billing.title" to "ใบแจ้งหนี้",
        "billing.uploadTemplate" to "บันทึกเทมเพลต",
        "calendar.agendaEmpty" to "ไม่มีกิจกรรมในเดือนนี้",
        "calendar.agendaTitle" to "กิจกรรมในเดือนนี้",
        "calendar.cancelCancellation.confirm" to "ยกเลิกการงดซ้อม",
        "calendar.cancelCancellation.message" to "ต้องการยกเลิกการงดซ้อม “{title}” วันที่ {date} หรือไม่?",
        "calendar.cancelCancellation.title" to "ยกเลิกการงดซ้อม",
        "calendar.cancellation.date" to "วันที่",
        "calendar.cancellation.description" to "ซ่อนเวลาการฝึกอบรมปกติ",
        "calendar.cancellation.fallbackTitle" to "ยกเลิกการฝึกอบรมแล้ว",
        "calendar.cancellation.reasonPlaceholder" to "เหตุผล (ไม่บังคับ)",
        "calendar.cancellation.saving" to "ประหยัด...",
        "calendar.cancellation.submit" to "เพิ่ม",
        "calendar.cancellation.subtitle" to "ยกเลิกการฝึกอบรม",
        "calendar.cancellation.title" to "ยกเลิกการฝึกอบรมแล้ว",
        "calendar.cancellation.trainingGroups" to "กลุ่มฝึกอบรม",
        "calendar.cancellation.untilOptional" to "จนกระทั่งเป็นทางเลือก",
        "calendar.customEvent.categoryPlaceholder" to "หมวดหมู่ (ไม่บังคับ)",
        "calendar.customEvent.description" to "การประชุมภาค การประชุม การประชุมภายใน ...",
        "calendar.customEvent.saving" to "ประหยัด...",
        "calendar.customEvent.submit" to "สร้าง",
        "calendar.customEvent.subtitleFallback" to "งานของตัวเอง",
        "calendar.customEvent.title" to "กิจกรรมของตัวเอง",
        "calendar.customEvent.titlePlaceholder" to "ชื่อ",
        "calendar.description" to "วันฝึกซ้อม การแข่งขันระดับสโมสร และการแข่งขันลีกในมุมมองรายเดือน",
        "calendar.eventTitles.match" to "การแข่งขันลีก",
        "calendar.eventTitles.officialTournament" to "การเข้าร่วมการแข่งขัน",
        "calendar.eventTitles.tournament" to "ทัวร์นาเมนต์",
        "calendar.eventTitles.training" to "การฝึกอบรม",
        "calendar.eyebrow" to "ปฏิทินสโมสร",
        "calendar.holidayTypes.holiday" to "วันหยุด",
        "calendar.holidayTypes.schoolHoliday" to "วันหยุดโรงเรียน",
        "calendar.legend.customEvent" to "เหตุการณ์",
        "calendar.legend.holiday" to "วันหยุด",
        "calendar.legend.match" to "การแข่งขันลีก",
        "calendar.legend.officialTournament" to "การมีส่วนร่วม",
        "calendar.legend.schoolHoliday" to "วันหยุดโรงเรียน",
        "calendar.legend.tournament" to "ทัวร์นาเมนต์",
        "calendar.legend.training" to "การฝึกอบรม",
        "calendar.legend.trainingCancellation" to "ยกเลิก",
        "calendar.loadError" to "ไม่สามารถโหลดข้อมูลปฏิทินได้",
        "calendar.loading" to "กำลังโหลดข้อมูลปฏิทิน...",
        "calendar.match.guest" to "ห่างออกไป",
        "calendar.match.home" to "บ้าน",
        "calendar.noClub" to "โปรดเลือกสโมสรก่อน",
        "calendar.options.subtitle" to "การยกเลิกและกิจกรรมของตัวเอง",
        "calendar.options.title" to "ตัวเลือก",
        "calendar.participants" to "ผู้เข้าร่วม {count} คน",
        "calendar.quickCancellation.confirm" to "เพิ่มการยกเลิก",
        "calendar.quickCancellation.message" to "ทำเครื่องหมาย “{title}” ว่าเป็นการยกเลิกการฝึกอบรมใช่ไหม",
        "calendar.quickCancellation.noGroups" to "ไม่มีกลุ่มการฝึกอบรมที่มีกำหนดเวลาการฝึกอบรม",
        "calendar.quickCancellation.title" to "ยกเลิกการฝึกอบรม",
        "calendar.quickCancellation.trainingGroups" to "กลุ่มฝึกอบรมที่ได้รับผลกระทบ",
        "calendar.quickCancellation.useWholeRange" to "ใช้กับระยะเวลาเต็ม ({start} ถึง {end})",
        "calendar.recurringTrainingTime" to "เวลาฝึกซ้อมเป็นประจำ",
        "calendar.sources.customEvents" to "กิจกรรมของตัวเอง",
        "calendar.sources.holidays" to "วันหยุด/ปิดเทอม",
        "calendar.sources.matches" to "การแข่งขันลีก",
        "calendar.sources.officialTournaments" to "การเข้าร่วมการแข่งขัน",
        "calendar.sources.tournaments" to "ทัวร์นาเมนต์",
        "calendar.sources.trainingCancellations" to "การยกเลิกการฝึกอบรม",
        "calendar.sources.trainingDays" to "วันอบรม",
        "calendar.sources.trainingTimes" to "เวลาฝึกซ้อม",
        "calendar.sourceWarning" to "{source} ไม่สามารถโหลดได้",
        "calendar.starts" to "{count} เริ่มต้น",
        "calendar.title" to "ปฏิทิน",
        "calendar.today" to "วันนี้",
        "calendar.tournament.club" to "การแข่งขันของสโมสร",
        "calendar.tournament.open" to "เปิดการแข่งขัน",
        "calendar.weekdays.friday" to "ศ.",
        "calendar.weekdays.monday" to "จ.",
        "calendar.weekdays.saturday" to "ส.",
        "calendar.weekdays.sunday" to "อา.",
        "calendar.weekdays.thursday" to "พฤ.",
        "calendar.weekdays.tuesday" to "อ.",
        "calendar.weekdays.wednesday" to "พ.",
        "club.accessDenied" to "ไม่ได้รับอนุญาตให้เข้าถึงสโมสรนี้",
        "club.accessRequested" to "ส่งคำขอเข้าถึงแล้ว",
        "club.accessRequestFailed" to "ไม่สามารถส่งคำขอเข้าถึงได้",
        "club.accessRequestPending" to "ได้ส่งคำขอเข้าถึงสโมสรนี้แล้ว โปรดรอสักครู่",
        "club.create" to "สร้างสโมสร",
        "club.createTitle" to "สร้างสโมสร",
        "club.diary" to "สมุดบันทึกการฝึกซ้อม",
        "club.errorLoadingRequests" to "เกิดข้อผิดพลาดในการโหลดคำขอที่รอดำเนินการ",
        "club.load" to "โหลด",
        "club.members" to "สมาชิก",
        "club.mobileSelectHint" to "โปรดเลือกสโมสรก่อนเพื่อใช้แอปบนสมาร์ทโฟน",
        "club.name" to "ชื่อสโมสร",
        "club.new" to "สโมสรใหม่",
        "club.noAccess" to "คุณยังไม่ได้รับสิทธิ์เข้าถึงสโมสรนี้",
        "club.openAccessRequests" to "คำขอเข้าถึงที่รอดำเนินการ",
        "club.openRequests" to "คำขอเข้าถึงที่รอดำเนินการ",
        "club.requestAccess" to "ขอสิทธิ์เข้าถึง",
        "club.select" to "เลือกสโมสร",
        "club.selectPlaceholder" to "เลือกสโมสร...",
        "club.title" to "สโมสร",
        "club.trainingDiary" to "สมุดบันทึกการฝึกซ้อม",
        "clubSettings.associationMemberNumber" to "หมายเลขสมาชิกสมาคม",
        "clubSettings.associationMemberNumberPlaceholder" to "เช่น SN-12-3456.",
        "clubSettings.autoFetchRankings" to "ดึงข้อมูลการจัดอันดับโดยอัตโนมัติ",
        "clubSettings.greetingHint" to "ข้อความนี้ปรากฏในแท็บ \"ยินดีต้อนรับ\" ของแผ่นรายงานเกม",
        "clubSettings.greetingPlaceholder" to "ข้อความต้อนรับเกมในบ้าน...",
        "clubSettings.greetingText" to "ข้อความทักทาย",
        "clubSettings.guestPlayers" to "ผู้เล่นและทีมแขกคู่",
        "clubSettings.guestTeam" to "ชื่อทีมแขก",
        "clubSettings.homePlayers" to "ผู้เล่นและทีมเหย้าคู่",
        "clubSettings.homeTeam" to "ชื่อทีมเหย้า",
        "clubSettings.loadFailed" to "ไม่สามารถโหลดการตั้งค่าได้",
        "clubSettings.memberDataQuality" to "สมาชิกคุณภาพข้อมูล",
        "clubSettings.memberDataQualityHint" to "ช่องเหล่านี้นับตามความจำเป็นในหน้าสมาชิก ยังป้อนข้อมูลทุกช่องได้",
        "clubSettings.myTischtennisFedNickname" to "อักษรย่อของสมาคม",
        "clubSettings.myTischtennisFedNicknamePlaceholder" to "เช่น เฮททีวี",
        "clubSettings.myTischtennisRankings" to "การจัดอันดับ myTischtennis TTR/QTTR",
        "clubSettings.myTischtennisRankingsHint" to "การดึงข้อมูลอันดับสโมสรโดยอัตโนมัติสำหรับการอัพเดต TTR และ QTTR ของสมาชิก",
        "clubSettings.noClubSelected" to "กรุณาเลือกแพทย์ก่อน",
        "clubSettings.placeholders" to "สเปเซอร์",
        "clubSettings.rankingsUsesAssociationNumber" to "หมายเลขสโมสรสำหรับการดึงรายชื่อการจัดอันดับสอดคล้องกับหมายเลขสมาชิกสมาคมด้านบน",
        "clubSettings.requireCity" to "จำเป็นต้องระบุตำแหน่ง",
        "clubSettings.requireEmail" to "อีเมล์ จำเป็น",
        "clubSettings.requirePhone" to "หมายเลขโทรศัพท์ จำเป็น",
        "clubSettings.requirePostalCode" to "ต้องระบุรหัสไปรษณีย์",
        "clubSettings.requireStreet" to "ต้องมีถนน",
        "clubSettings.save" to "บันทึก",
        "clubSettings.saved" to "เก็บไว้",
        "clubSettings.saveFailed" to "ไม่สามารถบันทึกได้",
        "clubSettings.settings" to "การตั้งค่า",
        "clubSettings.title" to "การตั้งค่าคลับ",
        "clubSettings.trainingGroups" to "กลุ่มฝึกอบรม",
        "clubSettings.trainingTimes" to "ตารางฝึกซ้อม",
        "common.actions" to "การดำเนินการ",
        "common.active" to "ใช้งานอยู่",
        "common.add" to "เพิ่ม",
        "common.all" to "ทั้งหมด",
        "common.apply" to "นำไปใช้",
        "common.back" to "กลับ",
        "common.cancel" to "ยกเลิก",
        "common.choose" to "เลือก",
        "common.clear" to "ล้าง",
        "common.close" to "ปิด",
        "common.confirm" to "ยืนยัน",
        "common.create" to "สร้าง",
        "common.date" to "วันที่",
        "common.days" to "วัน",
        "common.delete" to "ลบ",
        "common.description" to "คำอธิบาย",
        "common.details" to "Details",
        "common.disabled" to "ปิดใช้งาน",
        "common.download" to "ดาวน์โหลด",
        "common.edit" to "แก้ไข",
        "common.enabled" to "เปิดใช้งาน",
        "common.filter" to "กรอง",
        "common.hours" to "ชั่วโมง",
        "common.in" to "in",
        "common.inactive" to "ไม่ใช้งาน",
        "common.loading" to "กำลังโหลด...",
        "common.min" to "นาที",
        "common.minutes" to "นาที",
        "common.months" to "เดือน",
        "common.move" to "ย้าย",
        "common.name" to "ชื่อ",
        "common.new" to "ใหม่",
        "common.next" to "ถัดไป",
        "common.no" to "ไม่",
        "common.ok" to "OK",
        "common.optional" to "Optional",
        "common.period" to "ช่วงเวลา",
        "common.previous" to "ก่อนหน้า",
        "common.refresh" to "โหลดใหม่",
        "common.remove" to "เอาออก",
        "common.required" to "จำเป็น",
        "common.reset" to "รีเซ็ต",
        "common.save" to "บันทึก",
        "common.saved" to "บันทึกแล้ว",
        "common.saving" to "กำลังบันทึก...",
        "common.search" to "ค้นหา",
        "common.select" to "เลือก",
        "common.status" to "สถานะ",
        "common.submit" to "ส่ง",
        "common.time" to "เวลา",
        "common.today" to "วันนี้",
        "common.type" to "ประเภท",
        "common.update" to "อัปเดต",
        "common.view" to "แสดง",
        "common.weeks" to "สัปดาห์",
        "common.years" to "ปี",
        "common.yes" to "ใช่",
        "courtDrawing.cancel" to "ยกเลิก",
        "courtDrawing.durationMinutes" to "ระยะเวลา (นาที)",
        "courtDrawing.durationText" to "ระยะเวลา (ข้อความ)",
        "courtDrawing.durationTextPlaceholder" to "เช่น 2x5",
        "courtDrawing.group" to "กลุ่ม",
        "courtDrawing.ok" to "OK",
        "courtDrawing.selectGroup" to "เลือกกลุ่ม...",
        "courtDrawing.title" to "กำหนดค่าการออกกำลังกายปิงปอง",
        "courtDrawingRender.animationRunning" to "กำลังดำเนินการแอนิเมชัน...",
        "courtDrawingRender.startAnimation" to "เริ่มภาพเคลื่อนไหว",
        "courtDrawingTool.addStroke" to "เพิ่มการตี",
        "courtDrawingTool.backhand" to "แบ็กแฮนด์",
        "courtDrawingTool.codeLabel" to "รหัสย่อ",
        "courtDrawingTool.completeFirstStroke" to "กำหนดลูกแรกให้ครบ",
        "courtDrawingTool.completeFirstStrokeHint" to "เลือกตำแหน่งเริ่ม ด้านตี สปิน และเป้าหมาย แล้วภาพจะแสดงขึ้น",
        "courtDrawingTool.configureExercise" to "กำหนดค่าแบบฝึก",
        "courtDrawingTool.counterSpin" to "สปินสวน",
        "courtDrawingTool.forehand" to "โฟร์แฮนด์",
        "courtDrawingTool.noAdditionalStrokes" to "ยังไม่มีลูกต่อเนื่อง",
        "courtDrawingTool.preview" to "ตัวอย่าง",
        "courtDrawingTool.previewHint" to "กราฟิกจะแสดงเมื่อกำหนดลูกแรกครบถ้วนแล้ว",
        "courtDrawingTool.service" to "เสิร์ฟ:",
        "courtDrawingTool.serviceTitle" to "การเสิร์ฟ",
        "courtDrawingTool.sidespin" to "ไซด์สปิน",
        "courtDrawingTool.sideUnderspin" to "ไซด์อันเดอร์สปิน",
        "courtDrawingTool.spin" to "สปิน:",
        "courtDrawingTool.startLeft" to "ซ้าย",
        "courtDrawingTool.startMiddle" to "กลาง",
        "courtDrawingTool.startRight" to "ขวา",
        "courtDrawingTool.stepAdditionalStrokes" to "4. ลูกต่อเนื่อง",
        "courtDrawingTool.stepAdditionalStrokesHint" to "สามารถเพิ่มลูกต่อเนื่องเป็นรายการได้ตามต้องการ",
        "courtDrawingTool.stepFirstStroke" to "2. ลูกแรก",
        "courtDrawingTool.stepFirstStrokeHint" to "กำหนดด้านตีและสปินสำหรับลูกแรก",
        "courtDrawingTool.stepStartPosition" to "1. ตำแหน่งเริ่มต้น",
        "courtDrawingTool.stepStartPositionHint" to "แบบฝึกเริ่มจากตำแหน่งเสิร์ฟใด?",
        "courtDrawingTool.stepTarget" to "3. เป้าหมาย",
        "courtDrawingTool.stepTargetHint" to "เลือกโซนเป้าหมายสำหรับลูกแรก",
        "courtDrawingTool.strokeSide" to "ด้านตี",
        "courtDrawingTool.strokeTypeBlock" to "Block",
        "courtDrawingTool.strokeTypeChopDefense" to "รับแบบช็อป",
        "courtDrawingTool.strokeTypeCounter" to "เคาน์เตอร์",
        "courtDrawingTool.strokeTypeFlip" to "พลิก",
        "courtDrawingTool.strokeTypeLabel" to "ประเภทการตี",
        "courtDrawingTool.strokeTypeLobDefense" to "รับแบบลอบ",
        "courtDrawingTool.strokeTypePush" to "ผลัก",
        "courtDrawingTool.strokeTypeSmash" to "ตบ",
        "courtDrawingTool.strokeTypeTopspin" to "สปินชั้นนำ",
        "courtDrawingTool.targetBackhandHalfLong" to "แบ็กแฮนด์กึ่งยาว",
        "courtDrawingTool.targetBackhandLong" to "แบ็กแฮนด์ยาว",
        "courtDrawingTool.targetBackhandShort" to "แบ็กแฮนด์สั้น",
        "courtDrawingTool.targetForehandHalfLong" to "โฟร์แฮนด์กึ่งยาว",
        "courtDrawingTool.targetForehandLong" to "โฟร์แฮนด์ยาว",
        "courtDrawingTool.targetForehandShort" to "โฟร์แฮนด์สั้น",
        "courtDrawingTool.targetMiddleHalfLong" to "กลางกึ่งยาว",
        "courtDrawingTool.targetMiddleLong" to "กลางยาว",
        "courtDrawingTool.targetMiddleShort" to "กลางสั้น",
        "courtDrawingTool.targetPosition" to "ตำแหน่งเป้าหมาย:",
        "courtDrawingTool.targetPositionLabel" to "ตำแหน่งเป้าหมาย",
        "courtDrawingTool.title" to "ภาพวาดแบบฝึกปิงปอง",
        "courtDrawingTool.titleLabel" to "ชื่อเรื่อง",
        "courtDrawingTool.topspin" to "ท็อปสปิน",
        "courtDrawingTool.toTarget" to "ไปยัง",
        "courtDrawingTool.underspin" to "อันเดอร์สปิน",
        "createClub.clubExists" to "สมาคมนี้มีอยู่แล้ว",
        "createClub.clubName" to "ชื่อสโมสร",
        "createClub.create" to "สร้างสโมสร",
        "createClub.nameRequired" to "กรุณาตั้งชื่อสมาคมให้มีความหมาย",
        "createClub.title" to "สร้างสโมสร",
        "createClub.unknownError" to "เกิดข้อผิดพลาดที่ไม่รู้จัก โปรดลองอีกครั้ง",
        "csvImport.cancel" to "ยกเลิก",
        "csvImport.import" to "กำลังนำเข้า",
        "csvImport.title" to "กำหนดการนำเข้า",
        "csvImport.uploadCsvFile" to "อัปโหลดไฟล์ CSV",
        "dialogExamples.composableConfirmDetails" to "นี่คือตัวอย่างของ useConfirm Composable",
        "dialogExamples.composableConfirmMessage" to "คุณต้องการดำเนินการต่อหรือไม่?",
        "dialogExamples.composableConfirmTitle" to "ใช้ยืนยันตัวอย่าง",
        "dialogExamples.composableDialogText" to "กล่องโต้ตอบนี้ใช้ useDialog Composable",
        "dialogExamples.composableDialogText2" to "ทำให้ง่ายต่อการจัดการ!",
        "dialogExamples.composableDialogTitle" to "บทสนทนากับ useDialog Composable",
        "dialogExamples.composableUsage" to "การใช้งานแบบประกอบได้",
        "dialogExamples.confirmDeleteMessage" to "คุณแน่ใจหรือไม่ว่าต้องการลบบัตรของขวัญนี้",
        "dialogExamples.confirmDeleteTitle" to "ยืนยันการลบ",
        "dialogExamples.confirmDialogs" to "กล่องโต้ตอบการยืนยัน",
        "dialogExamples.confirmWarningDetails" to "การดำเนินการนี้ไม่สามารถยกเลิกได้",
        "dialogExamples.confirmWarningMessage" to "คุณแน่ใจหรือไม่ว่าต้องการดำเนินการต่อ?",
        "dialogExamples.error" to "ข้อผิดพลาด",
        "dialogExamples.errorDetails" to "โปรดลองอีกครั้งในภายหลัง",
        "dialogExamples.errorMessage" to "เกิดข้อผิดพลาด",
        "dialogExamples.fullscreenModal" to "Fullscreen Modal",
        "dialogExamples.fullscreenModalText" to "นี่คือกล่องโต้ตอบแบบเต็มหน้าจอ",
        "dialogExamples.fullscreenModalText2" to "ครอบคลุมพื้นที่เกือบทั้งหน้าจอ (90vw x 90vh)",
        "dialogExamples.fullscreenModalTitle" to "Fullscreen Modal Dialog",
        "dialogExamples.info" to "ข้อมูล",
        "dialogExamples.infoDialogs" to "บทสนทนาข้อมูล",
        "dialogExamples.infoMessage" to "นี่คือข้อความข้อมูล",
        "dialogExamples.information" to "ข้อมูล",
        "dialogExamples.largeModal" to "โมดัลขนาดใหญ่",
        "dialogExamples.largeModalText" to "นี่เป็นบทสนทนาแบบโมดอลที่ยอดเยี่ยม",
        "dialogExamples.largeModalText2" to "มันมีพื้นที่มากขึ้นสำหรับเนื้อหา",
        "dialogExamples.largeModalTitle" to "บทสนทนา Modal ขนาดใหญ่",
        "dialogExamples.minimizedDialogs" to "กล่องโต้ตอบที่ย่อเล็กสุด:",
        "dialogExamples.modalDialogs" to "บทสนทนาแบบกิริยา",
        "dialogExamples.multipleDialogs" to "หลายกล่องโต้ตอบ",
        "dialogExamples.nonModalDialog" to "บทสนทนาที่ไม่ใช่กิริยาช่วย",
        "dialogExamples.nonModalDialogs" to "บทสนทนาที่ไม่ใช่กิริยาช่วย",
        "dialogExamples.nonModalText" to "นี่คือบทสนทนาที่ไม่ใช่กิริยาช่วย",
        "dialogExamples.nonModalText2" to "คุณสามารถย้ายและเปิดหลายรายการพร้อมกันได้!",
        "dialogExamples.nonModalTitle" to "บทสนทนาที่ไม่ใช่กิริยาช่วย",
        "dialogExamples.scrollArea" to "พื้นที่เลื่อนสำหรับเนื้อหามากมาย...",
        "dialogExamples.secondNonModalText" to "บทสนทนาที่ไม่ใช่กิริยาอื่น!",
        "dialogExamples.secondNonModalTitle" to "บทสนทนาที่ไม่ใช่กิริยาครั้งที่สอง",
        "dialogExamples.simpleModal" to "กิริยาที่เรียบง่าย",
        "dialogExamples.simpleModalText" to "นี่คือกล่องโต้ตอบโมดอลธรรมดาที่มีขนาดกลาง",
        "dialogExamples.simpleModalText2" to "คลิกด้านนอกหรือบน X เพื่อปิด",
        "dialogExamples.simpleModalTitle" to "บทสนทนากิริยาที่เรียบง่าย",
        "dialogExamples.success" to "ความสำเร็จ",
        "dialogExamples.successDetails" to "บันทึกการเปลี่ยนแปลงทั้งหมดแล้ว",
        "dialogExamples.successMessage" to "การดำเนินการเสร็จสมบูรณ์เรียบร้อยแล้ว!",
        "dialogExamples.title" to "ตัวอย่างกล่องโต้ตอบ",
        "dialogExamples.useConfirmExample" to "ใช้ยืนยันตัวอย่าง",
        "dialogExamples.useDialogExample" to "ตัวอย่าง useDialog",
        "dialogExamples.warning" to "ข้อควรระวัง",
        "dialogExamples.warningDetails" to "บางช่องอาจกรอกข้อมูลไม่ครบถ้วน",
        "dialogExamples.warningMessage" to "ลิงค์ต่อไปนี้อาจช่วยคุณได้:",
        "dialogManager.close" to "ปิด",
        "dialogManager.minimize" to "ย่อเล็กสุด",
        "dialogManager.noMinimizedDialogs" to "ไม่มีกล่องโต้ตอบย่อเล็กสุด",
        "dialogs.confirm.cancel" to "ยกเลิก",
        "dialogs.confirm.ok" to "OK",
        "dialogs.confirm.title" to "การยืนยัน",
        "dialogs.info.ok" to "OK",
        "dialogs.info.title" to "ข้อมูล",
        "diary.activeTrainingDay" to "วันฝึกซ้อมที่ใช้งานอยู่",
        "diary.activities" to "กิจกรรม",
        "diary.activity" to "กิจกรรม",
        "diary.activityDrawing" to "ภาพวาดกิจกรรม",
        "diary.activityImage" to "รูปกิจกรรม",
        "diary.activityNotFound" to "ไม่พบกิจกรรม กรุณาเลือกจากรายการ",
        "diary.activityOrTimeblock" to "กิจกรรม / ช่วงเวลา",
        "diary.activityPlaceholder" to "กิจกรรม",
        "diary.activityRequired" to "กรุณากรอกกิจกรรม",
        "diary.addActivity" to "เพิ่มกิจกรรม",
        "diary.addGroup" to "เพิ่มกลุ่ม",
        "diary.addGroupActivity" to "เพิ่มกิจกรรมของกลุ่ม",
        "diary.addGroupButton" to "+ กลุ่ม",
        "diary.addTimeblock" to "ช่วงเวลา",
        "diary.all" to "ทั้งหมด",
        "diary.applySuggestion" to "ใช้ข้อเสนอแนะ",
        "diary.assignParticipants" to "กำหนดผู้เข้าร่วม",
        "diary.assignParticipantsForGroupActivity" to "กำหนดผู้เข้าร่วมสำหรับกิจกรรมกลุ่ม",
        "diary.assignShort" to "กำหนด",
        "diary.bookAccident" to "บันทึกอุบัติเหตุ",
        "diary.confirmDelete" to "ยืนยันการลบ",
        "diary.confirmDeleteDate" to "คุณต้องการลบวันที่นี้จริงหรือไม่?",
        "diary.confirmDeleteDateDetails" to "ข้อมูลที่เกี่ยวข้องทั้งหมดจะถูกลบด้วย",
        "diary.confirmDeleteGroup" to "คุณต้องการลบกลุ่ม \"{name}\" จริงหรือไม่?",
        "diary.createDate" to "สร้างวันที่",
        "diary.createDrawing" to "สร้างภาพฝึกซ้อม",
        "diary.createGroups" to "สร้างกลุ่ม",
        "diary.createNew" to "สร้างใหม่",
        "diary.createNewDate" to "สร้างวันที่ใหม่",
        "diary.date" to "วันที่",
        "diary.dateCannotBeDeleted" to "ไม่สามารถลบวันที่ได้",
        "diary.dateCannotBeDeletedDetails" to "ยังมีเนื้อหาอยู่ (แผนการฝึก ผู้เข้าร่วม กิจกรรม อุบัติเหตุ หรือบันทึก)",
        "diary.dateNoLongerCurrent" to "วันที่ที่เลือกไม่ใช่ข้อมูลล่าสุดอีกต่อไป โปรดลองอีกครั้ง",
        "diary.delete" to "ลบ",
        "diary.deleteDate" to "ลบวันที่",
        "diary.deleteGroup" to "ลบกลุ่ม",
        "diary.duration" to "ระยะเวลา",
        "diary.durationExampleLong" to "เช่น 2x7 หรือ 3*5",
        "diary.durationExampleShort" to "เช่น 2x7",
        "diary.durationMinutes" to "ระยะเวลา (นาที)",
        "diary.editActivity" to "แก้ไขกิจกรรม",
        "diary.editGroupActivity" to "แก้ไขกิจกรรมกลุ่ม",
        "diary.editTrainingTimes" to "แก้ไขเวลาฝึกซ้อม",
        "diary.errorCreatingActivity" to "เกิดข้อผิดพลาดในการสร้างกิจกรรม",
        "diary.errorCreatingGroups" to "เกิดข้อผิดพลาดในการสร้างกลุ่ม",
        "diary.errorDeletingGroup" to "เกิดข้อผิดพลาดในการลบกลุ่ม",
        "diary.errorLoadingPredefinedActivities" to "เกิดข้อผิดพลาดในการโหลดกิจกรรมที่กำหนดไว้ล่วงหน้า",
        "diary.errorMarkingForm" to "เกิดข้อผิดพลาดในการทำเครื่องหมายแบบฟอร์มสมาชิก",
        "diary.errorOccurred" to "เกิดข้อผิดพลาด โปรดลองอีกครั้ง",
        "diary.existingGroups" to "กลุ่มที่มีอยู่",
        "diary.filterAbsent" to "ขาด",
        "diary.filterAll" to "ทั้งหมด",
        "diary.filterExcused" to "ลา",
        "diary.filterPresent" to "มาเข้าร่วม",
        "diary.filterTest" to "ทดลอง",
        "diary.formHandedOver" to "ส่งแบบฟอร์มสมาชิกแล้ว",
        "diary.formMarkedAsHandedOver" to "ทำเครื่องหมายว่าได้ส่งแบบฟอร์มสมาชิกแล้ว",
        "diary.freeActivities" to "กิจกรรมอิสระ",
        "diary.gallery" to "แกลเลอรีสมาชิก",
        "diary.galleryCreating" to "กำลังสร้างแกลเลอรี…",
        "diary.group" to "กลุ่ม...",
        "diary.groupDeletedSuccessfully" to "ลบกลุ่มสำเร็จ",
        "diary.groupManagement" to "การจัดการกลุ่ม",
        "diary.groupsCreated" to "สร้างกลุ่มสำเร็จ {count} กลุ่ม",
        "diary.groupsLabel" to "กลุ่ม",
        "diary.groupsSection" to "กลุ่ม",
        "diary.leader" to "ผู้ดูแล",
        "diary.min" to "Min",
        "diary.minutes" to "นาที",
        "diary.mustCreateAtLeastTwoGroups" to "การสร้างครั้งแรกต้องมีอย่างน้อย 2 กลุ่ม",
        "diary.nextAppointment" to "นัดถัดไป",
        "diary.noActiveTrainingDay" to "ไม่ได้เลือกวันฝึกซ้อม",
        "diary.noEntries" to "ไม่มีรายการ",
        "diary.noFreeActivitiesYet" to "ยังไม่มีการบันทึกกิจกรรมอิสระ",
        "diary.noParticipants" to "ไม่มีผู้เข้าร่วมสำหรับวันฝึกซ้อมนี้",
        "diary.numberOfGroups" to "จำนวนกลุ่ม",
        "diary.oneGroupAdded" to "เพิ่มกลุ่มสำเร็จ 1 กลุ่ม",
        "diary.openPlanItems" to "เปิดอยู่ {count} รายการ",
        "diary.openPlanItemsLabel" to "สถานะแผน",
        "diary.overallActivity" to "กิจกรรมรวม",
        "diary.participants" to "ผู้เข้าร่วม",
        "diary.participantStatusCancelled" to "ยกเลิก",
        "diary.participantStatusExcused" to "ลา",
        "diary.participantStatusNone" to "ไม่มีสถานะ",
        "diary.planActivitiesCount" to "กิจกรรมในแผน",
        "diary.planAddHint" to "คุณสามารถเพิ่มรายการใหม่ได้จากปุ่มด้านบน",
        "diary.planEmptyState" to "ยังไม่มีรายการในแผนการฝึกซ้อม",
        "diary.quickAdd" to "+ เพิ่มด่วน",
        "diary.quickCreate" to "เพิ่มด่วน",
        "diary.quickCreateFailed" to "ไม่สามารถสร้างวันฝึกได้",
        "diary.quickCreateNoSlot" to "ไม่พบวันฝึกที่ว่าง (ตามตารางกลุ่ม ล่วงหน้าหนึ่งปี)",
        "diary.searchParticipants" to "ค้นหาผู้เข้าร่วม",
        "diary.selectGroup" to "เลือกกลุ่ม...",
        "diary.selectGroupAndActivity" to "กรุณาเลือกกลุ่มและกรอกกิจกรรม",
        "diary.selectParticipantAndNote" to "กรุณาเลือกผู้เข้าร่วมและใส่ข้อความบันทึก",
        "diary.selectTags" to "เลือกแท็ก",
        "diary.selectTrainingGroup" to "เลือกกลุ่มฝึกซ้อม",
        "diary.selectTrainingGroupPlaceholder" to "กรุณาเลือก...",
        "diary.showImage" to "แสดงรูป/ภาพวาด",
        "diary.skipSuggestion" to "ดำเนินการต่อโดยไม่ใช้ข้อเสนอแนะ",
        "diary.standardActivities" to "กิจกรรมมาตรฐาน",
        "diary.standardActivityAddError" to "ไม่สามารถเพิ่มกิจกรรมมาตรฐานได้",
        "diary.standardDurationShort" to "Min",
        "diary.startTime" to "เวลาเริ่ม",
        "diary.statusEmpty" to "วันฝึกซ้อมนี้ยังว่างอยู่",
        "diary.statusInProgress" to "วันฝึกซ้อมนี้เตรียมไว้เพียงบางส่วน",
        "diary.statusOpenShort" to "เปิด",
        "diary.statusReady" to "ตั้งค่าเวลาและแผนการฝึกซ้อมแล้ว",
        "diary.statusReadyShort" to "พร้อม",
        "diary.suggestion" to "ข้อเสนอแนะ",
        "diary.timeblock" to "ช่วงเวลา",
        "diary.timeblocksCount" to "ช่วงเวลา",
        "diary.title" to "สมุดบันทึกการฝึกซ้อม",
        "diary.today" to "วันนี้",
        "diary.trainingDayAsPDF" to "ดาวน์โหลดวันฝึกซ้อมเป็น PDF",
        "diary.trainingDayAsPDFShort" to "วันฝึกซ้อม PDF",
        "diary.trainingDayChecklist" to "รายการตรวจสอบความครบถ้วน",
        "diary.trainingDaySection" to "วันฝึกซ้อม",
        "diary.trainingDaySummaryPdfShort" to "สรุปผู้เข้าร่วม PDF",
        "diary.trainingEnd" to "สิ้นสุดการฝึกซ้อม",
        "diary.trainingPlan" to "แผนการฝึกซ้อม",
        "diary.trainingPlanAsPDF" to "แผนการฝึกซ้อมเป็น PDF",
        "diary.trainingPlanPdfShort" to "แผนการดำเนินงาน PDF",
        "diary.trainingStart" to "เริ่มฝึกซ้อม",
        "diary.trainingTimesUpdated" to "อัปเดตเวลาฝึกซ้อมสำเร็จ",
        "diary.trainingWindow" to "ช่วงเวลาฝึกซ้อม",
        "diary.trainingWindowUnset" to "ยังไม่ได้ตั้งค่า",
        "diary.unassignedPlanItems" to "ยังไม่กำหนด {count} รายการ",
        "diary.updateTimes" to "อัปเดตเวลา",
        "errors.ERROR_ACTIVITY_IMAGE_DELETE_FAILED" to "เกิดข้อผิดพลาดในการลบภาพ",
        "errors.ERROR_BAD_REQUEST" to "คำขอไม่ถูกต้อง",
        "errors.ERROR_CLUB_ALREADY_EXISTS" to "สมาคมนี้มีอยู่แล้ว",
        "errors.ERROR_CLUB_NAME_REQUIRED" to "กรุณาตั้งชื่อสมาคมให้มีความหมาย",
        "errors.ERROR_CLUB_NAME_TOO_SHORT" to "กรุณาตั้งชื่อสมาคมให้มีความหมาย",
        "errors.ERROR_CLUB_NOT_FOUND" to "ไม่พบสโมสร",
        "errors.ERROR_DIARY_ACTIVITY_PARTICIPANTS_UPDATE_FAILED" to "เกิดข้อผิดพลาดในการอัปเดตผู้เข้าร่วมกิจกรรม",
        "errors.ERROR_DIARY_ASSIGN_ALL_PARTICIPANTS_FAILED" to "เกิดข้อผิดพลาดในการมอบหมายผู้เข้าร่วมทั้งหมด",
        "errors.ERROR_DIARY_ASSIGN_GROUP_FAILED" to "เกิดข้อผิดพลาดในการแมปกลุ่ม",
        "errors.ERROR_DIARY_DATE_NOT_FOUND" to "ไม่พบวันที่",
        "errors.ERROR_DIARY_DATE_UPDATED" to "วันที่ไม่ว่าง (ไม่มีอีกต่อไป) เครื่องมือเลือกวันที่ได้รับการอัปเดตแล้ว โปรดลองอีกครั้ง",
        "errors.ERROR_DIARY_GROUP_ASSIGNMENT_UPDATE_FAILED" to "เกิดข้อผิดพลาดในการอัปเดตงานกลุ่ม",
        "errors.ERROR_DIARY_IMAGE_LOAD_FAILED" to "ไม่สามารถโหลดภาพได้",
        "errors.ERROR_DIARY_MEMBER_CREATE_FAILED" to "เกิดข้อผิดพลาดในการสร้างสมาชิก",
        "errors.ERROR_DIARY_NO_EXERCISE_DATA" to "ไม่ได้รับข้อมูลการออกกำลังกาย",
        "errors.ERROR_DIARY_NO_PARTICIPANTS" to "ไม่มีผู้เข้าร่วมอบรมสำหรับวันฝึกอบรมนี้",
        "errors.ERROR_DIARY_PARTICIPANT_ASSIGN_FAILED" to "ไม่สามารถกำหนดผู้เข้าร่วมได้",
        "errors.ERROR_DIARY_PARTICIPANT_GROUP_ASSIGNMENT_UPDATE_FAILED" to "เกิดข้อผิดพลาดในการอัปเดตการกำหนดกลุ่มผู้เข้าร่วม",
        "errors.ERROR_DIARY_PDF_GENERATION_FAILED" to "เกิดข้อผิดพลาดในการสร้าง PDF",
        "errors.ERROR_DIARY_STATS_LOAD_FAILED" to "โหลดสถิติไม่สำเร็จ",
        "errors.ERROR_FORBIDDEN" to "การอนุญาตถูกปฏิเสธ",
        "errors.ERROR_GROUP_ALREADY_EXISTS" to "มีกลุ่มที่ใช้ชื่อนี้อยู่แล้ว",
        "errors.ERROR_GROUP_CANNOT_RENAME_PRESET" to "ไม่สามารถเปลี่ยนชื่อกลุ่มเริ่มต้นได้",
        "errors.ERROR_GROUP_INVALID_PRESET_TYPE" to "ประเภทพรีเซ็ตไม่ถูกต้อง",
        "errors.ERROR_GROUP_NAME_REQUIRED" to "กรุณากรอกชื่อกลุ่ม",
        "errors.ERROR_GROUP_NOT_FOUND" to "ไม่พบกลุ่ม",
        "errors.ERROR_INTERNAL_SERVER_ERROR" to "เกิดข้อผิดพลาดเซิร์ฟเวอร์ภายใน",
        "errors.ERROR_INVALID_PASSWORD" to "รหัสผ่านไม่ถูกต้อง",
        "errors.ERROR_LOG_NOT_FOUND" to "ไม่พบรายการบันทึก",
        "errors.ERROR_LOGIN_FAILED" to "การเข้าสู่ระบบล้มเหลว",
        "errors.ERROR_MEMBER_ALREADY_EXISTS" to "มีสมาชิกอยู่แล้ว",
        "errors.ERROR_MEMBER_FIRSTNAME_REQUIRED" to "จำเป็นต้องระบุชื่อ",
        "errors.ERROR_MEMBER_LASTNAME_REQUIRED" to "ต้องระบุนามสกุล",
        "errors.ERROR_MEMBER_NOT_FOUND" to "ไม่พบสมาชิก",
        "errors.ERROR_MEMBER_TRANSFER_BULK_FAILED" to "ข้อผิดพลาดในการถ่ายโอนจำนวนมาก: {message}",
        "errors.ERROR_MYTISCHTENNIS_ACCOUNT_NOT_LINKED" to "ไม่มีการเชื่อมโยงบัญชี myTischtennis",
        "errors.ERROR_MYTISCHTENNIS_CAPTCHA_REQUIRED" to "ต้องใช้แคปช่า ขณะนี้ MyTischtennis ใช้ CAPTCHA เมื่อเข้าสู่ระบบ โปรดเข้าสู่ระบบโดยตรงที่ mytischtennis.de เพื่อแก้ไข CAPTCHA หรือติดต่อฝ่ายสนับสนุน",
        "errors.ERROR_MYTISCHTENNIS_INVALID_PASSWORD" to "รหัสผ่าน myTischtennis ไม่ถูกต้อง",
        "errors.ERROR_MYTISCHTENNIS_LOGIN_FAILED" to "การเข้าสู่ระบบล้มเหลว กรุณาตรวจสอบข้อมูลประจำตัวของคุณ",
        "errors.ERROR_MYTISCHTENNIS_NO_PASSWORD_SAVED" to "ไม่มีการบันทึกรหัสผ่านและเซสชันหมดอายุ กรุณากรอกรหัสผ่านของคุณ",
        "errors.ERROR_MYTISCHTENNIS_PASSWORD_NOT_SAVED" to "ไม่มีการบันทึกรหัสผ่าน กรุณากรอกรหัสผ่านของคุณ",
        "errors.ERROR_MYTISCHTENNIS_SESSION_EXPIRED" to "เซสชั่นหมดอายุแล้ว กรุณาเข้าสู่ระบบอีกครั้ง",
        "errors.ERROR_MYTISCHTENNIS_USER_NOT_FOUND" to "ไม่พบผู้ใช้ myTischtennis",
        "errors.ERROR_NOT_FOUND" to "ไม่พบ",
        "errors.ERROR_OFFICIAL_TOURNAMENT_PDF_UPLOAD" to "เกิดข้อผิดพลาดในการอัปโหลด PDF",
        "errors.ERROR_SESSION_EXPIRED" to "เซสชั่นหมดอายุแล้ว",
        "errors.ERROR_TEAM_LINK_TO_LEAGUE_REQUIRED" to "กรุณากำหนดลีกให้กับทีมก่อนเพื่อให้สามารถประมวลผลเอกสารได้",
        "errors.ERROR_TEAM_NOT_LINKED_TO_LEAGUE" to "ทีมนี้ไม่ได้ถูกกำหนดให้กับลีกใดๆ",
        "errors.ERROR_TEAM_PDF_LOAD_FAILED" to "โหลด PDF ไม่สำเร็จ",
        "errors.ERROR_TEAM_STATS_LOAD_FAILED" to "ไม่สามารถโหลดสถิติได้",
        "errors.ERROR_TOURNAMENT_CLASS_NAME_REQUIRED" to "กรุณากรอกชื่อชั้นเรียน!",
        "errors.ERROR_TOURNAMENT_NO_DATE" to "ไม่มีวันแข่งขัน!",
        "errors.ERROR_TOURNAMENT_NO_PARTICIPANTS" to "ไม่พบผู้เข้าร่วมในวันฝึกอบรมสำหรับวันนี้!",
        "errors.ERROR_TOURNAMENT_NO_TRAINING_DAY" to "ไม่พบวันฝึกอบรมสำหรับ {date}!",
        "errors.ERROR_TOURNAMENT_NO_VALID_PARTICIPANTS" to "ไม่พบผู้เข้าร่วมที่ถูกต้องในวันอบรมสำหรับวันนี้!",
        "errors.ERROR_TOURNAMENT_NOT_FOUND" to "ไม่พบการแข่งขัน",
        "errors.ERROR_TOURNAMENT_PDF_GENERATION_FAILED" to "เกิดข้อผิดพลาดในการสร้าง PDF",
        "errors.ERROR_TOURNAMENT_SELECT_FIRST" to "โปรดเลือกทัวร์นาเมนท์ก่อน",
        "errors.ERROR_TRAINING_STATS_LOAD_FAILED" to "เกิดข้อผิดพลาดในการโหลดสถิติการฝึกอบรม",
        "errors.ERROR_UNAUTHORIZED" to "ไม่ได้รับอนุญาต",
        "errors.ERROR_UNKNOWN_ERROR" to "เกิดข้อผิดพลาดที่ไม่ทราบสาเหตุ",
        "errors.ERROR_USER_NOT_FOUND" to "ไม่พบผู้ใช้",
        "errors.ERROR_VALIDATION_FAILED" to "การตรวจสอบล้มเหลว",
        "errors.SUCCESS_DIARY_GROUP_ASSIGNMENT_UPDATED" to "อัปเดตการแมปกลุ่มแล้ว",
        "errors.SUCCESS_DIARY_MEMBER_CREATED" to "สร้างและเพิ่มสมาชิก \"{name}\" สำเร็จแล้ว!",
        "errors.SUCCESS_OFFICIAL_TOURNAMENT_PDF_UPLOAD" to "อัปโหลดสำเร็จ",
        "home.authenticatedFeatures.keepDiary" to "เก็บบันทึกการฝึกอบรม",
        "home.authenticatedFeatures.keepDiaryDesc" to "บันทึกกิจกรรมการฝึกอบรม ผู้เข้าร่วม กิจกรรม และบันทึกประจำวันการฝึกอบรม",
        "home.authenticatedFeatures.manageMembers" to "จัดการสมาชิก",
        "home.authenticatedFeatures.manageMembersDesc" to "จัดการสมาชิกชมรมของคุณ สร้างกลุ่มฝึกอบรม และติดตามผู้เข้าร่วมทั้งหมด",
        "home.authenticatedFeatures.manageTournaments" to "จัดการทัวร์นาเมนต์",
        "home.authenticatedFeatures.manageTournamentsDesc" to "สร้างทัวร์นาเมนต์ภายในและแบบเปิด นำเข้าทัวร์นาเมนต์อย่างเป็นทางการ และจัดการรายการเข้าร่วม",
        "home.authenticatedFeatures.myTischtennisIntegration" to "บูรณาการ MyTable Tennis",
        "home.authenticatedFeatures.myTischtennisIntegrationDesc" to "ประสานผลลัพธ์และสถิติของเกมกับ MyTischtennis.de โดยอัตโนมัติ",
        "home.authenticatedFeatures.pdfExport" to "ส่งออก PDF",
        "home.authenticatedFeatures.pdfExportDesc" to "ส่งออกวันฝึกอบรมเป็น PDF พร้อมผู้เข้าร่วม กิจกรรม และสถิติ",
        "home.authenticatedFeatures.statistics" to "สถิติและการประเมินผล",
        "home.authenticatedFeatures.statisticsDesc" to "รับภาพรวมการฝึกอบรมและการมีส่วนร่วมโดยละเอียด รวมถึงสถิติกิจกรรม",
        "home.authenticatedFeatures.teamManagement" to "การบริหารทีม",
        "home.authenticatedFeatures.teamManagementDesc" to "จัดการทีม ลีก โปรแกรมการแข่งขัน และผลการแข่งขันสำหรับสโมสรของคุณ",
        "home.authenticatedFeatures.trainingGroups" to "กลุ่มการฝึกอบรมและเวลา",
        "home.authenticatedFeatures.trainingGroupsDesc" to "จัดกลุ่มการฝึกอบรม กำหนดเวลาการฝึกอบรม และจัดการการมอบหมายกลุ่ม",
        "home.faq" to "คำถามที่พบบ่อย",
        "home.faqFree.answer" to "ใช่ คุณสามารถเริ่มต้นได้ฟรี ส่วนขยายสามารถติดตามได้ในภายหลัง",
        "home.faqFree.question" to "ใช้งานได้ฟรีหรือไม่?",
        "home.faqInstallation.answer" to "ไม่ มันเป็นเว็บแอปพลิเคชัน คุณใช้งานได้โดยตรงในเบราว์เซอร์ - บนเดสก์ท็อป แท็บเล็ต และสมาร์ทโฟน",
        "home.faqInstallation.question" to "ฉันจำเป็นต้องติดตั้งหรือไม่?",
        "home.faqMyTischtennis.answer" to "ใช่ หลังจากการตั้งค่า แอปพลิเคชันจะซิงโครไนซ์กับ MyTischtennis.de โดยอัตโนมัติ และนำเข้าผลลัพธ์และสถิติของเกม",
        "home.faqMyTischtennis.question" to "การบูรณาการ MyTischtennis ทำงานโดยอัตโนมัติหรือไม่",
        "home.faqPermissions.answer" to "มีสี่บทบาท: ผู้ดูแลระบบ โค้ช หัวหน้าทีม และสมาชิก แต่ละบทบาทมีสิทธิ์เฉพาะที่สามารถปรับแต่งได้",
        "home.faqPermissions.question" to "ระบบการอนุญาตทำงานอย่างไร?",
        "home.faqPrivacy.answer" to "เราพึ่งพาการประหยัดข้อมูล การอนุมัติที่โปร่งใส การเข้าถึงตามบทบาท และบันทึกกิจกรรมที่สมบูรณ์ แอปพลิเคชันนี้เป็นไปตาม GDPR",
        "home.faqPrivacy.question" to "แล้วการปกป้องข้อมูลล่ะ?",
        "home.faqTournaments.answer" to "คุณสามารถจัดการทัวร์นาเมนต์ภายใน ทัวร์นาเมนต์แบบเปิด และทัวร์นาเมนต์อย่างเป็นทางการ (เช่น จากสมาคม) การแข่งขันอย่างเป็นทางการสามารถนำเข้าได้",
        "home.faqTournaments.question" to "รองรับทัวร์นาเมนท์ประเภทใดบ้าง?",
        "home.faqTrainingGroups.answer" to "ใช่ คุณสามารถสร้างกลุ่มการฝึกอบรม กำหนดเวลาการฝึกอบรม และมอบหมายสมาชิกให้กับกลุ่มได้ ไดอารี่การฝึกอบรมจะแนะนำกลุ่มและเวลาที่เหมาะสมโดยอัตโนมัติ",
        "home.faqTrainingGroups.question" to "ฉันสามารถจัดการกลุ่มและเวลาการฝึกอบรมได้หรือไม่",
        "home.features.activityLog" to "บันทึกกิจกรรม",
        "home.features.activityLogDesc" to "บันทึกการดำเนินการทั้งหมดให้เสร็จสิ้นเพื่อความโปร่งใสและตรวจสอบย้อนกลับได้",
        "home.features.keepDiary" to "เก็บบันทึกการฝึกอบรม",
        "home.features.keepDiaryDesc" to "บันทึกเนื้อหา ขอบเขต และการเข้าร่วมของแต่ละหน่วย – อย่างเข้าใจและมีโครงสร้าง",
        "home.features.manageMembers" to "จัดการสมาชิก",
        "home.features.manageMembersDesc" to "สร้างโปรไฟล์สมาชิก สร้างกลุ่ม และอัปเดตสถานะการติดต่อและการอนุมัติให้เป็นปัจจุบัน",
        "home.features.myTischtennisIntegration" to "บูรณาการ MyTable Tennis",
        "home.features.myTischtennisIntegrationDesc" to "การซิงโครไนซ์อัตโนมัติกับ MyTischtennis.de สำหรับผลลัพธ์และสถิติของเกม",
        "home.features.officialTournaments" to "การแข่งขันอย่างเป็นทางการ",
        "home.features.officialTournamentsDesc" to "นำเข้าและจัดการทัวร์นาเมนต์อย่างเป็นทางการ จัดการรายการและผลลัพธ์",
        "home.features.organizeSchedules" to "จัดระเบียบแผนการเล่น",
        "home.features.organizeSchedulesDesc" to "วางแผนเกม การแข่งขัน และกิจกรรมต่างๆ รวมถึงกลุ่ม รอบ และผลการแข่งขัน",
        "home.features.pdfExport" to "ส่งออก PDF",
        "home.features.pdfExportDesc" to "ส่งออกวันฝึกอบรมเป็น PDF พร้อมผู้เข้าร่วม กิจกรรม และสถิติ",
        "home.features.permissionSystem" to "ระบบการอนุญาต",
        "home.features.permissionSystemDesc" to "การเข้าถึงตามบทบาท (ผู้ดูแลระบบ โค้ช กัปตันทีม สมาชิก) พร้อมสิทธิ์ส่วนบุคคล",
        "home.features.predefinedActivities" to "กิจกรรมที่กำหนดไว้ล่วงหน้า",
        "home.features.predefinedActivitiesDesc" to "ใช้เทมเพลตสำหรับแบบฝึกหัดที่เกิดซ้ำและเร่งเอกสารของคุณ",
        "home.features.security" to "ความปลอดภัยและ GDPR",
        "home.features.securityDesc" to "สถาปัตยกรรมที่เป็นมิตรกับการปกป้องข้อมูล การอนุมัติของสมาชิก และการเข้าถึงที่โปร่งใส",
        "home.features.statistics" to "สถิติและการประเมินผล",
        "home.features.statisticsDesc" to "รับภาพรวมการฝึกอบรมและการมีส่วนร่วม รับทราบการพัฒนาและแผนงานโดยเฉพาะ",
        "home.features.teamManagement" to "การบริหารทีม",
        "home.features.teamManagementDesc" to "จัดการทีม ลีก โปรแกรมการแข่งขัน และผลการแข่งขันสำหรับสโมสรของคุณ",
        "home.features.trainingGroups" to "กลุ่มการฝึกอบรมและเวลา",
        "home.features.trainingGroupsDesc" to "จัดกลุ่มการฝึกอบรม กำหนดเวลาการฝึกอบรม และจัดการการมอบหมายกลุ่ม",
        "home.forWhom" to "ไดอารี่การฝึกอบรมเหมาะกับใคร?",
        "home.forWhomText" to "TrainingDiary เป็นแพลตฟอร์มที่ครอบคลุมสำหรับสโมสร แผนก และทีมฝึกสอน โดยผสมผสานการจัดการสมาชิกกับกลุ่มการฝึกอบรมและเวลา ไดอารี่การฝึกอบรมโดยละเอียด องค์กรทัวร์นาเมนต์ที่ครอบคลุม (ทัวร์นาเมนต์ภายใน เปิด และเป็นทางการ) การจัดการทีมพร้อมการรวมลีก การซิงโครไนซ์ MyTischtennis สถิติและการประเมินผลที่มีความหมาย ตลอดจนระบบการอนุญาตที่ยืดหยุ่นในแอปพลิเคชันเว็บสมัยใหม่ ด้วยบทบาทที่ชัดเจน (ผู้ดูแลระบบ ผู้ฝึกสอน หัวหน้าทีม สมาชิก) และการอนุญาตส่วนบุคคล ผู้ที่รับผิดชอบจะสามารถควบคุมได้ ในขณะที่สมาชิกสามารถมีส่วนร่วมในลักษณะที่ตัดสินใจได้ด้วยตนเอง เหมาะสำหรับกีฬาประเภททีม แร็กเก็ต และกีฬาเดี่ยว ตั้งแต่ระดับจูเนียร์ไปจนถึงระดับสูง สอดคล้องกับ GDPR พร้อมการอนุมัติที่โปร่งใสและบันทึกกิจกรรมเต็มรูปแบบ",
        "home.haveAccount" to "ฉันมีบัญชีอยู่แล้ว",
        "home.heroFeatures.memberManagement" to "การจัดการสมาชิกและกลุ่ม",
        "home.heroFeatures.myTischtennis" to "บูรณาการ MyTable Tennis",
        "home.heroFeatures.statistics" to "สถิติและการประเมินผล",
        "home.heroFeatures.teamManagement" to "การจัดการทีมและลีก",
        "home.heroFeatures.tournaments" to "ทัวร์นาเมนต์ (ภายใน, เปิด, เป็นทางการ)",
        "home.heroFeatures.trainingDiary" to "ไดอารี่การฝึกอบรมและเอกสารประกอบ",
        "home.heroFeatures.trainingGroups" to "กลุ่มการฝึกอบรมและเวลาการฝึกอบรม",
        "home.heroSubtitle" to "TrainingDiary เป็นโซลูชันที่ครอบคลุมสำหรับสโมสร: การจัดการสมาชิก กลุ่มการฝึกอบรม เวลาการฝึกอบรม ไดอารี่การฝึกอบรม การจัดทัวร์นาเมนต์ การจัดการทีม การบูรณาการ MyTable Tennis สถิติและอื่น ๆ - เป็นไปตาม GDPR และใช้งานง่าย",
        "home.heroTitle" to "การจัดการสโมสร การวางแผนการฝึกซ้อม และทัวร์นาเมนท์ ทั้งหมดในที่เดียว",
        "home.howItWorks" to "นี่คือวิธีการทำงาน",
        "home.registerNow" to "ลงทะเบียนตอนนี้ฟรี",
        "home.rolesAndPrivacy" to "บทบาท สิทธิ์ และ GDPR",
        "home.startFree" to "เริ่มต้นฟรี",
        "home.step1.description" to "สร้างบัญชีฟรีและเปิดใช้งานผ่านทางอีเมล",
        "home.step1.title" to "ลงทะเบียน",
        "home.step2.description" to "สร้างสโมสรของคุณ เชิญสมาชิก และตั้งกลุ่ม",
        "home.step2.title" to "สร้างสโมสร",
        "home.step3.description" to "วางแผนการนัดหมาย การฝึกอบรมด้านเอกสาร และติดตามความคืบหน้า",
        "home.step3.title" to "วางแผนและเอกสาร",
        "home.welcome" to "ยินดีต้อนรับสู่ไดอารี่การฝึกอบรม",
        "home.welcomeBack" to "ยินดีต้อนรับกลับมา! You are logged in successfully.",
        "home.whatCanYouDo" to "คุณสามารถทำอะไรกับไดอารี่การฝึกอบรมได้บ้าง?",
        "imageDialog.close" to "ปิด",
        "imageDialog.noImageAvailable" to "ไม่มีภาพ",
        "imageDialog.title" to "หน้าจอ",
        "imageViewer.camera" to "กล้อง",
        "imageViewer.delete" to "ลบ",
        "imageViewer.deleteImage" to "ลบภาพ",
        "imageViewer.nextImage" to "รูปภาพถัดไป",
        "imageViewer.noImageAvailable" to "ไม่มีภาพ",
        "imageViewer.previousImage" to "ภาพก่อนหน้า",
        "imageViewer.rotateLeft" to "หมุนไปทางซ้าย 90°",
        "imageViewer.rotateRight" to "หมุนไปทางขวา 90°",
        "imageViewer.selectFiles" to "เลือกไฟล์",
        "imageViewer.setAsPrimary" to "ตั้งเป็นภาพหลัก",
        "imageViewer.setAsPrimaryButton" to "ตั้งค่ารูปภาพเด่น",
        "imprint.contact" to "ติดต่อ",
        "imprint.serviceProvider" to "ชื่อของผู้ให้บริการ",
        "imprint.title" to "ประกาศทางกฎหมาย",
        "languages.de" to "Deutsch (เยอรมัน)",
        "languages.de-CH" to "Schwiizerdütsch (เยอรมันสวิส)",
        "languages.en-AU" to "English (อังกฤษ (AU))",
        "languages.en-GB" to "English (อังกฤษ (GB))",
        "languages.en-US" to "English (อังกฤษ (US))",
        "languages.es" to "Español (สเปน)",
        "languages.fil" to "Filipino (ฟิลิปปินส์)",
        "languages.fr" to "Français (ฝรั่งเศส)",
        "languages.it" to "Italiano (อิตาลี)",
        "languages.ja" to "日本語 (ญี่ปุ่น)",
        "languages.pl" to "Polski (โปแลนด์)",
        "languages.th" to "ไทย",
        "languages.tl" to "Tagalog (ตากาล็อก)",
        "languages.zh" to "中文 (จีน)",
        "legal.backToHome" to "กลับสู่หน้าแรก",
        "legal.imprint" to "ประกาศทางกฎหมาย",
        "legal.privacyPolicy" to "นโยบายความเป็นส่วนตัว",
        "logs.actions" to "การดำเนินการ",
        "logs.all" to "ทั้งหมด",
        "logs.apiRequests" to "คำขอ API",
        "logs.applyFilters" to "ใช้ตัวกรอง",
        "logs.backend" to "การตั้งค่าแบ็กเอนด์",
        "logs.clearFilters" to "เปลี่ยนกลับ",
        "logs.cronJobs" to "งานครอน",
        "logs.details" to "Details",
        "logs.displayed" to "แสดง",
        "logs.displayedLabel" to "ดูแล้ว",
        "logs.error" to "ข้อผิดพลาด",
        "logs.errorLabel" to "ข้อผิดพลาด",
        "logs.errorLoading" to "เกิดข้อผิดพลาดในการโหลดบันทึก",
        "logs.executionTime" to "เวลาดำเนินการ",
        "logs.from" to "จาก",
        "logs.httpMethod" to "วิธี HTTP",
        "logs.justNow" to "แค่ตอนนี้",
        "logs.loadingLogs" to "กำลังโหลดบันทึก...",
        "logs.logDetails" to "รายละเอียดบันทึก",
        "logs.logDetailsLabels.error" to "ข้อผิดพลาด",
        "logs.logDetailsLabels.executionTime" to "เวลาดำเนินการ",
        "logs.logDetailsLabels.ip" to "IP",
        "logs.logDetailsLabels.method" to "วิธี",
        "logs.logDetailsLabels.path" to "เส้นทาง",
        "logs.logDetailsLabels.requestBody" to "Request Body",
        "logs.logDetailsLabels.responseBody" to "Response Body",
        "logs.logDetailsLabels.schedulerJob" to "งานช่างจัดตารางเวลา",
        "logs.logDetailsLabels.status" to "สถานะ",
        "logs.logDetailsLabels.time" to "เวลา",
        "logs.logDetailsLabels.type" to "พิมพ์",
        "logs.logType" to "ประเภทบันทึก",
        "logs.logTypeLabels.api_request" to "คำขอ API",
        "logs.logTypeLabels.cron_job" to "งานครอน",
        "logs.logTypeLabels.manual" to "คู่มือ",
        "logs.logTypeLabels.scheduler" to "กำหนดการ",
        "logs.manual" to "การดำเนินการด้วยตนเอง",
        "logs.method" to "วิธี",
        "logs.minutesAgo" to "{n} นาทีที่แล้ว",
        "logs.mytischtennis" to "myTischtennis",
        "logs.next" to "ต่อไป",
        "logs.of" to "โดย",
        "logs.ownBackend" to "แบ็กเอนด์ของตัวเอง",
        "logs.page" to "หน้าหนังสือ",
        "logs.path" to "เส้นทาง",
        "logs.pathPlaceholder" to "เช่น /api/ไดอารี่",
        "logs.previous" to "ก่อนหน้า",
        "logs.recordsFound" to "พบบันทึก",
        "logs.scheduler" to "กำหนดการ",
        "logs.secondsAgo" to "{n} วินาทีที่แล้ว",
        "logs.status" to "สถานะ",
        "logs.subtitle" to "ภาพรวมของคำขอ API การตอบกลับ และการดำเนินการทั้งหมด",
        "logs.successfullyLoaded" to "โหลดสำเร็จแล้ว",
        "logs.time" to "เวลา",
        "logs.title" to "บันทึกของระบบ",
        "logs.to" to "ถึง",
        "logs.total" to "ทั้งหมด",
        "logs.type" to "พิมพ์",
        "matchReport.analyzeNuscore" to "การวิเคราะห์นูสคอร์",
        "matchReport.createLocalCopy" to "สร้างสำเนาในเครื่อง",
        "matchReport.hideAnalyzer" to "ซ่อนตัววิเคราะห์",
        "matchReportApi.availablePlayers" to "ผู้เล่นที่มีอยู่",
        "matchReportApi.bothTeamsAppeared" to "ทั้งสองทีมแข่งขันกัน",
        "matchReportApi.clickToRemove" to "คลิกเพื่อลบ",
        "matchReportApi.completed" to "ปิด",
        "matchReportApi.completion" to "เสร็จสิ้น",
        "matchReportApi.endTime" to "เวลาสิ้นสุด",
        "matchReportApi.errorLoading" to "เกิดข้อผิดพลาดในการโหลดข้อมูล",
        "matchReportApi.general" to "ทั่วไป",
        "matchReportApi.greeting" to "ยินดีต้อนรับ",
        "matchReportApi.guestLineup" to "การตั้งค่าแขก",
        "matchReportApi.guestPin" to "พิน เกสท์คลับ",
        "matchReportApi.guestTeamNotAppeared" to "ทีมรับเชิญ {team} ไม่ได้ลงแข่งขัน",
        "matchReportApi.homeLineup" to "ติดตั้งที่บ้าน",
        "matchReportApi.homePin" to "พินโฮมคลับ",
        "matchReportApi.homeTeamNotAppeared" to "ทีมเจ้าบ้าน {team} ไม่ได้ลงแข่งขัน",
        "matchReportApi.loading" to "กำลังโหลดข้อมูลรายงานการแข่งขัน...",
        "matchReportApi.noLineupData" to "ไม่มีข้อมูลการติดตั้ง",
        "matchReportApi.notAppeared" to "ไม่ได้มีส่วนร่วมสำหรับทุกคน",
        "matchReportApi.pending" to "รอดำเนินการ",
        "matchReportApi.pinInput" to "อินพุตพิน",
        "matchReportApi.playSystem" to "ระบบการเล่นเกม",
        "matchReportApi.rank" to "วงกลม",
        "matchReportApi.result" to "กำลังเข้าสู่ผลลัพธ์",
        "matchReportApi.retry" to "ลองอีกครั้ง",
        "matchReportApi.selectedPlayers" to "ผู้เล่นที่เลือก",
        "matchReportApi.setCurrentTime" to "ตั้งเวลาปัจจุบัน",
        "matchReportApi.signLineup" to "ติดตั้งป้าย",
        "matchReportApi.startTime" to "เวลาเริ่มต้น",
        "matchReportApi.status" to "สถานะ",
        "matchReportApi.vs" to "vs",
        "matchReportHeaderActions.copied" to "คัดลอก!",
        "matchReportHeaderActions.copyError" to "เกิดข้อผิดพลาดในการคัดลอกพิน",
        "matchReportHeaderActions.copyPin" to "คัดลอกรหัส PIN",
        "matchReportHeaderActions.copyPinTitle" to "คัดลอกไปยังคลิปบอร์ด",
        "matchReportHeaderActions.insertPin" to "ใส่ PIN ของคุณ",
        "matchReportHeaderActions.insertPinTitle" to "แทรกอัตโนมัติ",
        "matchReportHeaderActions.noPinAvailable" to "ไม่มี PIN ให้ใช้",
        "memberActivities.activity" to "ออกกำลังกาย",
        "memberActivities.all" to "ทั้งหมด",
        "memberActivities.close" to "ปิด",
        "memberActivities.dates" to "ข้อมูล",
        "memberActivities.frequency" to "ความถี่",
        "memberActivities.last3Months" to "3 เดือนที่ผ่านมา",
        "memberActivities.last4Weeks" to "2 เดือนที่ผ่านมา",
        "memberActivities.last6Months" to "ครึ่งปีที่ผ่านมา",
        "memberActivities.lastYear" to "ปีที่แล้ว",
        "memberActivities.loading" to "กำลังโหลดแบบฝึกหัด...",
        "memberActivities.more" to "อื่น",
        "memberActivities.noActivities" to "ไม่พบแบบฝึกหัดในช่วงเวลาที่เลือก",
        "memberActivities.period" to "ช่วงเวลา",
        "memberActivities.showLess" to "แสดงน้อยลง",
        "memberActivities.title" to "ออกกำลังกายโดย",
        "memberGallery.imageSize" to "ขนาดภาพ",
        "memberGallery.loading" to "กำลังโหลดแกลเลอรี...",
        "memberGallery.noImage" to "ไม่มีภาพ",
        "memberGallery.noMembersWithImages" to "ไม่พบสมาชิกที่มีรูปภาพ",
        "memberGallery.title" to "แกลลอรี่สมาชิก",
        "memberGallery.titleWithDate" to "แกลเลอรีสมาชิก - คลิกที่ภาพเพื่อเพิ่มเป็นผู้เข้าร่วม",
        "memberNotes.add" to "เพิ่ม",
        "memberNotes.memberImage" to "สมาชิกภาพ",
        "memberNotes.newNote" to "บันทึกใหม่",
        "memberNotes.notes" to "หมายเหตุ",
        "memberNotes.phone" to "หมายเลขโทรศัพท์",
        "memberNotes.selectTags" to "เลือกแท็ก",
        "memberNotes.tags" to "Tags",
        "memberNotes.title" to "หมายเหตุสำหรับ",
        "members.actions" to "การดำเนินการ",
        "members.active" to "ใช้งานอยู่",
        "members.activeMembers" to "สมาชิกที่ใช้งานอยู่",
        "members.addEmail" to "เพิ่มอีเมล",
        "members.addGroup" to "เพิ่มกลุ่ม...",
        "members.addPhone" to "เพิ่มหมายเลขโทรศัพท์",
        "members.address" to "ที่อยู่",
        "members.adultReleaseApproved" to "อนุมัติสำหรับผู้ใหญ่",
        "members.adultReserveApproved" to "ตัวสำรองผู้ใหญ่",
        "members.adults" to "ผู้ใหญ่ (20+)",
        "members.age" to "อายุ",
        "members.ageFromPlaceholder" to "จาก",
        "members.ageGroup" to "กลุ่มอายุ",
        "members.ageRange" to "ช่วงอายุ",
        "members.ageToPlaceholder" to "ถึง",
        "members.batchFormsMarkedEmpty" to "ไม่มีแบบฟอร์มที่ยังไม่ได้รับการยืนยันในการเลือกปัจจุบัน",
        "members.batchFormsMarkedSuccess" to "ทำเครื่องหมายแบบฟอร์ม {count} ว่าได้รับการยืนยันแล้ว",
        "members.batchMarkedRegularEmpty" to "ไม่มีสมาชิกรุ่นทดลองใช้ในการเลือกปัจจุบัน",
        "members.batchMarkedRegularSuccess" to "ทำเครื่องหมายสมาชิกรุ่นทดลองใช้ {count} เป็นประจำ",
        "members.batchPartialFailure" to "{success} สำเร็จ {failed} ล้มเหลว",
        "members.birthdate" to "วันเกิด",
        "members.bulkActions" to "การดำเนินการแบบกลุ่ม",
        "members.camera" to "กล้อง",
        "members.change" to "เปลี่ยน",
        "members.city" to "เมือง",
        "members.clearFields" to "ล้างช่องข้อมูล",
        "members.clearFilters" to "รีเซ็ตตัวกรอง",
        "members.clickTtRequestAction" to "ขอสิทธิ์คลิก-TT",
        "members.clickTtRequestConfirm" to "เริ่มคำขอ Click-TT อัตโนมัติสำหรับ {name}?",
        "members.clickTtRequestError" to "ไม่สามารถส่งคำขอ Click-TT",
        "members.clickTtRequestFailedLog" to "คำขอ Click-TT ล้มเหลว",
        "members.clickTtRequestHint" to "คำขอได้รับการประมวลผลโดยอัตโนมัติโดยเวิร์กโฟลว์ Click-TT แบ็กเอนด์",
        "members.clickTtRequestPending" to "คำขอ Click-TT อยู่ระหว่างดำเนินการ",
        "members.clickTtRequestPendingShort" to "รอดำเนินการ ...",
        "members.clickTtRequestShort" to "คลิก ทีที",
        "members.clickTtRequestSuccess" to "โปรดลงชื่อเข้าใช้เพื่อคลิก-tt และส่งคำขอที่นั่น",
        "members.clickTtRequestTitle" to "เริ่มคำขอ Click-TT",
        "members.clickTtSubmitted" to "คลิก-TT ส่งแล้ว",
        "members.closeEditor" to "ปิดตัวแก้ไข",
        "members.composeEmail" to "เขียนอีเมล",
        "members.contact" to "ติดต่อ",
        "members.copyContactSummary" to "คัดลอกข้อมูลสรุปผู้ติดต่อ",
        "members.copyContactSummarySuccess" to "คัดลอกข้อมูลสรุปผู้ติดต่อไปยังคลิปบอร์ดแล้ว",
        "members.copyEmails" to "คัดลอกอีเมล",
        "members.copyEmailsEmpty" to "ไม่มีที่อยู่อีเมลในรายการที่เลือกปัจจุบัน",
        "members.copyEmailsSuccess" to "คัดลอกรายชื่ออีเมลไปยังคลิปบอร์ดแล้ว",
        "members.copyPhones" to "คัดลอกโทรศัพท์",
        "members.copyPhonesEmpty" to "ไม่มีหมายเลขโทรศัพท์ในรายการที่เลือกในปัจจุบัน",
        "members.copyPhonesSuccess" to "คัดลอกรายชื่อโทรศัพท์ไปยังคลิปบอร์ดแล้ว",
        "members.create" to "สร้าง",
        "members.createNewMember" to "สร้างสมาชิกใหม่",
        "members.dataIssueAddress" to "ไม่มีที่อยู่",
        "members.dataIssueBirthdate" to "ไม่มีวันเกิด",
        "members.dataIssueCity" to "ไม่มีเมือง",
        "members.dataIssueEmail" to "ไม่มีอีเมล",
        "members.dataIssueGender" to "เพศยังไม่ชัดเจน",
        "members.dataIssuePhone" to "ไม่มีหมายเลขโทรศัพท์",
        "members.dataIssuePostalCode" to "ไม่มีรหัสไปรษณีย์",
        "members.dataIssueStreet" to "ไม่มีถนน",
        "members.dataIssueTrainingGroup" to "ไม่มีกลุ่มฝึกซ้อม",
        "members.dataQuality" to "คุณภาพข้อมูล",
        "members.dataQualityComplete" to "ข้อมูลครบถ้วน",
        "members.deactivateMember" to "ปิดการใช้งานสมาชิก",
        "members.deactivateMemberConfirm" to "คุณต้องการปิดการใช้งาน \"{name}\" จริงหรือไม่?",
        "members.deactivateMemberTitle" to "ปิดการใช้งานสมาชิก",
        "members.deleteImageConfirm" to "คุณต้องการลบภาพนี้จริง ๆ หรือไม่?",
        "members.deleteImageTitle" to "ลบภาพ",
        "members.editHint" to "คลิกแถวเพื่อเปิดตัวแก้ไข",
        "members.editMember" to "แก้ไขสมาชิก",
        "members.editorAssignTrainingGroupHint" to "กรุณากำหนดกลุ่มฝึกซ้อมอย่างน้อยหนึ่งกลุ่ม",
        "members.editorCreateHint" to "สร้างสมาชิกใหม่และบันทึกรายละเอียดการติดต่อโดยตรง",
        "members.editorEditHint" to "แก้ไขรายละเอียดสำหรับ {name}",
        "members.editorRecommendedEntry" to "ข้อมูลที่แนะนำให้กรอก",
        "members.emailAddress" to "อีเมล",
        "members.emailAddressShort" to "อีเมล",
        "members.emails" to "อีเมล",
        "members.errorAddingToGroup" to "เกิดข้อผิดพลาดในการเพิ่มเข้ากลุ่ม",
        "members.errorDeactivatingMember" to "เกิดข้อผิดพลาดในการปิดการใช้งานสมาชิก",
        "members.errorDeletingImage" to "ไม่สามารถลบรูปภาพได้",
        "members.errorLoadingImage" to "เกิดข้อผิดพลาดในการโหลดรูปภาพ",
        "members.errorLoadingMembers" to "โหลดรายชื่อสมาชิกไม่สำเร็จ",
        "members.errorLoadingTrainingParticipations" to "เกิดข้อผิดพลาดในการโหลดการเข้าร่วมฝึกซ้อม",
        "members.errorMarkingForm" to "เกิดข้อผิดพลาดในการทำเครื่องหมายแบบฟอร์ม",
        "members.errorRemovingFromGroup" to "เกิดข้อผิดพลาดในการลบออกจากกลุ่ม",
        "members.errorRemovingTestMembership" to "เกิดข้อผิดพลาดในการลบสถานะสมาชิกทดลอง",
        "members.errorRotatingImage" to "เกิดข้อผิดพลาดในการหมุนรูปภาพ",
        "members.errorSavingMember" to "เกิดข้อผิดพลาดในการบันทึกสมาชิก",
        "members.errorSettingPrimaryImage" to "ไม่สามารถตั้งรูปภาพหลักได้",
        "members.errorTransfer" to "เกิดข้อผิดพลาดในการโอนข้อมูล",
        "members.errorUpdatingRatings" to "เกิดข้อผิดพลาดในการอัปเดตค่า TTR/QTTR",
        "members.errorUploadingImage" to "ไม่สามารถอัปโหลดรูปภาพได้",
        "members.exercises" to "แบบฝึก",
        "members.exportCsv" to "ส่งออก CSV",
        "members.exportCsvFile" to "Member-selection.csv",
        "members.exportEmails" to "อีเมล",
        "members.exportMembersSelected" to "สมาชิกที่เลือกอยู่ในปัจจุบัน",
        "members.exportPhones" to "โทรศัพท์",
        "members.exportPreview" to "ส่งออกตัวอย่าง",
        "members.exportPreviewEmpty" to "ไม่มีสมาชิกในการเลือกปัจจุบัน",
        "members.exportPreviewNames" to "ดูตัวอย่าง",
        "members.exportReachableByEmail" to "ด้วยที่อยู่อีเมล",
        "members.exportReachableByPhone" to "พร้อมหมายเลขโทรศัพท์",
        "members.firstName" to "ชื่อ",
        "members.formHandedOver" to "ส่งแบบฟอร์มสมาชิกแล้ว",
        "members.formMarkedAsHandedOver" to "ทำเครื่องหมายว่าได้ส่งแบบฟอร์มสมาชิกแล้ว",
        "members.gender" to "เพศ",
        "members.genderDiverse" to "หลากหลาย",
        "members.genderFemale" to "หญิง",
        "members.genderMale" to "ชาย",
        "members.genderUnknown" to "ไม่ทราบ",
        "members.generatePhoneList" to "สร้างรายการโทรศัพท์",
        "members.groupPhotoCrop" to "ประมวลผลรูปกลุ่ม",
        "members.groupPhotoCropSaved" to "บันทึกรูปสมาชิกจากรูปกลุ่มแล้ว",
        "members.image" to "รูปภาพ",
        "members.imageDeleted" to "ลบรูปภาพแล้ว",
        "members.imageInternet" to "รูปภาพ (เน็ต)",
        "members.imagePreview" to "ตัวอย่างรูปสมาชิก",
        "members.imageUpdated" to "อัปเดตรูปภาพแล้ว",
        "members.inactive" to "ไม่ใช้งาน",
        "members.inactiveMembers" to "สมาชิกที่ไม่ใช้งาน",
        "members.j11" to "ยู11",
        "members.j13" to "ยู13",
        "members.j15" to "ยู15",
        "members.j17" to "J17 (17 ปีหรือน้อยกว่า)",
        "members.j19" to "ยู19",
        "members.j9" to "ยู9",
        "members.lastName" to "นามสกุล",
        "members.lastTrainingFilter" to "การเข้าร่วมล่าสุด",
        "members.lastTrainingFilterHasDate" to "มีวันที่บันทึก",
        "members.lastTrainingFilterHint" to "ตาราง: ฤดูกาลปัจจุบันในคอลัมน์ AK รายละเอียดครบ (สองฤดูกาล, การเข้าร่วมล่าสุด, จำนวนครั้ง) เมื่อชี้ที่แถว",
        "members.lastTrainingFilterNoDate" to "ไม่มีการเข้าร่วมล่าสุด",
        "members.lastTrainingFilterNotInTraining" to "ทำเครื่องหมาย «ไม่เข้าร่วมอีกต่อไป»",
        "members.loadingMembers" to "กำลังโหลดสมาชิก...",
        "members.m11" to "G11",
        "members.m13" to "G13",
        "members.m15" to "G15",
        "members.m19" to "G19",
        "members.m9" to "G9",
        "members.markFormReceived" to "ทำเครื่องหมายแบบฟอร์มยืนยันแล้ว",
        "members.markFormsForSelection" to "ตรวจสอบแบบฟอร์มสำหรับการเลือก",
        "members.markRegular" to "ทำเครื่องหมายเป็นประจำ",
        "members.markRegularForSelection" to "ทำเครื่องหมายการเลือกเป็นประจำ",
        "members.memberDeactivated" to "ปิดการใช้งานสมาชิกแล้ว",
        "members.memberDetails" to "รายละเอียดสมาชิก",
        "members.memberFormHandedOver" to "ส่งแบบฟอร์มสมาชิกแล้ว",
        "members.memberImage" to "รูปสมาชิก",
        "members.memberImages" to "รูปสมาชิก",
        "members.memberInfo" to "ข้อมูลสมาชิก",
        "members.memberScope" to "ขอบเขตสมาชิก",
        "members.missingTtrHistoryId" to "ไม่มีการบันทึก myTischtennis ID",
        "members.name" to "ชื่อ นามสกุล",
        "members.newMember" to "สมาชิกใหม่",
        "members.noAddressShort" to "ไม่มีที่อยู่",
        "members.noEmailShort" to "ไม่มีอีเมล",
        "members.noGroupsAssigned" to "ยังไม่ได้กำหนดกลุ่ม",
        "members.noGroupsAvailable" to "ไม่มีกลุ่มให้เลือก",
        "members.noOpenTasks" to "ไม่มีงานเปิดอยู่",
        "members.noPhoneShort" to "ไม่มีโทรศัพท์",
        "members.notes" to "บันทึกย่อ",
        "members.noTestMembership" to "ไม่ใช่สมาชิกทดลองอีกต่อไป",
        "members.notInTrainingTooltip" to "ไม่มีการเข้าร่วมสำหรับสัปดาห์การฝึกอบรม {weeks}",
        "members.onlyActiveMembers" to "จะแสดงเฉพาะสมาชิกที่ใช้งานอยู่",
        "members.openTasks" to "เปิดงาน",
        "members.parent" to "ผู้ปกครอง",
        "members.parentFallback" to "พ่อแม่",
        "members.parentName" to "ชื่อ (เช่น แม่ พ่อ)",
        "members.phoneList" to "รายการโทรศัพท์.pdf",
        "members.phoneListForSelection" to "รายการโทรศัพท์สำหรับการเลือก",
        "members.phoneListSelectionFile" to "รายชื่อโทรศัพท์-selection.pdf",
        "members.phoneNumber" to "หมายเลขโทรศัพท์",
        "members.phoneNumberShort" to "โทรศัพท์",
        "members.phones" to "หมายเลขโทรศัพท์",
        "members.picsInInternetAllowed" to "อนุญาตให้ใช้รูปบนอินเทอร์เน็ต",
        "members.postalCode" to "รหัสไปรษณีย์",
        "members.previewLastTraining" to "อบรมครั้งสุดท้าย",
        "members.previewNoLastTraining" to "ยังไม่มีการเข้าร่วม",
        "members.primary" to "หลัก",
        "members.primaryImageUpdated" to "อัปเดตรูปภาพหลักแล้ว",
        "members.remove" to "เอาออก",
        "members.resultsVisible" to "สมาชิกมองเห็นได้",
        "members.rowTooltipSeparator" to "·",
        "members.scopeActive" to "คล่องแคล่ว",
        "members.scopeActiveDataIncomplete" to "ใช้งานอยู่ + ข้อมูลไม่ครบ",
        "members.scopeActiveTest" to "ใช้งานอยู่ + ทดลองใช้",
        "members.scopeAll" to "ทั้งหมด",
        "members.scopeDataIncomplete" to "ข้อมูลไม่ครบ",
        "members.scopeInactive" to "ไม่ได้ใช้งาน",
        "members.scopeNeedsForm" to "แบบฟอร์มไม่ได้รับการยืนยัน",
        "members.scopeNotTraining" to "ไม่อบรมแล้ว",
        "members.scopeTest" to "การทดลอง",
        "members.search" to "ค้นหา",
        "members.searchAndFilter" to "ค้นหาและตัวกรอง",
        "members.searchPlaceholder" to "ค้นหาตามชื่อ เมือง โทรศัพท์ หรืออีเมล",
        "members.selectFile" to "เลือกไฟล์",
        "members.showInactiveMembers" to "แสดงสมาชิกที่ไม่ใช้งาน",
        "members.showTrainingParticipationsColumn" to "แสดงคอลัมน์ « การเข้าร่วมเทรนนิง »",
        "members.showTtrHistory" to "แสดงประวัติ TTR",
        "members.sixOrMoreParticipations" to "เข้าร่วมฝึกซ้อม 6 ครั้งขึ้นไป",
        "members.sortAge" to "อายุ",
        "members.sortBirthday" to "วันเกิด",
        "members.sortBy" to "เรียงตาม",
        "members.sortFirstName" to "ชื่อ",
        "members.sortLastName" to "นามสกุล",
        "members.sortLastTraining" to "อบรมครั้งสุดท้าย",
        "members.sortOpenTasks" to "เปิดงาน",
        "members.sortQttr" to "ค่า QTTR",
        "members.status" to "สถานะ",
        "members.street" to "ถนน",
        "members.subtitle" to "ค้นหา กรอง และแก้ไขสมาชิกได้โดยตรง",
        "members.taskActionMarkRegular" to "ทำเครื่องหมายเป็นประจำ",
        "members.taskActionRequest" to "ขอ",
        "members.taskActionReview" to "เปิด",
        "members.taskActionVerify" to "ตรวจสอบ",
        "members.taskAssignTrainingGroup" to "กำหนดกลุ่มฝึกซ้อม",
        "members.taskCheckClickTt" to "ตรวจสอบสิทธิ์ Click-TT",
        "members.taskCheckDataQuality" to "ตรวจสอบคุณภาพข้อมูล",
        "members.taskCheckTrainingStatus" to "ตรวจสอบสถานะการฝึกอบรม",
        "members.taskReviewTrialStatus" to "ตรวจสอบสถานะการทดลองใช้",
        "members.taskVerifyForm" to "ยืนยันแบบฟอร์ม",
        "members.testMember" to "ทดลอง",
        "members.testMembers" to "สมาชิกทดลอง",
        "members.testMembership" to "สมาชิกทดลอง",
        "members.testMembershipRemoved" to "ลบสถานะสมาชิกทดลองแล้ว",
        "members.threeOrMoreParticipations" to "เข้าร่วมฝึกซ้อม 3 ครั้งขึ้นไป",
        "members.title" to "สมาชิก",
        "members.toggleSortDirection" to "สลับทิศทางการจัดเรียง",
        "members.trainingGroups" to "กลุ่มฝึกซ้อม",
        "members.trainingParticipations" to "การเข้าร่วมฝึกซ้อม",
        "members.transferErrorTitle" to "ข้อผิดพลาดในการโอน",
        "members.transferMembers" to "โอนสมาชิก",
        "members.transferSuccessTitle" to "โอนสำเร็จ",
        "members.ttAdult" to "ผู้ใหญ่ (ไม่ใช่เยาวชนตามวันตัด)",
        "members.ttAgeClassCol" to "รุ่นอายุ (TT)",
        "members.ttFilterGroupJ" to "ชายและหญิง (รวม)",
        "members.ttFilterGroupM" to "เฉพาะหญิง",
        "members.ttrQttr" to "TTR/QTTR",
        "members.ttSeasonCurrentTag" to "ปัจจุบัน",
        "members.ttSeasonFilter" to "ฤดูกาล (วันตัดสิทธิ์)",
        "members.ttSeasonNextTag" to "ถัดไป",
        "members.ttStichtagHint" to "วันตัดสิทธิ์ 1 ม.ค. (DTTB) ชาย: เฉพาะ J หญิง: J และ M",
        "members.updateRatings" to "อัปเดต TTR/QTTR จาก myTischtennis",
        "members.updating" to "กำลังอัปเดต...",
        "members.visibleMembers" to "สมาชิกที่มองเห็นได้",
        "members.wantsToPlay" to "ต้องการเล่น",
        "memberSelection.close" to "ปิด",
        "memberSelection.deselectAll" to "ยกเลิกการเลือกทั้งหมด",
        "memberSelection.generatePdf" to "สร้าง PDF",
        "memberSelection.members" to "สมาชิก",
        "memberSelection.noRecommendations" to "ไม่พบคำแนะนำที่ตรงกัน",
        "memberSelection.recommendations" to "ข้อแนะนำ",
        "memberSelection.selectAll" to "เลือกทั้งหมด",
        "memberSelection.title" to "เลือกสมาชิก",
        "memberTransfer.additionalField" to "สนามเสริม",
        "memberTransfer.additionalFieldExample1" to "ช่องเพิ่มเติม (เช่น client_id)",
        "memberTransfer.additionalFieldExample2" to "ช่องเพิ่มเติม (เช่น client_secret)",
        "memberTransfer.analyzeAndImport" to "วิเคราะห์และนำเข้าเทมเพลต",
        "memberTransfer.availablePlaceholders" to "ตัวยึดตำแหน่งที่มีอยู่",
        "memberTransfer.bulkMode" to "โหมดการนำเข้าจำนวนมาก (โอนสมาชิกทั้งหมดพร้อมกัน)",
        "memberTransfer.bulkModeActive" to "โหมดใช้งานอยู่",
        "memberTransfer.bulkModeActiveDescription" to "เทมเพลตจะกำหนดรูปแบบสำหรับสมาชิกรายเดียว สมาชิกจะถูกรวมไว้ในอาร์เรย์โดยอัตโนมัติ คุณสามารถเลือกกำหนดโครงสร้างภายนอกได้ใน \"เทมเพลต wrapper จำนวนมาก\" (ดูด้านล่าง)",
        "memberTransfer.bulkModeHint" to "หากเปิดใช้งาน สมาชิกทั้งหมดในคำขอจะถูกถ่ายโอนเป็นอาร์เรย์",
        "memberTransfer.bulkWrapperDescription" to "หรือคุณสามารถกำหนดโครงสร้างภายนอกที่จะแทรกอาร์เรย์สมาชิกเข้าไปได้ ใช้ PLACEHOLDER_MEMBERS เป็นตัวยึดตำแหน่งสำหรับอาร์เรย์ของสมาชิก",
        "memberTransfer.bulkWrapperNote" to "หมายเหตุ: หากไม่ได้ระบุเทมเพลต wrapper ระบบจะใช้อาร์เรย์สมาชิกโดยอัตโนมัติ",
        "memberTransfer.bulkWrapperTemplate" to "เทมเพลตกระดาษห่อจำนวนมาก (ไม่บังคับ)",
        "memberTransfer.bulkWrapperWhat" to "เทมเพลตกระดาษห่อจำนวนมากคืออะไร",
        "memberTransfer.configDeleted" to "ลบการกำหนดค่าสำเร็จแล้ว!",
        "memberTransfer.configInfo" to "กำหนดการตั้งค่าสำหรับการโอนสมาชิกไปยังระบบภายนอกได้ที่นี่ การตั้งค่าเหล่านี้จะถูกบันทึกไว้ตามเกณฑ์เฉพาะของสโมสร",
        "memberTransfer.configSaved" to "บันทึกการกำหนดค่าเรียบร้อยแล้ว",
        "memberTransfer.confirmDelete" to "ลบการกำหนดค่า",
        "memberTransfer.confirmDeleteMessage" to "คุณแน่ใจหรือไม่ว่าต้องการคืนเงินสำหรับธุรกรรมนี้",
        "memberTransfer.deleteConfig" to "ลบการกำหนดค่า",
        "memberTransfer.deleting" to "กำลังเคลียร์...",
        "memberTransfer.errorDeleting" to "เกิดข้อผิดพลาดในการล้าง",
        "memberTransfer.errorLoading" to "เกิดข้อผิดพลาดในการโหลดการกำหนดค่า",
        "memberTransfer.errorParsingTemplate" to "เกิดข้อผิดพลาดในการแยกวิเคราะห์เทมเพลต",
        "memberTransfer.errorSaving" to "เกิดข้อผิดพลาดขณะบันทึก",
        "memberTransfer.example" to "ตัวอย่าง",
        "memberTransfer.exampleFormData" to "ตัวอย่างรูปแบบข้อมูลแบบฟอร์ม",
        "memberTransfer.exampleJson" to "ตัวอย่างรูปแบบ JSON (แนะนำ)",
        "memberTransfer.exampleXml" to "ตัวอย่างรูปแบบ XML",
        "memberTransfer.formDataHint" to "สำหรับข้อมูลแบบฟอร์ม ให้ใช้เทมเพลตข้อความธรรมดาที่มีบรรทัดในรูปแบบ feldname=placeholder:",
        "memberTransfer.httpMethod" to "วิธี HTTP",
        "memberTransfer.importTemplate" to "นำเข้าเทมเพลตจากตัวอย่างเต็ม",
        "memberTransfer.importTemplateHint" to "รวมเทมเพลตตัวอย่างแบบเต็ม (พร้อมสมาชิกตัวอย่าง) ระบบจะตรวจจับเทมเพลตสมาชิกและเทมเพลตกระดาษห่อจำนวนมากโดยอัตโนมัติ",
        "memberTransfer.importTemplatePlaceholder" to "แทรกเทมเพลตตัวอย่างแบบเต็มที่นี่ เช่น:\nแอลเบรซ\n  ธันวาคม: [\n    แอลเบรซ\n      D .firstNameD.: D .MaxD.,\n      D. นามสกุลD.: D. MustermannD.,\n      DMail: DMaxATexample.comอีเมล: DMaxATexample.com\n    อาร์เบรซ\n  ]\nอาร์เบรซ",
        "memberTransfer.invalidJson" to "โปรดตรวจสอบให้แน่ใจว่ามีการใช้ JSON ที่ถูกต้อง",
        "memberTransfer.invalidTemplateFormat" to "รูปแบบเทมเพลตไม่ถูกต้อง",
        "memberTransfer.loadingConfig" to "กำลังโหลดการกำหนดค่า...",
        "memberTransfer.loginConfiguration" to "การกำหนดค่าการเข้าสู่ระบบ",
        "memberTransfer.loginData" to "ข้อมูลการเข้าสู่ระบบ",
        "memberTransfer.loginEndpointHint" to "ทางเลือก: เส้นทางสัมพัทธ์ไปยังจุดสิ้นสุดการเข้าสู่ระบบ (เช่น /api/auth/login)",
        "memberTransfer.loginEndpointPath" to "เส้นทางปลายทางการเข้าสู่ระบบ",
        "memberTransfer.loginEndpointPlaceholder" to "/api/auth/login",
        "memberTransfer.loginFormat" to "รูปแบบการเข้าสู่ระบบ",
        "memberTransfer.membersArray" to "สมาชิกอาร์เรย์",
        "memberTransfer.password" to "รหัสผ่าน",
        "memberTransfer.passwordEncrypted" to "รหัสผ่านจะถูกเก็บไว้เข้ารหัส",
        "memberTransfer.placeholderHint" to "คลิกที่ตัวยึดเพื่อแทรกที่ตำแหน่งเคอร์เซอร์ปัจจุบัน:",
        "memberTransfer.placeholders.address" to "ที่อยู่รวม",
        "memberTransfer.placeholders.addressDesc" to "ถนนและเมืองรวมกัน",
        "memberTransfer.placeholders.birthDate" to "วันเกิด",
        "memberTransfer.placeholders.birthDateAlt" to "วันเกิด (เก่า)",
        "memberTransfer.placeholders.birthDateAltDesc" to "วันเดือนปีเกิดในรูปแบบ ปปปป-ดด-วว (ชื่อสำรอง)",
        "memberTransfer.placeholders.birthDateDesc" to "ในรูปแบบ ปปปป-ดด-วว",
        "memberTransfer.placeholders.city" to "ที่ตั้ง",
        "memberTransfer.placeholders.cityDesc" to "สถานที่พำนัก",
        "memberTransfer.placeholders.email" to "ที่อยู่อีเมล",
        "memberTransfer.placeholders.emailDesc" to "ที่อยู่อีเมลของสมาชิก",
        "memberTransfer.placeholders.firstName" to "ชื่อ",
        "memberTransfer.placeholders.firstNameDesc" to "ชื่อสมาชิก",
        "memberTransfer.placeholders.fullName" to "ชื่อเต็ม",
        "memberTransfer.placeholders.fullNameDesc" to "ชื่อและนามสกุลรวมกัน",
        "memberTransfer.placeholders.gender" to "เพศ",
        "memberTransfer.placeholders.genderDesc" to "เพศของสมาชิก",
        "memberTransfer.placeholders.lastName" to "นามสกุล",
        "memberTransfer.placeholders.lastNameDesc" to "นามสกุลสมาชิก",
        "memberTransfer.placeholders.phone" to "หมายเลขโทรศัพท์",
        "memberTransfer.placeholders.phoneDesc" to "โทรศัพท์พนักงาน",
        "memberTransfer.placeholders.qttr" to "ค่า QTTR",
        "memberTransfer.placeholders.qttrDesc" to "มูลค่า QTTR ของสมาชิก",
        "memberTransfer.placeholders.street" to "ถนน",
        "memberTransfer.placeholders.streetDesc" to "ถนนและบ้านเลขที่",
        "memberTransfer.placeholders.ttr" to "ค่า TTR",
        "memberTransfer.placeholders.ttrDesc" to "มูลค่า TTR ของสมาชิก",
        "memberTransfer.save" to "บันทึก",
        "memberTransfer.saving" to "ประหยัด...",
        "memberTransfer.serverBaseUrl" to "URL ฐานเซิร์ฟเวอร์",
        "memberTransfer.serverBaseUrlHint" to "URL พื้นฐานของเซิร์ฟเวอร์ (เช่น https://example.com)",
        "memberTransfer.serverBaseUrlPlaceholder" to "https://example.com",
        "memberTransfer.serverConfiguration" to "เซิร์ฟเวอร์ -การกำหนดค่า",
        "memberTransfer.templateDescription" to "เทมเพลตจะกำหนดรูปแบบที่ข้อมูลสมาชิกจะถูกถ่ายโอนไปยังระบบภายนอก ใช้ตัวยึดตำแหน่ง เช่น PLACEHOLDER_FIRSTNAME เพื่อแทนที่ข้อมูลโดยอัตโนมัติ",
        "memberTransfer.templateImported" to "นำเข้าเทมเพลตเรียบร้อยแล้ว",
        "memberTransfer.templateImportedBulk" to "ตรวจพบเทมเพลตสมาชิก เปิดใช้งานโหมดเป็นกลุ่มแล้ว",
        "memberTransfer.templateImportedDetails" to "ตรวจพบและดำเนินการเทมเพลตสมาชิกและเทมเพลต Wrapper จำนวนมากแล้ว",
        "memberTransfer.templateImportedSingle" to "ตรวจพบเทมเพลตสมาชิกเดี่ยว",
        "memberTransfer.templateTip" to "เคล็ดลับ: วางเคอร์เซอร์ในตำแหน่งที่ต้องการในเทมเพลต และคลิกที่ตัวยึดตำแหน่งเพื่อแทรก ตัวยึดตำแหน่งจะถูกแทนที่ด้วยข้อมูลสมาชิกจริงโดยอัตโนมัติเมื่อมีการถ่ายโอน",
        "memberTransfer.templateWhat" to "เทมเพลตคืออะไร?",
        "memberTransfer.title" to "การโอนสมาชิก - การตั้งค่า",
        "memberTransfer.transferConfiguration" to "การกำหนดค่าการส่ง",
        "memberTransfer.transferConfigurationTitle" to "การกำหนดค่าการส่ง",
        "memberTransfer.transferEndpointHint" to "เส้นทางสัมพัทธ์ไปยังจุดสิ้นสุดการส่งข้อมูล (เช่น /api/members/bulk)",
        "memberTransfer.transferEndpointPath" to "เส้นทางปลายทางการส่งข้อมูล",
        "memberTransfer.transferEndpointPlaceholder" to "/api/members/bulk",
        "memberTransfer.transferFormat" to "รูปแบบการส่งสัญญาณ",
        "memberTransfer.transferTemplate" to "เทมเพลตการโอน",
        "memberTransfer.usernameEmail" to "ชื่อผู้ใช้/อีเมล",
        "memberTransferDialog.additionalErrors" to "ข้อบกพร่องเพิ่มเติม",
        "memberTransferDialog.additionalFieldPlaceholder" to "ช่องเพิ่มเติม (เช่น client_id)",
        "memberTransferDialog.additionalFieldPlaceholderForm" to "ชื่อฟิลด์: ค่า (เช่น client_id: abc123)",
        "memberTransferDialog.bulkImport" to "การนำเข้าจำนวนมาก",
        "memberTransferDialog.cancel" to "ยกเลิก",
        "memberTransferDialog.editConfig" to "แก้ไขการกำหนดค่า",
        "memberTransferDialog.endpoint" to "Endpoint",
        "memberTransferDialog.excludedMembers" to "สมาชิกที่ถูกยกเว้น (ไม่มีช่องบังคับ)",
        "memberTransferDialog.format" to "Format",
        "memberTransferDialog.goToSettings" to "การตั้งค่า ไปไหน?",
        "memberTransferDialog.loadingConfig" to "กำลังโหลดการกำหนดค่าที่บันทึกไว้",
        "memberTransferDialog.loginData" to "ข้อมูลการเข้าสู่ระบบ",
        "memberTransferDialog.loginDataHint" to "รายละเอียดการเข้าสู่ระบบจะใช้จากการตั้งค่า คุณสามารถเขียนทับได้ที่นี่หากจำเป็น",
        "memberTransferDialog.loginDataOverride" to "รายละเอียดการเข้าสู่ระบบ (ตัวเลือกเขียนทับ)",
        "memberTransferDialog.loginDataOverrideHint" to "กรอกเฉพาะในกรณีที่คุณต้องการเขียนทับข้อมูลการเข้าสู่ระบบที่บันทึกไว้ ช่องว่างจะใช้ค่าที่เก็บไว้",
        "memberTransferDialog.method" to "วิธี",
        "memberTransferDialog.mode" to "โหมด",
        "memberTransferDialog.noConfigFound" to "ไม่พบการกำหนดค่า",
        "memberTransferDialog.noConfigMessage" to "กรุณากำหนดค่าการโอนสมาชิกในการตั้งค่าก่อน",
        "memberTransferDialog.passwordPlaceholder" to "รหัสผ่าน (เว้นว่างไว้เพื่อบันทึก)",
        "memberTransferDialog.server" to "Server",
        "memberTransferDialog.single" to "เดี่ยว",
        "memberTransferDialog.title" to "โอนสมาชิก",
        "memberTransferDialog.transfer" to "โอนแล้ว",
        "memberTransferDialog.transferConfiguration" to "การกำหนดค่าการส่ง",
        "memberTransferDialog.transferError" to "เกิดข้อผิดพลาดระหว่างการส่งสัญญาณ",
        "memberTransferDialog.transferFailed" to "การโอนล้มเหลว",
        "memberTransferDialog.transferring" to "กำลังสื่อสาร...",
        "memberTransferDialog.transferSuccess" to "{transferred} โอนสำเร็จโดยสมาชิก {total}",
        "memberTransferDialog.usernameEmail" to "ชื่อผู้ใช้/อีเมล",
        "messages.cancel" to "ยกเลิก",
        "messages.confirm" to "ยืนยัน",
        "messages.error" to "ข้อผิดพลาด",
        "messages.fileTooLarge" to "ไฟล์มีขนาดใหญ่เกินไป",
        "messages.imageMaxSize" to "รูปภาพต้องมีขนาดสูงสุด 5 MB",
        "messages.info" to "ข้อมูล",
        "messages.invalidFile" to "ไฟล์ไม่ถูกต้อง",
        "messages.note" to "สังเกต",
        "messages.pleaseSelectImageFile" to "กรุณาเลือกไฟล์ภาพ",
        "messages.recordsDisplayed" to "แสดง",
        "messages.recordsFound" to "พบบันทึก",
        "messages.success" to "สำเร็จ",
        "messages.successfullyLoaded" to "โหลดสำเร็จแล้ว",
        "messages.warning" to "คำเตือน",
        "mobile.active" to "Aktiv",
        "mobile.add" to "Hinzufügen",
        "mobile.appLoading" to "App wird geladen",
        "mobile.calendarAgendaEmpty" to "ไม่มีนัดในเดือนนี้",
        "mobile.calendarAgendaTitle" to "นัดในเดือนนี้",
        "mobile.calendarAllSourcesFailed" to "โหลดข้อมูลปฏิทินไม่สำเร็จ",
        "mobile.calendarCancellationEnd" to "ถึง (ไม่บังคับ)",
        "mobile.calendarCancellationHint" to "ซ่อนเวลาฝึกประจำในวันเหล่านั้น",
        "mobile.calendarCancellationInMonth" to "การยกเลิกในเดือนนี้",
        "mobile.calendarCancellationReason" to "เหตุผล",
        "mobile.calendarCancellationSave" to "บันทึก",
        "mobile.calendarCancellationStart" to "วันที่ (YYYY-MM-DD)",
        "mobile.calendarCancellationTitle" to "ยกเลิกการฝึก",
        "mobile.calendarGridTitle" to "เดือน",
        "mobile.calendarLegend" to "แสดง",
        "mobile.calendarLegendCancellation" to "ยกเลิก",
        "mobile.calendarLegendHoliday" to "วันหยุด",
        "mobile.calendarLegendMatch" to "แมตช์",
        "mobile.calendarLegendOfficial" to "เข้าร่วม",
        "mobile.calendarLegendSchool" to "ปิดเทอม",
        "mobile.calendarLegendTournament" to "ทัวร์นาเมนต์",
        "mobile.calendarLegendTraining" to "ฝึก",
        "mobile.calendarSourceCancellations" to "ยกเลิกการฝึก",
        "mobile.calendarSourceDiary" to "ไดอารี่",
        "mobile.calendarSourceFailed" to "ไม่ได้โหลด",
        "mobile.calendarSourceHolidays" to "วันหยุด/ปิดเทอม",
        "mobile.calendarSourceMatches" to "แมตช์ลีก",
        "mobile.calendarSourceOfficial" to "การเข้าร่วมอย่างเป็นทางการ",
        "mobile.calendarSourceTournaments" to "การแข่งขัน",
        "mobile.calendarSourceTrainingTimes" to "เวลาฝึก",
        "mobile.calendarSubtitle" to "การฝึก ทัวร์นาเมนต์ แมตช์ และวันหยุดในเดือนนี้",
        "mobile.calendarTitle" to "ปฏิทิน",
        "mobile.calendarToday" to "วันนี้",
        "mobile.cancel" to "Abbrechen",
        "mobile.clubRequest" to "Zugriff anfragen",
        "mobile.clubRequested" to "Angefragt",
        "mobile.createDiaryEntry" to "Eintrag erstellen",
        "mobile.deleteNote" to "Notiz löschen",
        "mobile.deleteTag" to "Tag entfernen",
        "mobile.editTimes" to "Zeiten bearbeiten",
        "mobile.emailAndPasswordRequired" to "E-Mail und Passwort sind erforderlich",
        "mobile.entry" to "Eintrag",
        "mobile.inactive" to "Inaktiv",
        "mobile.language" to "Sprache",
        "mobile.lastTraining" to "Letztes Training",
        "mobile.loginFailed" to "Login fehlgeschlagen",
        "mobile.loginInProgress" to "Anmelden...",
        "mobile.more" to "Mehr",
        "mobile.new" to "Neu",
        "mobile.newNote" to "Neue Notiz",
        "mobile.newTag" to "Neuer Tag",
        "mobile.noDiaryEntries" to "Noch keine Tagebuch-Einträge",
        "mobile.noMembers" to "Keine Mitglieder gefunden",
        "mobile.noResults" to "Keine Treffer",
        "mobile.noTimes" to "Keine Zeiten",
        "mobile.offlineCacheHint" to "ไม่มีการเชื่อมต่อ – แสดงข้อมูลที่โหลดล่าสุด",
        "mobile.participationTop" to "Top Teilnahmen",
        "mobile.refresh" to "Aktualisieren",
        "mobile.requestedAccess" to "Angefragt",
        "mobile.role" to "Rolle",
        "mobile.saveEntry" to "Speichern",
        "mobile.search" to "Suche",
        "mobile.select" to "Auswählen",
        "mobile.sessionCheck" to "Session prüfen",
        "mobile.sessionCheckFailed" to "Session check fehlgeschlagen",
        "mobile.sessionInvalid" to "Session ungültig",
        "mobile.sessionValid" to "Session gültig",
        "mobile.status" to "Status",
        "mobile.user" to "Benutzer",
        "myTischtennis.about" to "เกี่ยวกับ myTischtennis",
        "myTischtennis.aboutFeatures.fetch" to "ดึงข้อมูลการแข่งขันโดยตรง",
        "myTischtennis.aboutFeatures.import" to "นำเข้าข้อมูลการแข่งขันโดยอัตโนมัติ",
        "myTischtennis.aboutFeatures.sync" to "ซิงค์ผลลัพธ์ของผู้เล่น",
        "myTischtennis.aboutText" to "ด้วยการเชื่อมโยงบัญชี myTischtennis ของคุณ คุณสามารถ:",
        "myTischtennis.autoUpdates" to "อัปเดตอัตโนมัติ",
        "myTischtennis.club" to "สมาคม (myTischtennis)",
        "myTischtennis.deleteAccount" to "ยกเลิกการเชื่อมต่อบัญชี",
        "myTischtennis.disabled" to "ยกเลิกการเลือก",
        "myTischtennis.editAccount" to "แก้ไขบัญชี",
        "myTischtennis.enabled" to "บน",
        "myTischtennis.fetchStatistics" to "สถิติการดึงข้อมูล",
        "myTischtennis.lastFetch" to "ดึงข้อมูลครั้งล่าสุด:",
        "myTischtennis.lastLoginAttempt" to "ความพยายามเข้าสู่ระบบครั้งล่าสุด",
        "myTischtennis.lastSuccessfulLogin" to "การเข้าสู่ระบบสำเร็จครั้งล่าสุด",
        "myTischtennis.leagueTables" to "อันดับ JoomSport",
        "myTischtennis.linkAccount" to "เชื่อมโยงบัญชี",
        "myTischtennis.linkedAccount" to "บัญชีที่เชื่อมโยง",
        "myTischtennis.loadingStats" to "กำลังโหลดสถิติ",
        "myTischtennis.matchResults" to "ผลลัพธ์ของกิจกรรม",
        "myTischtennis.neverFetched" to "ไม่เคยเรียกคืน",
        "myTischtennis.no" to "เลขที่",
        "myTischtennis.noAccount" to "ไม่มีการเชื่อมโยงบัญชี myTischtennis",
        "myTischtennis.passwordNote" to "หมายเหตุ: การบันทึกรหัสผ่านเป็นทางเลือก หากคุณไม่บันทึก คุณจะถูกถามรหัสผ่านทุกครั้งที่ซิงโครไนซ์",
        "myTischtennis.passwordSaved" to "บันทึกรหัสผ่านแล้ว",
        "myTischtennis.passwordsEncrypted" to "รหัสผ่านจะถูกเก็บไว้เข้ารหัส",
        "myTischtennis.playerRatings" to "การให้คะแนนผู้เล่น",
        "myTischtennis.refreshStats" to "โหลดสถิติใหม่",
        "myTischtennis.testLogin" to "เข้าสู่ระบบอีกครั้ง",
        "myTischtennis.title" to "myTischtennis-Account",
        "myTischtennis.updateHistory" to "อัปเดตประวัติ",
        "myTischtennis.yes" to "ใช่",
        "myTischtennisAccount.aboutDescription" to "ด้วยการเชื่อมโยงบัญชี myTischtennis ของคุณ คุณสามารถ:",
        "myTischtennisAccount.aboutFeature1" to "นำเข้าข้อมูลการแข่งขันโดยอัตโนมัติ",
        "myTischtennisAccount.aboutFeature2" to "ซิงค์ผลลัพธ์ของผู้เล่น",
        "myTischtennisAccount.aboutFeature3" to "ดึงข้อมูลการแข่งขันโดยตรง",
        "myTischtennisAccount.aboutHint" to "การบันทึกรหัสผ่านเป็นทางเลือก หากคุณไม่บันทึก คุณจะถูกถามรหัสผ่านทุกครั้งที่ซิงโครไนซ์",
        "myTischtennisAccount.aboutMyTischtennis" to "เกี่ยวกับ myTischtennis",
        "myTischtennisAccount.accountSaved" to "บันทึก myTischtennis-Account สำเร็จแล้ว",
        "myTischtennisAccount.accountUnlinked" to "บัญชี myTischtennis ยกเลิกการเชื่อมต่อเรียบร้อยแล้ว",
        "myTischtennisAccount.autoUpdates" to "อัพเดตอัตโนมัติ:",
        "myTischtennisAccount.club" to "สมาคม (myTischtennis):",
        "myTischtennisAccount.daysAgo" to "{count} วันที่ผ่านมา",
        "myTischtennisAccount.disabled" to "ยกเลิกการเลือก",
        "myTischtennisAccount.editAccount" to "แก้ไขบัญชี",
        "myTischtennisAccount.email" to "อีเมล:",
        "myTischtennisAccount.enabled" to "บน",
        "myTischtennisAccount.errorLoadingAccount" to "เกิดข้อผิดพลาดในการโหลดบัญชี myTischtennis",
        "myTischtennisAccount.errorLoadingStatistics" to "เกิดข้อผิดพลาดในการโหลดสถิติการดึงข้อมูล",
        "myTischtennisAccount.errorUnlinking" to "เกิดข้อผิดพลาดในการยกเลิกการเชื่อมต่อบัญชี",
        "myTischtennisAccount.fetchStatistics" to "สถิติการดึงข้อมูล",
        "myTischtennisAccount.hoursAgo" to "{count} ชั่วโมงที่ผ่านมา",
        "myTischtennisAccount.justNow" to "แค่ตอนนี้",
        "myTischtennisAccount.lastFetch" to "ดึงข้อมูลครั้งล่าสุด:",
        "myTischtennisAccount.lastLoginAttempt" to "ความพยายามเข้าสู่ระบบครั้งล่าสุด:",
        "myTischtennisAccount.lastSuccessfulLogin" to "เข้าสู่ระบบสำเร็จครั้งล่าสุด:",
        "myTischtennisAccount.leagueTables" to "อันดับ JoomSport",
        "myTischtennisAccount.linkAccount" to "เชื่อมโยงบัญชี",
        "myTischtennisAccount.linkedAccount" to "บัญชีที่เชื่อมโยง",
        "myTischtennisAccount.loading" to "กำลังโหลด...",
        "myTischtennisAccount.loadingStatistics" to "กำลังโหลดสถิติ",
        "myTischtennisAccount.loginAgain" to "เข้าสู่ระบบอีกครั้ง",
        "myTischtennisAccount.loginFailed" to "การเข้าสู่ระบบล้มเหลว",
        "myTischtennisAccount.loginSuccessful" to "เข้าสู่ระบบสำเร็จ! อัปเดตรายละเอียดการเชื่อมต่อแล้ว",
        "myTischtennisAccount.matchResults" to "ผลลัพธ์ของกิจกรรม",
        "myTischtennisAccount.minutesAgo" to "{count} นาทีที่แล้ว",
        "myTischtennisAccount.never" to "ไม่เคย",
        "myTischtennisAccount.neverFetched" to "ไม่เคยเรียกคืน",
        "myTischtennisAccount.no" to "เลขที่",
        "myTischtennisAccount.noAccountLinked" to "ไม่มีการเชื่อมโยงบัญชี myTischtennis",
        "myTischtennisAccount.passwordRequired" to "ต้องใช้รหัสผ่าน",
        "myTischtennisAccount.passwordSaved" to "บันทึกรหัสผ่านแล้ว",
        "myTischtennisAccount.playerRatings" to "การให้คะแนนผู้เล่น",
        "myTischtennisAccount.playersUpdated" to "อัปเดตผู้เล่นแล้ว",
        "myTischtennisAccount.refreshStatistics" to "โหลดสถิติใหม่",
        "myTischtennisAccount.results" to "ผลลัพธ์",
        "myTischtennisAccount.teams" to "Teams",
        "myTischtennisAccount.title" to "บัญชี myTischtennis",
        "myTischtennisAccount.unlinkAccount" to "ยกเลิกการเชื่อมต่อบัญชี",
        "myTischtennisAccount.unlinkAccountConfirm" to "คุณแน่ใจหรือไม่ว่าต้องการยกเลิกการเชื่อมโยงบัญชี myTischtennis",
        "myTischtennisAccount.unlinkAccountTitle" to "ยกเลิกการเชื่อมต่อบัญชี",
        "myTischtennisAccount.updateHistory" to "อัปเดตประวัติ",
        "myTischtennisAccount.yes" to "ใช่",
        "myTischtennisAccount.yesterday" to "เมื่อวาน",
        "myTischtennisDialog.appPassword" to "รหัสผ่านแอปของคุณเพื่อยืนยัน",
        "myTischtennisDialog.appPasswordHint" to "ด้วยเหตุผลด้านความปลอดภัย เราต้องใช้รหัสผ่านสำหรับแอปของคุณเพื่อบันทึกรหัสผ่าน myTischtennis",
        "myTischtennisDialog.appPasswordPlaceholder" to "รหัสผ่านของคุณสำหรับแอพนี้",
        "myTischtennisDialog.autoUpdateRatings" to "เปิดใช้งานการให้คะแนนการอัปเดตอัตโนมัติ",
        "myTischtennisDialog.autoUpdateRatingsHint" to "การให้คะแนนล่าสุดจาก myTischtennis จะถูกเรียกโดยอัตโนมัติทุกวัน เวลา 6.00 น. ต้องใช้รหัสผ่านที่บันทึกไว้",
        "myTischtennisDialog.autoUpdateWarning" to "สำหรับการอัปเดตอัตโนมัติ จะต้องบันทึกรหัสผ่าน myTischtennis",
        "myTischtennisDialog.cancel" to "ยกเลิก",
        "myTischtennisDialog.editAccount" to "แก้ไข myTischtennis-Account",
        "myTischtennisDialog.email" to "myTischtennis-อีเมล",
        "myTischtennisDialog.emailPlaceholder" to "ที่อยู่อีเมล myTischtennis ของคุณ",
        "myTischtennisDialog.errorLogin" to "ข้อผิดพลาดในการเข้าสู่ระบบ",
        "myTischtennisDialog.errorSaving" to "เกิดข้อผิดพลาดในการบันทึกบัญชี",
        "myTischtennisDialog.linkAccount" to "เชื่อมโยงบัญชี myTischtennis",
        "myTischtennisDialog.loadingLoginForm" to "กำลังโหลดแบบฟอร์มเข้าสู่ระบบ...",
        "myTischtennisDialog.loggingIn" to "เข้าสู่ระบบ...",
        "myTischtennisDialog.login" to "เข้าสู่ระบบ",
        "myTischtennisDialog.password" to "myTischtennis-รหัสผ่าน",
        "myTischtennisDialog.passwordPlaceholder" to "รหัสผ่าน myTischtennis ของคุณ",
        "myTischtennisDialog.passwordPlaceholderKeep" to "เว้นว่างไว้เพื่อเก็บไว้",
        "myTischtennisDialog.save" to "บันทึก",
        "myTischtennisDialog.savePassword" to "บันทึกรหัสผ่าน mytabletennis",
        "myTischtennisDialog.savePasswordHint" to "หากเปิดใช้งาน รหัสผ่าน myTischtennis ของคุณจะถูกจัดเก็บแบบเข้ารหัสเพื่อให้สามารถซิงโครไนซ์อัตโนมัติได้",
        "myTischtennisDialog.saving" to "ประหยัด...",
        "myTischtennisHistory.close" to "ปิด",
        "myTischtennisHistory.failed" to "นั่นไม่ได้ผล",
        "myTischtennisHistory.loading" to "กำลังโหลดประวัติ...",
        "myTischtennisHistory.noHistory" to "ยังไม่มีการอัปเดตอัตโนมัติ",
        "myTischtennisHistory.ratingsUpdated" to "อัปเดตการให้คะแนนแล้ว",
        "myTischtennisHistory.successful" to "ประสบความสำเร็จ",
        "myTischtennisHistory.title" to "อัปเดตประวัติการให้คะแนน",
        "navigation.approvals" to "การอนุมัติ",
        "navigation.backToHome" to "กลับหน้าแรก",
        "navigation.billing" to "การเรียกเก็บเงิน",
        "navigation.clickTtAccount" to "บัญชี HTTV / click-TT",
        "navigation.clickTtBrowser" to "HTTV / click-TT",
        "navigation.clubSettings" to "การตั้งค่าสโมสร",
        "navigation.clubTournaments" to "การแข่งขันของสโมสร",
        "navigation.competitions" to "การแข่งขัน",
        "navigation.dailyBusiness" to "ธุรกิจประจำวัน",
        "navigation.diary" to "ไดอารี่",
        "navigation.home" to "หน้าแรก",
        "navigation.login" to "เข้าสู่ระบบ",
        "navigation.logout" to "ออกจากระบบ",
        "navigation.logs" to "บันทึกระบบ",
        "navigation.members" to "สมาชิก",
        "navigation.memberTransfer" to "การโอนสมาชิก",
        "navigation.myTischtennisAccount" to "บัญชี myTischtennis",
        "navigation.orders" to "คำสั่งซื้อ",
        "navigation.permissions" to "สิทธิ์",
        "navigation.personalSettings" to "การตั้งค่าส่วนตัว",
        "navigation.predefinedActivities" to "กิจกรรมที่กำหนดไว้ล่วงหน้า",
        "navigation.register" to "ลงทะเบียน",
        "navigation.schedule" to "ตารางเวลา",
        "navigation.settings" to "การตั้งค่า",
        "navigation.statistics" to "สถิติการฝึกซ้อม",
        "navigation.teamManagement" to "การจัดการทีม",
        "navigation.tournamentParticipations" to "การเข้าร่วมการแข่งขัน",
        "navigation.tournaments" to "การแข่งขัน",
        "nuscoreAnalyzer.analysisComplete" to "✅ การวิเคราะห์เสร็จสมบูรณ์: พบทรัพยากร {count}",
        "nuscoreAnalyzer.analyze" to "🔍 การวิเคราะห์นูสคอร์",
        "nuscoreAnalyzer.analyzing" to "กำลังวิเคราะห์...",
        "nuscoreAnalyzer.createLocalCopy" to "สร้าง 🏗️ สำเนาในเครื่อง",
        "nuscoreAnalyzer.creating" to "🏗️การสร้าง...",
        "nuscoreAnalyzer.description" to "วิเคราะห์และดาวน์โหลดทรัพยากร nuscore เพื่อการใช้งานในเครื่อง",
        "nuscoreAnalyzer.downloading" to "⬇️ กำลังดาวน์โหลด...",
        "nuscoreAnalyzer.downloadResources" to "ดาวน์โหลดทรัพยากร",
        "nuscoreAnalyzer.foundResources" to "📋 ทรัพยากรที่พบ:",
        "nuscoreAnalyzer.log" to "บันทึก",
        "nuscoreAnalyzer.pageLoaded" to "✅ โหลดเพจ nuscore แล้ว",
        "nuscoreAnalyzer.startAnalysis" to "🔍 เริ่มต้นการวิเคราะห์ nuscore...",
        "nuscoreAnalyzer.title" to "🔍 nuscore Analyzer",
        "officialTournaments.action" to "การกระทำ",
        "officialTournaments.age" to "อายุ",
        "officialTournaments.ageClassCompetition" to "กลุ่มอายุ/การแข่งขัน",
        "officialTournaments.ageClasses" to "ระดับอายุ",
        "officialTournaments.all" to "ทั้งหมด",
        "officialTournaments.birthDate" to "วันเกิด",
        "officialTournaments.checkBoxToActivate" to "เปิดใช้งานช่องทำเครื่องหมาย",
        "officialTournaments.competition" to "คู่แข่ง",
        "officialTournaments.competitions" to "การแข่งขัน",
        "officialTournaments.competitionTypes" to "ประเภทการแข่งขัน:",
        "officialTournaments.cutoffDate" to "วันที่มีผลบังคับใช้:",
        "officialTournaments.date" to "วันที่",
        "officialTournaments.dateTime" to "วันที่:",
        "officialTournaments.deadlineDate" to "กำหนดเวลาการลงทะเบียน (วันที่):",
        "officialTournaments.deadlineOnline" to "กำหนดเวลาการลงทะเบียน (ออนไลน์):",
        "officialTournaments.deadlines" to "กำหนดเวลาการลงทะเบียน:",
        "officialTournaments.deadlinesByAgeClass" to "กำหนดเวลาการลงทะเบียนสำหรับ AK แต่ละอัน:",
        "officialTournaments.delete" to "ลบ",
        "officialTournaments.editTitle" to "แก้ไขชื่อเรื่อง",
        "officialTournaments.eligible" to "มีสิทธิ์เข้าร่วม",
        "officialTournaments.entryFee" to "เงินสดเริ่มต้น",
        "officialTournaments.entryFees" to "ค่าธรรมเนียมการเข้างาน:",
        "officialTournaments.events" to "เหตุการณ์ที่เกิดขึ้น",
        "officialTournaments.finalRound" to "การแข่งขันรอบชิงชนะเลิศ",
        "officialTournaments.hasPlayed" to "{0} เล่นตาของพวกเขา",
        "officialTournaments.last12Months" to "12 เดือนที่ผ่านมา",
        "officialTournaments.last2Years" to "2 ปีที่ผ่านมา",
        "officialTournaments.last3Months" to "3 เดือนที่ผ่านมา",
        "officialTournaments.last6Months" to "6 เดือนที่ผ่านมา",
        "officialTournaments.markAsParticipated" to "ทำเครื่องหมายว่าเข้าร่วม",
        "officialTournaments.markAsRegistered" to "ทำเครื่องหมายว่าเข้าสู่ระบบแล้ว",
        "officialTournaments.member" to "สมาชิก",
        "officialTournaments.name" to "ชื่อ",
        "officialTournaments.noEvents" to "ยังไม่มีงานกิจกรรม อัปโหลด PDF เพื่อเริ่มต้น",
        "officialTournaments.notInterested" to "ไม่สนใจ",
        "officialTournaments.openTo" to "เปิดเพื่อ",
        "officialTournaments.participants" to "ผู้เข้าร่วม",
        "officialTournaments.participantsPdf" to "PDF ของผู้เข้าร่วม",
        "officialTournaments.participated" to "เข้าร่วม",
        "officialTournaments.participations" to "การเข้าร่วมการแข่งขัน",
        "officialTournaments.pdfForSelectedMembers" to "PDF สำหรับสมาชิกที่ถูกตั้งค่าสถานะ",
        "officialTournaments.placement" to "ตำแหน่ง",
        "officialTournaments.preliminaryRound" to "ขั้นที่ 1:",
        "officialTournaments.previousSeason" to "ฤดูกาลที่แล้ว",
        "officialTournaments.registered" to "เข้าสู่ระบบแล้ว",
        "officialTournaments.resetStatus" to "รีเซ็ตสถานะ",
        "officialTournaments.results" to "ผลลัพธ์",
        "officialTournaments.savedEvents" to "กิจกรรมที่บันทึกไว้",
        "officialTournaments.selectMembers" to "เลือกสมาชิก",
        "officialTournaments.showCompetitions" to "ชมการแข่งขัน",
        "officialTournaments.showEvents" to "ดูเหตุการณ์ที่บันทึกไว้",
        "officialTournaments.showParticipants" to "ดูผู้เข้าร่วม",
        "officialTournaments.showParticipations" to "ดูส่วนแบ่งการแข่งขัน",
        "officialTournaments.showResults" to "ดูผลลัพธ์",
        "officialTournaments.startTime" to "เวลาเริ่มต้น",
        "officialTournaments.startTimes" to "เวลาเริ่มต้น:",
        "officialTournaments.status" to "สถานะ",
        "officialTournaments.timeRange" to "ระยะเวลา:",
        "officialTournaments.title" to "ชื่อ:",
        "officialTournaments.tournament" to "ทัวร์นาเมนต์",
        "officialTournaments.updatePlacementError" to "เกิดข้อผิดพลาดในการอัปเดตตำแหน่ง",
        "officialTournaments.updateStatusError" to "ไม่สามารถอัปเดตสถานะได้",
        "officialTournaments.updateTitleError" to "ไม่สามารถบันทึกสิ่งนี้ได้",
        "officialTournaments.uploadError" to "เกิดข้อผิดพลาดในการอัปโหลด PDF",
        "officialTournaments.uploadPdf" to "อัปโหลด PDF",
        "officialTournaments.venues" to "สถานที่จัดงาน",
        "officialTournaments.wantsToParticipate" to "ต้องการเข้าร่วม",
        "orders.addOrder" to "สร้างคำสั่งซื้อ",
        "orders.budget" to "งบประมาณ",
        "orders.club" to "สโมสร",
        "orders.cost" to "ค่าใช้จ่าย",
        "orders.dateAutoHint" to "ระบบจะกำหนดวันที่ให้อัตโนมัติ และทุกการเปลี่ยนแปลงจะถูกบันทึกพร้อมวันที่",
        "orders.errorLoading" to "ไม่สามารถโหลดคำสั่งซื้อได้",
        "orders.errorSaving" to "ไม่สามารถบันทึกคำสั่งซื้อได้",
        "orders.filterAllClubs" to "ทุกสโมสร",
        "orders.filterAllCompletionStates" to "ทุกองศา",
        "orders.filterAllStatuses" to "ทุกสถานะ",
        "orders.filterHandedOver" to "แจกของแล้ว",
        "orders.filterPaid" to "จ่าย",
        "orders.globalSubtitle" to "สามารถดูและจัดการคำสั่งซื้อทั้งหมดข้ามทุกสโมสรได้ที่นี่",
        "orders.globalTitle" to "คำสั่งซื้อของทุกสโมสร",
        "orders.history" to "ประวัติ",
        "orders.item" to "สินค้า",
        "orders.itemPlaceholder" to "เช่น เสื้อแข่ง ฮู้ดดี้ หรือซองไม้",
        "orders.loading" to "กำลังโหลดคำสั่งซื้อ...",
        "orders.member" to "สมาชิก",
        "orders.memberTitle" to "คำสั่งซื้อ: {name}",
        "orders.noOrdersGlobal" to "ขณะนี้ยังไม่มีคำสั่งซื้อ",
        "orders.noOrdersMember" to "ยังไม่มีคำสั่งซื้อสำหรับสมาชิกคนนี้",
        "orders.open" to "ค้างชำระ",
        "orders.orderDate" to "วันที่สร้าง",
        "orders.paid" to "ชำระแล้ว",
        "orders.paidConfirmed" to "จ่าย",
        "orders.searchPlaceholder" to "ค้นหาตามสโมสร สมาชิก หรือสินค้า",
        "orders.showCompleted" to "โชว์อันที่เสร็จแล้ว",
        "orders.status" to "สถานะ",
        "orders.statusArrived" to "สินค้ามาถึงแล้ว",
        "orders.statusDate" to "การเปลี่ยนแปลงล่าสุด",
        "orders.statusHandedOver" to "ส่งมอบสินค้าแล้ว",
        "orders.statusOrdered" to "สั่งแล้ว",
        "orders.statusRequested" to "ต้องการ",
        "orders.title" to "คำสั่งซื้อ",
        "pdfGenerator.activityTimeBlock" to "กิจกรรม / บล็อคเวลา",
        "pdfGenerator.allGames" to "เมืองทั้งหมด",
        "pdfGenerator.alsoPlayable" to "ยังเล่นได้",
        "pdfGenerator.birthDate" to "วันเกิด",
        "pdfGenerator.clubLabel" to "สโมสร:",
        "pdfGenerator.competition" to "เหตุการณ์",
        "pdfGenerator.competitionName" to "คู่แข่ง",
        "pdfGenerator.date" to "วันที่:",
        "pdfGenerator.diff" to "Diff",
        "pdfGenerator.duration" to "นาทีสู่การล็อคเอ้าท์",
        "pdfGenerator.fee" to "ค่าธรรมเนียม",
        "pdfGenerator.generatedAt" to "สร้างเมื่อ:",
        "pdfGenerator.group" to "กลุ่ม",
        "pdfGenerator.groupLabel" to "กลุ่ม",
        "pdfGenerator.groupMatrices" to "เมทริกซ์กลุ่ม",
        "pdfGenerator.hallShoes" to "รองเท้าใส่ในบ้าน (ต้องไม่ถูพื้น)",
        "pdfGenerator.hints" to "หมายเหตุ:",
        "pdfGenerator.informTrainer" to "เนื่องจากสโมสรต้องการรับช่วงการลงทะเบียน โปรดแจ้งโค้ชอย่างน้อยหนึ่งสัปดาห์ก่อนการแข่งขันเกี่ยวกับการเข้าร่วม",
        "pdfGenerator.leagueLabel" to "ลีก:",
        "pdfGenerator.lineupQttr" to "(Q)TTR",
        "pdfGenerator.member" to "สมาชิก:",
        "pdfGenerator.nameFirstName" to "นามสกุล ชื่อ",
        "pdfGenerator.noActivities" to "ไม่มีการบันทึกกิจกรรมในวันอบรมนี้",
        "pdfGenerator.noWhiteJersey" to "ไม่มีเสื้อขาว",
        "pdfGenerator.officialTournament" to "การแข่งขันอย่างเป็นทางการ",
        "pdfGenerator.oneHourBefore" to "อยู่ในห้องโถงหนึ่งชั่วโมงก่อนเริ่มการแข่งขัน",
        "pdfGenerator.overallRanking" to "อันดับโดยรวม (รอบน็อคเอาท์)",
        "pdfGenerator.periodLabel" to "ลงทะเบียนสำหรับ:",
        "pdfGenerator.phoneList" to "รายชื่อโทรศัพท์ - สมาชิกที่ใช้งานอยู่",
        "pdfGenerator.phoneNumber" to "หมายเลขโทรศัพท์",
        "pdfGenerator.place" to "จัตุรัส",
        "pdfGenerator.placement" to "ตำแหน่ง",
        "pdfGenerator.plannedLeagueLabel" to "ลีกที่วางแผน:",
        "pdfGenerator.player" to "นักสเก็ต",
        "pdfGenerator.player1" to "ผู้เล่น 1",
        "pdfGenerator.player2" to "4 1/2 นาที",
        "pdfGenerator.points" to "คะแนน",
        "pdfGenerator.recommendations" to "ข้อแนะนำ",
        "pdfGenerator.result" to "ผลลัพธ์",
        "pdfGenerator.round" to "กลม",
        "pdfGenerator.seasonLabel" to "ฤดูกาล:",
        "pdfGenerator.sets" to "วลี",
        "pdfGenerator.sportShorts" to "กางเกงกีฬาขาสั้น (หรือกระโปรงกีฬา) ก็ไม่ควรใส่สีขาวเช่นกัน",
        "pdfGenerator.startTime" to "เวลาเริ่มต้น",
        "pdfGenerator.status" to "สถานะ",
        "pdfGenerator.teamAgeGroupLabel" to "กลุ่มอายุของทีม:",
        "pdfGenerator.teamGenderLabel" to "เพศทีม:",
        "pdfGenerator.teamLineupTitle" to "รายชื่อทีม",
        "pdfGenerator.teamNameLabel" to "ทีม:",
        "pdfGenerator.time" to "เวลา:",
        "pdfGenerator.timeBlock" to "บล็อกเวลา",
        "pdfGenerator.tournament" to "ทัวร์นาเมนต์",
        "pdfGenerator.trainersPresent" to "โค้ชพยายามเข้าร่วมทุกทัวร์นาเมนต์",
        "pdfGenerator.trainingPlan" to "แผนการฝึกอบรม",
        "pdfGenerator.venue" to "ที่ตั้ง",
        "pdfGenerator.venues" to "สถานที่จัดงาน",
        "pdfGenerator.waterBottle" to "มีขวดน้ำติดตัวไปด้วย",
        "pendingApprovals.actions" to "การดำเนินการ",
        "pendingApprovals.approve" to "อนุมัติ",
        "pendingApprovals.email" to "Email",
        "pendingApprovals.errorApproving" to "เกิดข้อผิดพลาดในการอนุมัติผู้ใช้",
        "pendingApprovals.errorLoadingRequests" to "ไม่สามารถโหลดรายการที่ค้างอยู่สำหรับ %<%E%s%E%>",
        "pendingApprovals.errorRejecting" to "เกิดข้อผิดพลาดในการปฏิเสธผู้ใช้",
        "pendingApprovals.firstName" to "ชื่อ",
        "pendingApprovals.lastName" to "นามสกุล",
        "pendingApprovals.noPendingRequests" to "ไม่มีคำขอของผู้ใช้ที่รอดำเนินการ",
        "pendingApprovals.noPermission" to "ไม่ได้รับอนุญาต",
        "pendingApprovals.noPermissionDetails" to "เฉพาะผู้ดูแลระบบเท่านั้นที่สามารถแก้ไขคำขอเป็นสมาชิกได้",
        "pendingApprovals.noPermissionMessage" to "คุณไม่ได้รับอนุญาตให้จัดการการแชร์",
        "pendingApprovals.reject" to "อนุญาตให้ออกไป",
        "pendingApprovals.title" to "คำขอของผู้ใช้ที่รอดำเนินการ",
        "permissions.actions" to "การดำเนินการ",
        "permissions.active" to "คล่องแคล่ว",
        "permissions.availableRoles" to "บทบาทที่มีอยู่",
        "permissions.baseRole" to "บทบาทฐาน",
        "permissions.cancel" to "ยกเลิก",
        "permissions.clickToActivate" to "คลิกเพื่อเปิดใช้งาน",
        "permissions.clickToDeactivate" to "คลิกเพื่อปิดการใช้งาน",
        "permissions.clubMembers" to "สมาชิกชมรม",
        "permissions.creator" to "ผู้สร้าง",
        "permissions.customize" to "ปรับแต่ง",
        "permissions.customizeInfo" to "ที่นี่คุณสามารถปรับเปลี่ยนเป็นรายบุคคลได้",
        "permissions.email" to "Email",
        "permissions.errorLoadingData" to "เกิดข้อผิดพลาดในการโหลดข้อมูล",
        "permissions.errorSavingPermissions" to "เกิดข้อผิดพลาดในการบันทึกสิทธิ์",
        "permissions.errorUpdatingRole" to "อัปเดตบทบาทไม่สำเร็จ",
        "permissions.inactive" to "ยกเลิกการเลือก",
        "permissions.loadingMembers" to "ขอเชิญสมาชิก...",
        "permissions.permissionsFor" to "สิทธิ์สำหรับ",
        "permissions.reset" to "เปลี่ยนกลับ",
        "permissions.resetAll" to "รีเซ็ตทั้งหมด",
        "permissions.role" to "บทบาท",
        "permissions.save" to "บันทึก",
        "permissions.status" to "สถานะ",
        "permissions.subtitle" to "จัดการสิทธิ์การเข้าถึงสำหรับสมาชิกคลับ",
        "permissions.title" to "การจัดการข้อมูลรับรอง",
        "predefinedActivities.addImage" to "เพิ่มรูปภาพ",
        "predefinedActivities.cancel" to "ยกเลิก",
        "predefinedActivities.code" to "คำย่อ",
        "predefinedActivities.createDrawing" to "สร้างภาพวาดการออกกำลังกาย",
        "predefinedActivities.deduplicate" to "รวมรายการที่ซ้ำกัน",
        "predefinedActivities.delete" to "ลบ",
        "predefinedActivities.description" to "คำอธิบาย",
        "predefinedActivities.duration" to "ระยะเวลา นาที",
        "predefinedActivities.durationText" to "ระยะเวลา (ข้อความ)",
        "predefinedActivities.durationTextPlaceholder" to "เช่น 2x7",
        "predefinedActivities.editActivity" to "แก้ไขกิจกรรม",
        "predefinedActivities.editDrawing" to "แก้ไขภาพวาดการออกกำลังกาย",
        "predefinedActivities.excludeFromStats" to "แยกออกจากสถิติ",
        "predefinedActivities.filterAll" to "ทั้งหมด",
        "predefinedActivities.filterCustom" to "กำหนดเอง",
        "predefinedActivities.filterStandard" to "กิจกรรมที่ได้มาตรฐาน",
        "predefinedActivities.imageHelp" to "คุณสามารถป้อนลิงค์ไปยังรูปภาพหรืออัพโหลดรูปภาพ:",
        "predefinedActivities.imageLink" to "ลิงก์รูปภาพ (ไม่บังคับ)",
        "predefinedActivities.imageLinkPlaceholder" to "เช่น https://example.com/bild.jpg หรือ /api/predefed-activities/:id/image/:imageId",
        "predefinedActivities.merge" to "ผสาน",
        "predefinedActivities.min" to "min",
        "predefinedActivities.name" to "ชื่อ",
        "predefinedActivities.new" to "ใหม่",
        "predefinedActivities.newActivity" to "กิจกรรมใหม่",
        "predefinedActivities.orUploadImage" to "หรืออัพโหลดภาพ:",
        "predefinedActivities.reload" to "โหลดซ้ำ",
        "predefinedActivities.searchPlaceholder" to "ค้นหาคำย่อ (เช่น 'as vh us' หรือ 'vh as us')...",
        "predefinedActivities.selectSource" to "เลือกแหล่งที่มา",
        "predefinedActivities.selectTarget" to "เลือกจุดหมายปลายทาง",
        "predefinedActivities.title" to "กิจกรรมที่กำหนดไว้ล่วงหน้า",
        "predefinedActivities.upload" to "อัปโหลด",
        "predefinedActivities.uploadAfterSave" to "อัปโหลดหลังจากบันทึก",
        "predefinedActivities.uploadedImages" to "วิดีโอที่อัปโหลด:",
        "predefinedActivities.uploadNote" to "หมายเหตุ: รูปภาพจะไม่ถูกอัพโหลดจนกว่ากิจกรรมจะถูกบันทึก",
        "privacy.clubData" to "ข้อมูลสโมสร/กิจกรรม",
        "privacy.consent" to "การดำเนินการตามความยินยอม",
        "privacy.cookies" to "Cookies/Local Storage",
        "privacy.dataCategories" to "ประเภทของข้อมูลส่วนบุคคล",
        "privacy.logData" to "ไฟล์บันทึก",
        "privacy.memberData" to "รายละเอียดสมาชิก",
        "privacy.myTischtennisData" to "ข้อมูล MyTischtennis",
        "privacy.purposes" to "วัตถุประสงค์และพื้นฐานทางกฎหมายของการประมวลผล",
        "privacy.recipients" to "ผู้รับ",
        "privacy.registrationData" to "ข้อมูลการลงทะเบียน/โปรไฟล์",
        "privacy.responsible" to "ผู้ควบคุมข้อมูล",
        "privacy.title" to "นโยบายความเป็นส่วนตัว",
        "privacy.tournamentData" to "ข้อมูลการแข่งขัน",
        "privacy.trainingData" to "ข้อมูลการฝึกอบรม",
        "privacy.usage" to "การใช้ไดอารี่การฝึกอบรม",
        "privacy.usageData" to "ข้อมูลการใช้งาน",
        "privacy.website" to "การจัดทำเว็บไซต์",
        "quickAddMember.birthDate" to "วันเดือนปีเกิด (ไม่บังคับ)",
        "quickAddMember.cancel" to "ยกเลิก",
        "quickAddMember.createAndAdd" to "สร้างและเพิ่มใหม่",
        "quickAddMember.firstName" to "ชื่อ",
        "quickAddMember.gender" to "เพศ",
        "quickAddMember.lastName" to "นามสกุล (ไม่บังคับ)",
        "quickAddMember.pleaseSelect" to "กรุณาเลือก",
        "quickAddMember.title" to "เพิ่มสมาชิกใหม่",
        "schedule.activeSelection" to "การเลือกที่ใช้งานอยู่",
        "schedule.addressLabel" to "ที่อยู่",
        "schedule.adultSchedule" to "ตารางเรียนผู้ใหญ่",
        "schedule.ageClass" to "กลุ่มอายุ",
        "schedule.allLeagueMatches" to "การแข่งขันทั้งหมด",
        "schedule.balls" to "ลูกบอล",
        "schedule.cancel" to "ยกเลิก",
        "schedule.cityLabel" to "รหัสไปรษณีย์/เมือง",
        "schedule.code" to "Code",
        "schedule.completedShort" to "สมบูรณ์",
        "schedule.copyCode" to "คัดลอกรหัส",
        "schedule.copyGuestPin" to "คัดลอก PIN ออกไป",
        "schedule.copyHomePin" to "คัดลอก PIN ที่บ้าน",
        "schedule.date" to "วันที่",
        "schedule.downloadPDF" to "Download PDF",
        "schedule.errorCopying" to "เกิดข้อผิดพลาดขณะคัดลอก",
        "schedule.errorImportingCSV" to "ไม่สามารถนำเข้าไฟล์ CSV",
        "schedule.errorLoadingAdultSchedule" to "โหลดกำหนดการสำหรับผู้ใหญ่ไม่สำเร็จ",
        "schedule.errorLoadingGallery" to "ไม่สามารถโหลดแกลเลอรีได้",
        "schedule.errorLoadingMatches" to "โหลดการแข่งขันไม่สำเร็จ",
        "schedule.errorLoadingMembers" to "โหลดรายชื่อสมาชิกไม่สำเร็จ",
        "schedule.errorLoadingOverallSchedule" to "โหลดกำหนดการโดยรวมไม่สำเร็จ",
        "schedule.errorLoadingTable" to "ไม่สามารถโหลดข้อมูลตารางลีกจาก myTischtennis",
        "schedule.errorLoadingTeams" to "โหลดทีมไม่สำเร็จ",
        "schedule.errorSavingPlayerSelection" to "ไม่สามารถบันทึกการเลือกผู้เล่นได้",
        "schedule.fetchDataFailed" to "ไม่สามารถดึงข้อมูลทีมได้",
        "schedule.fetchingTeamData" to "กำลังดึงข้อมูล...",
        "schedule.fetchStartFailed" to "ไม่สามารถเริ่มการดึงข้อมูลได้",
        "schedule.fetchTeamData" to "ดึงข้อมูลกำหนดการและผลลัพธ์",
        "schedule.fetchTimedOut" to "หมดเวลาขณะดึงข้อมูล",
        "schedule.gallery" to "แกลเลอรี่สมาชิก",
        "schedule.galleryLoading" to "กำลังโหลดแกลเลอรี...",
        "schedule.galleryTitle" to "แกลเลอรีสมาชิก - คลิกที่ภาพเพื่อทำเครื่องหมายว่าพร้อม",
        "schedule.gamesFor" to "ตรงกันสำหรับ",
        "schedule.guestPin" to "PIN ออกไป",
        "schedule.guestTeam" to "ทีมเยือน",
        "schedule.homePin" to "รหัสประจำตัวที่บ้าน",
        "schedule.homeTeam" to "ทีมเจ้าบ้าน",
        "schedule.imageSize" to "ขนาดภาพ",
        "schedule.importSchedule" to "กำหนดการนำเข้า",
        "schedule.leagueTable" to "ตารางลีก",
        "schedule.loadingMembers" to "กำลังโหลดสมาชิก...",
        "schedule.locationDialogTitle" to "ห้องเล่นเกม",
        "schedule.locationInfo" to "ที่ตั้ง",
        "schedule.locationName" to "ห้องเล่นเกม",
        "schedule.matches" to "ไม้ขีด",
        "schedule.matchLabel" to "เกม",
        "schedule.matchOverviewDescription" to "ควบคุมว่าแมตช์ใดจากลีกที่เลือกในปัจจุบันจะแสดงในกำหนดการ",
        "schedule.matchOverviewTitle" to "ภาพรวมการแข่งขัน",
        "schedule.nextMatch" to "นัดต่อไป",
        "schedule.noActiveMembers" to "ไม่พบสมาชิกที่ใช้งานอยู่",
        "schedule.noGames" to "ไม่มีการแข่งขัน",
        "schedule.noLeagueForTeam" to "ไม่มีการกำหนดลีกให้กับทีมนี้ กรุณากำหนดลีกก่อน",
        "schedule.noMatchesForPDF" to "ไม่พบรายการที่ตรงกันเพื่อสร้าง PDF",
        "schedule.noMatchingTeams" to "ไม่มีทีมที่ตรงกับการค้นหาปัจจุบัน",
        "schedule.noMembersWithImages" to "ไม่พบสมาชิกที่มีรูปภาพ",
        "schedule.noSelectionMessage" to "เลือกตารางโดยรวม ตารางผู้ใหญ่ หรือทีมจากด้านซ้าย",
        "schedule.noSelectionTitle" to "ยังไม่มีการคัดเลือกที่ใช้งานอยู่",
        "schedule.noTableData" to "ไม่มีข้อมูลตาราง",
        "schedule.noTeamsFound" to "ไม่พบทีมสำหรับฤดูกาลนี้",
        "schedule.openMatchReport" to "เปิดรายงานการแข่งขัน",
        "schedule.otherTeamMatches" to "ทีมอื่นๆ",
        "schedule.overallSchedule" to "กำหนดการโดยรวม",
        "schedule.ownTeamMatches" to "ทีมงานของตัวเอง",
        "schedule.pendingShort" to "เปิด",
        "schedule.planned" to "วางแผนแล้ว",
        "schedule.played" to "เล่นแล้ว",
        "schedule.player" to "ผู้เล่น",
        "schedule.playerSelection" to "การเลือกผู้เล่น",
        "schedule.playerSelectionSaved" to "บันทึกการเลือกผู้เล่นแล้ว",
        "schedule.pleaseSelectGame" to "โปรดเลือกการแข่งขันก่อน",
        "schedule.points" to "คะแนน",
        "schedule.position" to "ตำแหน่ง",
        "schedule.ready" to "พร้อม",
        "schedule.refreshTable" to "รีเฟรชตาราง",
        "schedule.result" to "ผลลัพธ์",
        "schedule.save" to "บันทึก",
        "schedule.scheduleImportSuccess" to "นำเข้ากำหนดการสำเร็จแล้ว",
        "schedule.schedulePDF" to "กำหนดการ.pdf",
        "schedule.scheduleTab" to "กำหนดการ",
        "schedule.searchTeams" to "ค้นหาทีมหรือลีก",
        "schedule.selection" to "การคัดเลือก",
        "schedule.selectOtherTeam" to "เลือกทีมอื่น",
        "schedule.selectSpecificLeague" to "โปรดเลือกลีกที่ต้องการเพื่อโหลดตาราง",
        "schedule.sets" to "ชุด",
        "schedule.showLocation" to "ดูสถานที่เล่นเกม",
        "schedule.subtitle" to "เลือกทีม ตรวจสอบการแข่งขัน และเก็บตารางลีกไว้ในมุมมอง",
        "schedule.tableDataLoaded" to "โหลดข้อมูลตารางลีกจาก myTischtennis สำเร็จแล้ว",
        "schedule.tableLoading" to "กำลังโหลดตาราง...",
        "schedule.tableTab" to "โต๊ะ",
        "schedule.team" to "Team",
        "schedule.teamDataFetched" to "อัปเดตข้อมูลทีมเรียบร้อยแล้ว",
        "schedule.teamDataFetchedDetails" to "ทีม: {team}\nบันทึกที่ประมวลผลแล้ว: {count}",
        "schedule.teams" to "Teams",
        "schedule.time" to "เวลา",
        "schedule.title" to "กำหนดการ",
        "schedule.vs" to "vs",
        "schedule.workspaceScheduleDescription" to "{matches} แมตช์ {completed} เสร็จสิ้น และ {pending} เปิด",
        "schedule.workspaceTableDescription" to "{count} กำลังโหลดแถวของตาราง",
        "seasonSelector.addSeason" to "เพิ่มซีซั่นใหม่",
        "seasonSelector.alreadyExists" to "ฤดูกาลนี้มีอยู่แล้ว!",
        "seasonSelector.cancel" to "ยกเลิก",
        "seasonSelector.create" to "สร้าง",
        "seasonSelector.errorCreating" to "เกิดข้อผิดพลาดในการสร้างซีซัน",
        "seasonSelector.errorLoading" to "เกิดข้อผิดพลาดในการโหลดซีซัน",
        "seasonSelector.hint" to "สังเกต",
        "seasonSelector.label" to "ฤดูกาล:",
        "seasonSelector.loading" to "กำลังโหลด...",
        "seasonSelector.newSeason" to "สร้างซีซั่นใหม่",
        "seasonSelector.placeholder" to "เช่น 2023/2024",
        "seasonSelector.selectSeason" to "เลือกฤดูกาล",
        "settings.language" to "ภาษา",
        "settings.languageChanged" to "เปลี่ยนภาษาสำเร็จ",
        "settings.languageDescription" to "เลือกภาษาที่คุณต้องการสำหรับแอปพลิเคชัน",
        "settings.personalSettings" to "การตั้งค่าส่วนตัว",
        "settings.selectLanguage" to "เลือกภาษา",
        "settings.title" to "การตั้งค่า",
        "tagHistory.noHistory" to "ไม่มีประวัติแท็ก",
        "tagHistory.selectTags" to "เลือกแท็ก",
        "tagHistory.title" to "ป้ายกำกับ: ไทป์แพด",
        "teamManagement.activeTeam" to "ทีมที่ใช้งานอยู่",
        "teamManagement.addPlanningTeam" to "เพิ่มทีมวางแผน",
        "teamManagement.allMembersAssigned" to "สมาชิกทุกคนได้รับมอบหมายในปัจจุบัน",
        "teamManagement.assignLeagueBeforeDocuments" to "โปรดกำหนดลีกให้กับทีมก่อนเพื่อให้สามารถประมวลผลเอกสารได้",
        "teamManagement.assignLeagueBeforeParsing" to "โปรดกำหนดลีกให้กับทีมก่อนเพื่อแยกวิเคราะห์ไฟล์ PDF",
        "teamManagement.assignMemberToTeam" to "เพิ่มเข้าทีม",
        "teamManagement.association" to "สมาคม",
        "teamManagement.asyncJobStartFailed" to "ไม่สามารถเริ่มงาน async ได้",
        "teamManagement.autoFetchEnabled" to "เปิดใช้งานการดึงข้อมูลอัตโนมัติแล้ว",
        "teamManagement.automaticJobs" to "งานอัตโนมัติ",
        "teamManagement.autoSaved" to "บันทึกอัตโนมัติ",
        "teamManagement.autoSaveError" to "การบันทึกอัตโนมัติล้มเหลว",
        "teamManagement.availableLineupMembers" to "ผู้เล่นที่พร้อมใช้งาน",
        "teamManagement.basicSettings" to "การตั้งค่าพื้นฐาน",
        "teamManagement.basicSettingsIntro" to "ตรวจสอบและปรับเปลี่ยนชื่อทีมและลีกในรูปแบบที่สงบยิ่งขึ้น",
        "teamManagement.change" to "เปลี่ยน",
        "teamManagement.clearFields" to "ล้างฟิลด์",
        "teamManagement.codeList" to "รายการรหัส",
        "teamManagement.configurationStatus" to "สถานะการกำหนดค่า",
        "teamManagement.configureLeagueDetails" to "สมาคม: {association}\nฤดูกาล: {season}\nลีก: {league}\nรหัสกลุ่ม: {groupId}\n\nคุณต้องการกำหนดค่าลีกนี้ในฐานข้อมูลหรือไม่? ซึ่งเปิดใช้งานการดึงข้อมูลตารางอัตโนมัติ",
        "teamManagement.configureLeagueTitle" to "กำหนดค่าลีก?",
        "teamManagement.createAndEdit" to "สร้างและแก้ไข",
        "teamManagement.created" to "สร้าง",
        "teamManagement.createNewTeam" to "สร้างทีมใหม่",
        "teamManagement.dataFetchFailed" to "ไม่สามารถดึงข้อมูลได้",
        "teamManagement.delete" to "ลบ",
        "teamManagement.deleteTeamConfirm" to "คุณต้องการลบทีมคลับ \"{name}\" จริงหรือ?",
        "teamManagement.deleteTeamTitle" to "ลบทีมสโมสร",
        "teamManagement.documentAvailable" to "มีอยู่",
        "teamManagement.documentMissing" to "หายไป",
        "teamManagement.documentNotFound" to "ไม่พบเอกสารที่เลือก",
        "teamManagement.documentParsedSummary" to "{label} อัปโหลดและแยกวิเคราะห์เรียบร้อยแล้ว\n\nพบการแข่งขัน: {matchesFound}\nสร้างการแข่งขันใหม่: {created}\nอัปเดตการแข่งขัน: {updated}",
        "teamManagement.documents" to "เอกสาร",
        "teamManagement.documentsIntro" to "อัปโหลด ตรวจสอบ และแยกวิเคราะห์รายการรหัสและรายการ PIN เมื่อจำเป็น",
        "teamManagement.documentUploaded" to "{label} อัปโหลด \"{fileName}\" สำเร็จแล้ว",
        "teamManagement.edit" to "แก้ไข",
        "teamManagement.editTeam" to "แก้ไขทีม",
        "teamManagement.eligibility" to "สิทธิ์ลงเล่น",
        "teamManagement.eligibilityAdultRelease" to "อนุมัติให้เล่นผู้ใหญ่",
        "teamManagement.eligibilityAdultReleaseAndReserve" to "อนุมัติ + ตัวสำรองผู้ใหญ่",
        "teamManagement.eligibilityAdultReserve" to "ตัวสำรองผู้ใหญ่",
        "teamManagement.eligibilityRegular" to "ปกติ",
        "teamManagement.enterUrlForAutoConfig" to "ป้อน myTischtennis URL สำหรับการกำหนดค่าอัตโนมัติ",
        "teamManagement.error" to "ข้อผิดพลาด",
        "teamManagement.errorConfiguringLeague" to "ไม่สามารถกำหนดค่าลีกได้",
        "teamManagement.errorConfiguringTeam" to "ไม่สามารถกำหนดค่าทีมได้",
        "teamManagement.errorDeletingTeam" to "ลบทีมสโมสรไม่สำเร็จ",
        "teamManagement.errorLoadingPdf" to "โหลด PDF ไม่สำเร็จ",
        "teamManagement.errorLoadingStats" to "ไม่สามารถโหลดสถิติได้",
        "teamManagement.errorParsingPdf" to "ไม่สามารถแยกวิเคราะห์ไฟล์ PDF",
        "teamManagement.errorParsingUrl" to "ไม่สามารถแยกวิเคราะห์ URL กรุณาตรวจสอบรูปแบบ",
        "teamManagement.errorsCount" to "ข้อผิดพลาด: {count}",
        "teamManagement.errorUploadingDocument" to "ไม่สามารถอัปโหลดและแยกวิเคราะห์ไฟล์",
        "teamManagement.exportLineupPdf" to "ส่งออกรายชื่อเป็น PDF",
        "teamManagement.fetched" to "ดึงมา",
        "teamManagement.fetchTimedOut" to "หมดเวลาขณะดึงข้อมูล (งาน async ใช้เวลานานเกินไป)",
        "teamManagement.fetchTimeoutShort" to "หมดเวลาขณะดึงข้อมูล",
        "teamManagement.fileTooLarge" to "{label} ต้องไม่เกิน 10 MB",
        "teamManagement.fileTooLargeTitle" to "ไฟล์มีขนาดใหญ่เกินไป",
        "teamManagement.filterAll" to "ทั้งหมด",
        "teamManagement.filterConfigured" to "กำหนดค่าแล้ว",
        "teamManagement.filterNeedsAttention" to "จำเป็นต้องตรวจสอบ",
        "teamManagement.filterNoLeague" to "ไม่มีลีก",
        "teamManagement.firstHalf" to "ครึ่งแรก",
        "teamManagement.firstHalfFull" to "ครึ่งแรก (กรกฎาคม - ธันวาคม)",
        "teamManagement.fullyConfigured" to "กำหนดค่าเรียบร้อยแล้ว",
        "teamManagement.groupId" to "รหัสกลุ่ม",
        "teamManagement.groupName" to "ชื่อกลุ่ม",
        "teamManagement.invalidFileExtension" to "{label} ต้องมีส่วนขยายอย่างใดอย่างหนึ่งต่อไปนี้: {extensions}",
        "teamManagement.invalidFileTypeTitle" to "ประเภทไฟล์ไม่ถูกต้อง",
        "teamManagement.invalidMimeType" to "{label} มีประเภท MIME ที่ไม่คาดคิด: {type}",
        "teamManagement.lastRun" to "วิ่งครั้งสุดท้าย",
        "teamManagement.lastUpdated" to "อัปเดตล่าสุด",
        "teamManagement.latestUpload" to "อัปโหลดล่าสุด: {date}",
        "teamManagement.league" to "ลีก",
        "teamManagement.leagueConfiguredDetails" to "ลีก: {league}\nฤดูกาล: {season}\nสมาคม: {association}\nรหัสกลุ่ม: {groupId}\n\nข้อมูลตารางสามารถดึงข้อมูลได้โดยอัตโนมัติแล้ว",
        "teamManagement.leagueConfiguredSuccess" to "กำหนดค่าลีกเรียบร้อยแล้ว ข้อมูลตารางสามารถดึงข้อมูลได้โดยอัตโนมัติแล้ว",
        "teamManagement.leagueFieldRequired" to "โปรดเลือกระดับลีกและบันทึก",
        "teamManagement.lineupEmpty" to "ยังไม่มีการกำหนดผู้เล่นให้ทีมนี้",
        "teamManagement.lineupPdfEmpty" to "ไม่มีผู้เล่นในรายชื่อ – ไม่สามารถสร้าง PDF ได้",
        "teamManagement.lineupPdfFilePrefix" to "รายชื่อทีม",
        "teamManagement.lineupProposal" to "จัดทีมตาม QTTR",
        "teamManagement.lineupSaved" to "บันทึกรายชื่อทีมแล้ว",
        "teamManagement.lineupSaveError" to "ไม่สามารถบันทึกรายชื่อทีมได้",
        "teamManagement.lineupUnsavedChanges" to "มีการเปลี่ยนแปลงที่ยังไม่ได้บันทึกในรายชื่อทีม",
        "teamManagement.lineupValidationTooLargeGap" to "{higher} มีคะแนน QTTR มากกว่า {lower} เกิน 30 คะแนน กรุณาแก้ไขลำดับนี้",
        "teamManagement.loadingStats" to "กำลังโหลดสถิติ...",
        "teamManagement.manualFetch" to "ดึงข้อมูล",
        "teamManagement.markAsInterested" to "ทำเครื่องหมายว่าสนใจ",
        "teamManagement.matchesSummary" to "พบการแข่งขัน: {matchesFound}\nสร้างการแข่งขันใหม่: {created}\nอัปเดตการแข่งขัน: {updated}",
        "teamManagement.matchResults" to "ผลการแข่งขัน",
        "teamManagement.missingConfigSummary" to "รายการที่ขาด:",
        "teamManagement.missingItems" to "ไม่มี: {items}",
        "teamManagement.missingLeagueForTeam" to "ไม่มีลีกให้กับทีมที่เลือก",
        "teamManagement.moreErrors" to "... และ {count} เพิ่มเติม",
        "teamManagement.myTischtennis" to "myTischtennis",
        "teamManagement.myTischtennisIntro" to "วาง URL ตรวจสอบการกำหนดค่า และดึงข้อมูลด้วยตนเองเมื่อจำเป็น",
        "teamManagement.mytischtennisLoginRequired" to "จำเป็นต้องเข้าสู่ระบบ myTischtennis",
        "teamManagement.myTischtennisUrlPlaceholder" to "myTischtennis URL...",
        "teamManagement.myTischtennisUrlRequired" to "วางและแยกวิเคราะห์ URL ของ MyTischtennis เพื่อเชื่อมโยง ID ทีมและข้อมูลลีก",
        "teamManagement.never" to "ไม่เคย",
        "teamManagement.newTeam" to "ทีมใหม่",
        "teamManagement.noAssignment" to "ไม่มีการมอบหมายงาน",
        "teamManagement.noAutomaticUpdate" to "ยังไม่มีการอัปเดตอัตโนมัติ",
        "teamManagement.noDocumentUploadYet" to "ยังไม่มีการอัพโหลดเอกสาร",
        "teamManagement.noIssues" to "ไม่มีปัญหาการกำหนดค่าแบบเปิด",
        "teamManagement.noLeague" to "ไม่มีลีก",
        "teamManagement.noMatchesFoundDetails" to "หมายเหตุ: ไม่พบการแข่งขัน\nบรรทัดในเอกสาร: {lines}",
        "teamManagement.noMatchesFoundTitle" to "ไม่พบรายการที่ตรงกัน",
        "teamManagement.noMatchingTeams" to "ไม่มีทีมที่ตรงกับการค้นหาหรือตัวกรองปัจจุบัน",
        "teamManagement.noMembersInPool" to "ไม่พบสมาชิกที่ตรงกัน",
        "teamManagement.noPlannedLeague" to "ไม่มีลีกกำหนด",
        "teamManagement.noPlayerStats" to "ไม่มีการบันทึกการปรากฏตัว",
        "teamManagement.notConfigured" to "ไม่ได้กำหนดค่า",
        "teamManagement.notCreated" to "ไม่ได้สร้าง",
        "teamManagement.noTeamsYet" to "ยังไม่มีทีม. สร้างทีมแรกของคุณ",
        "teamManagement.openDocument" to "เปิด",
        "teamManagement.openInWorkspace" to "เปิดเพื่อแก้ไข",
        "teamManagement.parseDocument" to "แยกวิเคราะห์อีกครั้ง",
        "teamManagement.parseUrlAction" to "ตรวจสอบ URL",
        "teamManagement.partiallyConfigured" to "กำหนดค่าไว้บางส่วน",
        "teamManagement.pdfFileNotFound" to "ไม่พบไฟล์ PDF",
        "teamManagement.pinList" to "รายการพิน",
        "teamManagement.plannedLeague" to "ลีกที่วางแผน",
        "teamManagement.plannedLeagueHint" to "ไม่บังคับ แยกจากลีกที่ลงทะเบียนแล้ว (MyTischtennis)",
        "teamManagement.plannedLeaguePlaceholder" to "เช่น ลีกในเขต หลังการลงทะเบียนครั้งถัดไป …",
        "teamManagement.planningSubtitle" to "กระจายสมาชิกไปยังทีมที่กำหนดเวลาไว้ กำหนดลำดับ และดูการมอบหมายงานที่เปิดอยู่",
        "teamManagement.planningTitle" to "การวางแผนทีม",
        "teamManagement.player" to "ผู้เล่น",
        "teamManagement.playersPoolSubtitle" to "สมาชิกที่มีความสนใจในการเล่นเกมทุกคน",
        "teamManagement.playerStats" to "การปรากฏตัว",
        "teamManagement.playerStatsIntro" to "ภาพรวมโดยย่อของการปรากฏตัวของทีมนี้ในฤดูกาลปัจจุบัน",
        "teamManagement.playersWantToPlay" to "เราอยากเล่น",
        "teamManagement.qttr" to "(ถาม) คะแนน TTR",
        "teamManagement.ratingUpdates" to "การอัพเดตเรตติ้ง",
        "teamManagement.refreshStats" to "รีเฟรช",
        "teamManagement.reuploadFile" to "โปรดอัปโหลดไฟล์อีกครั้งและลองอีกครั้ง",
        "teamManagement.searchMembers" to "ค้นหาสมาชิก",
        "teamManagement.searchTeams" to "ทีมค้นหา",
        "teamManagement.season" to "ฤดูกาล",
        "teamManagement.seasonFull" to "เต็มฤดูกาล (ตั้งแต่วันที่ 1 กรกฎาคม)",
        "teamManagement.seasonUnknown" to "ไม่ทราบ",
        "teamManagement.secondHalf" to "ครึ่งหลัง",
        "teamManagement.secondHalfFull" to "ครึ่งหลัง (ตั้งแต่ 1 มกราคม)",
        "teamManagement.selectedLineup" to "ผู้เล่นที่ขึ้นทะเบียน",
        "teamManagement.selectMember" to "เลือกสมาชิก",
        "teamManagement.selectTeam" to "เลือกทีม",
        "teamManagement.selectTeamFirst" to "กรุณาเลือกทีมก่อน",
        "teamManagement.selectTeamForConfiguration" to "หากต้องการเปิดใช้งานการกำหนดค่า myTischtennis คุณต้องเลือกทีมจากรายการก่อน",
        "teamManagement.selectTeamTitle" to "เลือกทีม",
        "teamManagement.showCodeList" to "แสดงรายการรหัส",
        "teamManagement.showPinList" to "แสดงรายการ PIN",
        "teamManagement.sortFirstLast" to "การเรียงลำดับ: ชื่อ นามสกุล",
        "teamManagement.sortLastFirst" to "การเรียงลำดับ: นามสกุล ชื่อ",
        "teamManagement.status" to "สถานะ",
        "teamManagement.subtitle" to "เลือกทีม ตรวจสอบการกำหนดค่า และรักษาข้อมูลลีกไว้ในที่เดียว",
        "teamManagement.successful" to "ประสบความสำเร็จ",
        "teamManagement.tableUpdateLabel" to "อัพเดตตาราง:",
        "teamManagement.tableUrlDetected" to "ตรวจพบ URL ของตาราง",
        "teamManagement.team" to "Team",
        "teamManagement.teamAgeGroup" to "กลุ่มอายุ",
        "teamManagement.teamConfiguredDetails" to "ลีก: {league}\nฤดูกาล: {season}\nการเรียกข้อมูลอัตโนมัติเปิดใช้งานอยู่ในขณะนี้",
        "teamManagement.teamConfiguredSuccess" to "กำหนดค่าทีมสำเร็จแล้ว การเรียกข้อมูลอัตโนมัติเปิดใช้งานอยู่ในขณะนี้",
        "teamManagement.teamDataFetched" to "ดึงข้อมูลทีมสำเร็จ",
        "teamManagement.teamDataFetchedDetails" to "ทีม: {team}\nบันทึกที่ดึงมา: {count}",
        "teamManagement.teamGender" to "เพศ",
        "teamManagement.teamGenderFemale" to "หญิง",
        "teamManagement.teamGenderOpen" to "เปิด",
        "teamManagement.teamHasNoLeague" to "ทีมนี้ไม่ได้รับมอบหมายให้อยู่ในลีก",
        "teamManagement.teamId" to "รหัสทีม",
        "teamManagement.teamName" to "ชื่อทีม",
        "teamManagement.teamNamePlaceholder" to "เช่น ผู้ชาย 1 ผู้หญิง 2",
        "teamManagement.teams" to "Teams",
        "teamManagement.title" to "การบริหารทีม",
        "teamManagement.unassignedMembers" to "ยังไม่ได้มอบหมาย",
        "teamManagement.unassignedMembersSubtitle" to "สมาชิกที่ไม่ได้รับมอบหมายทีม",
        "teamManagement.unknown" to "ไม่ทราบ",
        "teamManagement.unknownTeam" to "ทีมที่ไม่รู้จัก",
        "teamManagement.updated" to "ปรับปรุงแล้ว",
        "teamManagement.uploadNewVersion" to "อัปโหลดเวอร์ชันใหม่",
        "tournament.apply" to "ใช้การเปลี่ยนแปลง",
        "tournaments.action" to "การกระทำ",
        "tournaments.add" to "เพิ่ม",
        "tournaments.addClass" to "เพิ่มคลาส",
        "tournaments.addClubMember" to "เพิ่มสมาชิกคลับ",
        "tournaments.addExternalParticipant" to "เพิ่มผู้เข้าร่วมภายนอก",
        "tournaments.addPairing" to "เพิ่มการจับคู่",
        "tournaments.addPoolRule" to "เพิ่มกฎกลุ่ม",
        "tournaments.address" to "ที่อยู่",
        "tournaments.adjustTournamentSearch" to "ปรับคำค้นหาหรือสร้างทัวร์นาเมนต์ใหม่",
        "tournaments.advancersPerGroup" to "โปรโมเตอร์ต่อกลุ่ม",
        "tournaments.allClasses" to "ทุกชั้นเรียน",
        "tournaments.allDataComplete" to "ข้อมูลผู้เข้าร่วมทั้งหมดครบถ้วน",
        "tournaments.allDataCompleteTop3" to "ข้อมูล 3 อันดับแรกครบถ้วน",
        "tournaments.apply" to "ใช้การเปลี่ยนแปลง",
        "tournaments.assignmentReviewTitle" to "ผู้เข้าร่วม {count} ต้องการตัวเลือก:",
        "tournaments.atLeastOnePoolRule" to "กรุณาเพิ่มกฎกลุ่มอย่างน้อยหนึ่งกฎสำหรับ {label} (เช่น อันดับ 1,2)",
        "tournaments.autoAssignableParticipantsHint" to "{count} สามารถกำหนดได้โดยอัตโนมัติ",
        "tournaments.autoAssignEligible" to "มอบหมายโดยอัตโนมัติ",
        "tournaments.autoAssignEligibleDone" to "ผู้เข้าร่วม {count} ได้รับมอบหมายโดยอัตโนมัติ",
        "tournaments.autoAssignEligibleNone" to "ขณะนี้ไม่มีผู้เข้าร่วมที่ได้รับมอบหมายชั้นเรียนอัตโนมัติเพียงรายการเดียว",
        "tournaments.autoAssignEligiblePartial" to "ผู้เข้าร่วม {successCount} ได้รับการมอบหมายโดยอัตโนมัติ {errorCount} ล้มเหลว",
        "tournaments.birthdate" to "วันเกิด",
        "tournaments.cancel" to "ยกเลิก",
        "tournaments.class" to "ระดับ",
        "tournaments.classes" to "ชั้นเรียน",
        "tournaments.className" to "ชื่อชั้นเรียน",
        "tournaments.cleanupOrphanedMatches" to "ทำความสะอาดเกมกำพร้า",
        "tournaments.club" to "สมาคม",
        "tournaments.clubMember" to "(สมาชิกชมรม)",
        "tournaments.conflictSuggestionLabel" to "คำแนะนำ:",
        "tournaments.correctMatch" to "แก้ไข",
        "tournaments.create" to "สร้าง",
        "tournaments.createFinalFromIntermediate" to "สร้างรอบชิงจากรอบกลาง",
        "tournaments.createFinalFromPreliminary" to "สร้างรอบชิงจากรอบคัดเลือก",
        "tournaments.createGroupMatches" to "สร้างการแข่งขันแบบกลุ่ม",
        "tournaments.createGroups" to "ใครสามารถสร้างกลุ่มได้",
        "tournaments.createIntermediateFromPreliminary" to "สร้างรอบกลางจากรอบคัดเลือก",
        "tournaments.createMatches" to "ตั้งค่าการแข่งขัน",
        "tournaments.createSuggestedPairings" to "สร้างการจับคู่",
        "tournaments.currentClass" to "คลาสแอคทีฟ",
        "tournaments.dataNotRecorded" to "ยังไม่ได้บันทึก",
        "tournaments.date" to "วันที่",
        "tournaments.delete" to "ลบ",
        "tournaments.deleteClassConfirm" to "คุณต้องการลบคลาส \"{name}\" จริงหรือไม่?",
        "tournaments.deleteClassParticipantsDetached" to "ผู้เข้าร่วมทั้งหมดจะถูกเอาออกจากคลาสนี้",
        "tournaments.deleteClassTitle" to "ลบคลาส",
        "tournaments.deleteExistingPairingsConfirm" to "คู่ที่มีอยู่จะถูกลบ ดำเนินการต่อหรือไม่?",
        "tournaments.deleteKORound" to "น็อคเอาท์",
        "tournaments.diff" to "Diff",
        "tournaments.distributeTables" to "จัดสรรโต๊ะว่าง",
        "tournaments.distributeTablesResult" to "การจัดสรรโต๊ะ",
        "tournaments.doubles" to "สองเท่า",
        "tournaments.doublesPairingHint" to "ผู้เข้าร่วม {count} ในชั้นเรียนคู่นี้ยังต้องมีคู่ครอง",
        "tournaments.doublesTournament" to "การแข่งขันประเภทคู่",
        "tournaments.doublesTournamentHint" to "สลับคลาสที่มีอยู่ทั้งหมดเป็นสองเท่าและสร้างคลาสใหม่เป็นสองเท่าตามค่าเริ่มต้น",
        "tournaments.edit" to "แก้ไข",
        "tournaments.eligibleClassesHint" to "เหมาะกับ: {classes}",
        "tournaments.email" to "ที่อยู่อีเมล",
        "tournaments.encounter" to "การประชุม",
        "tournaments.enterClassName" to "กรุณากรอกชื่อคลาส",
        "tournaments.enterExternalParticipantName" to "กรุณากรอกอย่างน้อยชื่อและนามสกุล",
        "tournaments.enterMiniLocation" to "กรุณากรอกสถานที่",
        "tournaments.errorCreatingGroups" to "เกิดข้อผิดพลาดในการสร้างกลุ่ม",
        "tournaments.errorCreatingTournament" to "เกิดข้อผิดพลาดในการสร้างทัวร์นาเมนต์",
        "tournaments.errorDistributingTables" to "เกิดข้อผิดพลาดในการจัดสรรโต๊ะ",
        "tournaments.errorGeneratingPdf" to "เกิดข้อผิดพลาดในการสร้าง PDF",
        "tournaments.errorMergingClasses" to "ไม่สามารถรวมชั้นเรียนได้",
        "tournaments.errorMoreSeededThanUnseeded" to "มีการเดิมพันมากกว่าผู้เล่นที่ไม่ได้วาง ไม่สามารถสร้างการจับคู่แบบสุ่มได้",
        "tournaments.errorResettingKORound" to "เกิดข้อผิดพลาดในการรีเซ็ตรอบน็อคเอาท์",
        "tournaments.errorUpdatingTournament" to "เกิดข้อผิดพลาดในการอัปเดตทัวร์นาเมนต์",
        "tournaments.exportPDF" to "ส่งออก PDF",
        "tournaments.external" to "ภายนอก",
        "tournaments.finalPlacements" to "ตำแหน่งสุดท้าย",
        "tournaments.finalRound" to "รอบชิง",
        "tournaments.finishMatch" to "จบการแข่งขัน",
        "tournaments.firstName" to "ชื่อ",
        "tournaments.forForwarding" to "สำหรับการส่งต่อ",
        "tournaments.gaveUp" to "วาง",
        "tournaments.gaveUpHint" to "ผู้เล่นยอมแพ้ – ทุกเกมนับเป็นฝ่ายตรงข้าม (11:0) หรือ 0:0 สำหรับทั้งสองเกม",
        "tournaments.genderAll" to "ทั้งหมด",
        "tournaments.genderMixed" to "Mixed",
        "tournaments.generatingPDF" to "กำลังสร้าง PDF...",
        "tournaments.group" to "กลุ่ม",
        "tournaments.groupMatches" to "การแข่งขันระหว่างกลุ่ม",
        "tournaments.groupNumber" to "กลุ่ม",
        "tournaments.groupPlacements" to "ตำแหน่งกลุ่ม",
        "tournaments.groupsLabel" to "กลุ่ม",
        "tournaments.groupsOverview" to "ภาพรวมของกลุ่ม",
        "tournaments.groupsPerClass" to "อันดับพูล",
        "tournaments.groupsPerClassHint" to "สำหรับแต่ละชั้นเรียน ให้ป้อนจำนวนกลุ่ม (0 = ไม่มีกลุ่มสำหรับชั้นเรียนนี้):",
        "tournaments.index" to "Index",
        "tournaments.intermediateRound" to "รอบกลาง (รอบ 2)",
        "tournaments.internalStatsAbsoluteRank" to "อันดับผลรวม",
        "tournaments.internalStatsAgeFilter" to "รุ่นอายุและเพศ (เดี่ยว)",
        "tournaments.internalStatsAgeFilterAll" to "ทุกรุ่นอายุ",
        "tournaments.internalStatsAgeFilterNone" to "ไม่ได้เลือกรุ่นอายุ",
        "tournaments.internalStatsAgeNoClass" to "ไม่มีคลาส",
        "tournaments.internalStatsAgeSelectAll" to "ทั้งหมด",
        "tournaments.internalStatsAgeSelectNone" to "ไม่มี",
        "tournaments.internalStatsAverageRank" to "อันดับเฉลี่ย (ต่อการแข่งขัน)",
        "tournaments.internalStatsAvgPoints" to "เฉลี่ย",
        "tournaments.internalStatsEmpty" to "ไม่มีข้อมูลในช่วงเวลาที่เลือก",
        "tournaments.internalStatsExportPdf" to "ส่งออก PDF",
        "tournaments.internalStatsFilterAgeBands" to "ระดับอายุ",
        "tournaments.internalStatsFilterGenderColumn" to "เพศ",
        "tournaments.internalStatsGenderScopeAll" to "ทั้งหมด",
        "tournaments.internalStatsGenderScopeGirls" to "สาวๆเท่านั้น",
        "tournaments.internalStatsLast12Months" to "12 เดือนล่าสุด",
        "tournaments.internalStatsLast3Months" to "3 เดือนล่าสุด",
        "tournaments.internalStatsLast6Months" to "6 เดือนล่าสุด",
        "tournaments.internalStatsOpenButton" to "เปิดสถิติ (เดี่ยว)",
        "tournaments.internalStatsPeriod" to "ช่วงเวลา",
        "tournaments.internalStatsPoints" to "รวม",
        "tournaments.internalStatsPointsExplain" to "การให้คะแนน: ในแต่ละกลุ่มใช้เปอร์เซ็นต์ตามอันดับ (มี N คนที่มีอันดับ: ที่ 1 = 100% คนสุดท้าย = 0% ระหว่างกลางเชิงเส้น; อันดับเดียวกันค่าเดียวกัน) N นับทุกคนที่มีอันดับในกลุ่ม (รวมแขก) มีผู้เล่นเพียงคนเดียว = 100% รอบ KO: ค่ากลุ่มสูงสุดของคลาส +1 แล้ว +1 ต่อชนะแมตช์ KO เฉพาะสมาชิก เดี่ยว",
        "tournaments.internalStatsTitle" to "สถิติการแข่งขันภายใน (เดี่ยว)",
        "tournaments.internalStatsTournamentsInPeriod" to "{count} การแข่งขันในช่วงเวลา (ไม่รวมมินิแชมเปียนชิป)",
        "tournaments.internalStatsTtAdult" to "ประเภทใหญ่",
        "tournaments.internalTournaments" to "ทัวร์นาเมนต์ภายใน",
        "tournaments.knockoutLabel" to "KO",
        "tournaments.koRound" to "รอบน็อคเอาท์",
        "tournaments.lastName" to "นามสกุล",
        "tournaments.livePosition" to "ที่นั่งสด",
        "tournaments.loadFromTraining" to "โหลดตั้งแต่วันอบรม",
        "tournaments.markMatchLive" to "ทำเครื่องหมายว่ากำลังแข่ง",
        "tournaments.maxGroupSize" to "ขนาดปาร์ตี้สูงสุด",
        "tournaments.mergeClasses" to "รวมคลาส (เฟสกลุ่มทั่วไป)",
        "tournaments.mergeDistribute" to "กระจายผู้เล่นจาก A ไปยังทุกกลุ่ม (จาก B)",
        "tournaments.mergeSingleGroup" to "ผู้เล่นทั้งหมดจาก A ในกลุ่ม (ที่ B)",
        "tournaments.minBirthYear" to "เกิดในปีหรือหลังจากนั้น",
        "tournaments.miniChampionshipLocation" to "ที่ตั้ง",
        "tournaments.miniChampionships" to "มินิแชมเปี้ยนชิพ",
        "tournaments.miniChampionshipYear" to "ปี",
        "tournaments.miniChampionshipYearHint" to "12 = ปีนี้ 12 หรือ 13 ปี 10 = 10 หรือ 11 8 = 9 และอายุน้อยกว่า",
        "tournaments.minimumParticipantsForPairings" to "ต้องมีผู้เข้าร่วมอย่างน้อย 2 คนสำหรับการจับคู่",
        "tournaments.missingDataPDF" to "ข้อมูลที่ขาดหายเป็น PDF",
        "tournaments.missingDataPDFSubtitle" to "กรุณาเก็บข้อมูลที่ขาดหาย (ทำเครื่องหมาย ____) จากผู้เข้าร่วมและจดบันทึกที่นี่",
        "tournaments.missingDataPDFSubtitleTop3" to "กรุณาเก็บข้อมูลที่ขาดหายของ 3 อันดับแรก (ทำเครื่องหมาย ____) และจดบันทึกที่นี่",
        "tournaments.missingDataPDFTitle" to "ข้อมูลผู้เข้าร่วมที่ขาดหาย – มินิแชมเปี้ยนชิพ",
        "tournaments.missingDataPDFTitleTop3" to "ข้อมูลที่ขาดหาย – 3 อันดับแรก มินิแชมเปี้ยนชิพ",
        "tournaments.name" to "ชื่อ",
        "tournaments.newMiniChampionship" to "ใหม่ มินิ แชมเปี้ยนชิพ",
        "tournaments.setShort" to "เซต",
        "tournaments.newTournament" to "เพิ่มทัวร์นาเมนต์ใหม่",
        "tournaments.noAssignableMatches" to "ไม่มีแมตช์ที่ผู้เล่นทั้งสองว่าง",
        "tournaments.noClassesYet" to "ยังไม่มีชั้นเรียนว่าง เพิ่มชั้นเรียนใหม่",
        "tournaments.noEligibleClass" to "ไม่พบคลาสที่เหมาะสม",
        "tournaments.noFreeTables" to "ไม่มีโต๊ะว่าง",
        "tournaments.noMatchingTournamentsTitle" to "ไม่มีการแข่งขันที่ตรงกัน",
        "tournaments.noOrphanedMatchesFound" to "ไม่พบแมตช์กำพร้า",
        "tournaments.noPlacementsYet" to "ยังไม่มีตำแหน่ง",
        "tournaments.noPlayerDataAvailable" to "ไม่มีข้อมูลผู้เล่น",
        "tournaments.noPoolRulesYet12" to "ยังไม่มีกฎ ตัวอย่าง: อันดับ 1 และ 2 -> กลุ่มบนของรอบ 2",
        "tournaments.noPoolRulesYetFinal" to "ยังไม่มีกฎ ตัวอย่าง: อันดับ 1 และ 2 -> รอบชิง",
        "tournaments.noTop3Yet" to "ยังไม่ได้กำหนด 3 อันดับแรก",
        "tournaments.noTournamentDate" to "ไม่มีวันที่ของทัวร์นาเมนต์",
        "tournaments.noTournamentsCreatedYet" to "ยังไม่มีการสร้างการแข่งขัน",
        "tournaments.noTrainingOnDate" to "ไม่พบวันฝึกสำหรับ {date}",
        "tournaments.noTrainingParticipants" to "ไม่พบผู้เข้าร่วมการฝึกสำหรับวันที่นี้",
        "tournaments.noValidTrainingParticipants" to "ไม่พบผู้เข้าร่วมการฝึกที่ถูกต้องสำหรับวันที่นี้",
        "tournaments.numberOfGroups" to "หมายเลขของกลุ่ม",
        "tournaments.numberOfTables" to "จำนวนโต๊ะ",
        "tournaments.openTournaments" to "เปิดทัวร์นาเมนต์",
        "tournaments.optional" to "optional",
        "tournaments.orphanedMatchesRemoved" to "ลบแมตช์กำพร้า {count} รายการแล้ว",
        "tournaments.outOfCompetition" to "ผู้เล่นจาก A ออกจากการแข่งขัน",
        "tournaments.page" to "หน้า",
        "tournaments.pairingAlreadyExists" to "คู่นี้มีอยู่แล้ว",
        "tournaments.pairings" to "การจับคู่คู่",
        "tournaments.pairingsCreatedWithErrors" to "สร้างคู่แล้ว {successCount} คู่, มีข้อผิดพลาด {errorCount} รายการ",
        "tournaments.participantConflicts" to "ความขัดแย้ง",
        "tournaments.participantNotFound" to "ไม่พบผู้เข้าร่วม",
        "tournaments.participants" to "ผู้เข้าร่วม",
        "tournaments.participantsNeedClassAssignment" to "{count} ผู้เข้าร่วมยังไม่ได้รับมอบหมายในชั้นเรียน ควรกำหนดสิ่งเหล่านี้ก่อน",
        "tournaments.phone" to "โทรศัพท์",
        "tournaments.placementsPendingFinals" to "อันดับสุดท้ายจะปรากฏเมื่อมีหลายกลุ่มหรือรอบสุดท้าย",
        "tournaments.placementsPendingGroups" to "การจัดกลุ่มจะปรากฏขึ้นเมื่อมีการแข่งขันแบบกลุ่ม",
        "tournaments.placementsPendingNoGroups" to "อันดับจะปรากฏที่นี่เมื่อมีการแข่งขันแบบกลุ่มหรือรอบสุดท้าย",
        "tournaments.placementsPendingSelectedClass" to "ยังไม่มีตำแหน่งสำหรับชั้นเรียนที่เลือกในปัจจุบัน",
        "tournaments.placementsPendingTitle" to "ตำแหน่งยังไม่มีให้บริการ",
        "tournaments.placesFromEachGroup" to "อันดับจากแต่ละกลุ่ม (เช่น 1,2)",
        "tournaments.player" to "นักสเก็ต",
        "tournaments.playerOne" to "ผู้เล่น 1",
        "tournaments.playerTwo" to "ผู้เล่น 2",
        "tournaments.playInGroups" to "การเล่นเป็นกลุ่ม",
        "tournaments.playThirdPlace" to "แข่งชิงอันดับสาม",
        "tournaments.pleaseEnterDate" to "กรุณากรอกวันที่",
        "tournaments.pleaseSelectParticipant" to "กรุณาเลือกนักเรียน",
        "tournaments.points" to "คะแนน",
        "tournaments.pointsRatio" to "คะแนนเกม",
        "tournaments.poolRuleLabel" to "กฎ {number}",
        "tournaments.poolRulePlacesHelp" to "ตัวอย่าง: 1 หรือ 1,2",
        "tournaments.poolRulePlacesLabel" to "ก้าวหน้าไปถึงไหน?",
        "tournaments.poolRulePreview" to "จากแต่ละกลุ่ม สถานที่ {places} ก้าวไปสู่ ​​{target}",
        "tournaments.poolRuleQuickExamples" to "ตัวอย่างด่วน:",
        "tournaments.poolRuleSummary" to "สถานที่ {places} ไปที่ {target}",
        "tournaments.poolRuleTargetGroupsDetailed" to "{count} กลุ่มเป้าหมาย",
        "tournaments.poolRuleTargetKnockout" to "วงเล็บน็อคเอาท์",
        "tournaments.poolRuleTargetLabel" to "สถานที่เหล่านี้ไปไหน?",
        "tournaments.position" to "จัตุรัส",
        "tournaments.problemConfigDescription" to "ตรวจสอบวันที่ ชื่อ และชุดที่ชนะ",
        "tournaments.problemConfigTitle" to "การกำหนดค่าไม่สมบูรณ์",
        "tournaments.problemConflictsDescription" to "ตรวจสอบชั้นเรียนที่ไม่ถูกต้อง ข้อมูลขาดหาย หรือการบ้านที่ไม่ชัดเจน",
        "tournaments.problemConflictsTitle" to "ผู้เข้าร่วม {count} ที่มีความขัดแย้ง",
        "tournaments.problemDoublesAutoDescription" to "สามารถจับคู่คลาสคู่แบบเปิดได้โดยอัตโนมัติทันที",
        "tournaments.problemDoublesDescription" to "คลาสคู่ตั้งแต่หนึ่งคลาสขึ้นไปยังคงต้องมีการมอบหมายจากพันธมิตร",
        "tournaments.problemDoublesTitle" to "{count} เปิดคู่คู่",
        "tournaments.problemGroupMatchesDescription" to "กลุ่มพร้อมแล้วแต่ยังไม่มีการสร้างแมตช์",
        "tournaments.problemGroupMatchesTitle" to "ยังไม่ได้สร้างการแข่งขันแบบกลุ่ม",
        "tournaments.problemGroupsMissingDescription" to "การแข่งขันแบบกลุ่มจำเป็นต้องสร้างกลุ่มก่อน",
        "tournaments.problemGroupsMissingTitle" to "ยังไม่ได้สร้างกลุ่ม",
        "tournaments.problemKnockoutReadyDescription" to "รอบแบ่งกลุ่มเสร็จสมบูรณ์แล้ว และสามารถสร้างรอบสุดท้ายได้ในขณะนี้",
        "tournaments.problemKnockoutReadyTitle" to "สามารถเริ่มน็อกเอาต์ได้",
        "tournaments.problemUnassignedAutoDescription" to "{count} สามารถกำหนดโดยอัตโนมัติได้ทันที",
        "tournaments.problemUnassignedDescription" to "ผู้เข้าร่วมเหล่านี้ยังต้องมีการมอบหมายชั้นเรียนด้วยตนเอง",
        "tournaments.problemUnassignedTitle" to "ผู้เข้าร่วม {count} คนไม่มีชั้นเรียน",
        "tournaments.promotionRule12" to "ผ่านเข้ารอบ: รอบคัดเลือก → รอบกลาง (1→2)",
        "tournaments.promotionRuleDescription12" to "กำหนดสถานที่จากกลุ่มเบื้องต้นแต่ละกลุ่มที่จะผ่านเข้าสู่รอบกลาง",
        "tournaments.promotionRuleDescriptionFinalGroups" to "กำหนดสถานที่จากรอบที่แล้วผ่านเข้ารอบกลุ่มสุดท้าย",
        "tournaments.promotionRuleDescriptionFinalKnockout" to "กำหนดตำแหน่งจากรอบที่แล้วที่ผ่านเข้ารอบน็อกเอาต์",
        "tournaments.promotionRuleFinal" to "ผ่านเข้ารอบ: รอบ {from} → รอบ {to}",
        "tournaments.randomizeGroups" to "สุ่ม",
        "tournaments.randomPairings" to "คู่สุ่มคู่",
        "tournaments.randomPairingsCreated" to "สร้างการจับคู่แบบสุ่มแล้ว",
        "tournaments.resetGroupMatches" to "การแข่งขันระหว่างกลุ่ม",
        "tournaments.resetGroups" to "รีเซ็ตกลุ่ม",
        "tournaments.result" to "ผลลัพธ์",
        "tournaments.resultsRanking" to "อันดับ",
        "tournaments.round" to "กลม",
        "tournaments.roundGroupCount" to "จำนวนกลุ่ม",
        "tournaments.roundMode" to "โหมด",
        "tournaments.ruleStatusBlocked" to "ถูกบล็อก",
        "tournaments.ruleStatusOk" to "ดูดี",
        "tournaments.ruleStatusOkDescription" to "กฎนี้ตรงกับรอบเป้าหมายปัจจุบันและสามารถใช้ได้ตามที่เป็นอยู่",
        "tournaments.ruleStatusReview" to "ทบทวน",
        "tournaments.save" to "บันทึก",
        "tournaments.saveRounds" to "บันทึกรอบ",
        "tournaments.seeded" to "เมล็ดพันธุ์",
        "tournaments.selectClass" to "เลือกชั้นเรียน",
        "tournaments.selectClassPrompt" to "กรุณาเลือกชั้นเรียน",
        "tournaments.selectedTournament" to "ทัวร์นาเมนต์ที่ใช้งานอยู่",
        "tournaments.selectParticipant" to "เลือกผู้ใช้",
        "tournaments.selectPlayer" to "เลือกผู้เล่น",
        "tournaments.selectTournamentFirst" to "กรุณาเลือกทัวร์นาเมนต์ก่อน",
        "tournaments.selectTwoDifferentPlayers" to "กรุณาเลือกผู้เล่นสองคนที่แตกต่างกัน",
        "tournaments.setDiff" to "ความแตกต่างของประโยค",
        "tournaments.sets" to "วลี",
        "tournaments.showClass" to "ดูชั้นเรียน",
        "tournaments.showingTournamentCount" to "{visible} จาก {total}",
        "tournaments.showPlayerDetails" to "ดูรายละเอียดผู้เล่น",
        "tournaments.singles" to "เดี่ยว",
        "tournaments.sourceClass" to "แหล่งที่มา",
        "tournaments.stageActionMissingRulesHint" to "สร้างกฎความก้าวหน้าอย่างน้อยหนึ่งกฎก่อนที่จะย้ายผู้เล่นเข้าสู่รอบถัดไป",
        "tournaments.stageActionRun" to "วิ่งตอนนี้",
        "tournaments.stageActionsDescription" to "ขั้นตอนเหล่านี้จะนำผู้เล่นที่ผ่านการคัดเลือกเข้าสู่รอบถัดไป",
        "tournaments.stageActionsTitle" to "การดำเนินการถัดไป",
        "tournaments.stageConfigBadServerResponse" to "การตอบกลับจากเซิร์ฟเวอร์ไม่ถูกต้อง",
        "tournaments.stageConfigCurrentSetup" to "โครงสร้างปัจจุบัน",
        "tournaments.stageConfigIntro" to "รอบกลางเป็นตัวเลือก หากเปิดใช้งาน จะมีรอบชิงตามมาเสมอ รอบชิงแบบน็อกเอาต์จะถูกสร้างเป็นสายเดียว",
        "tournaments.stageConfigLoadError" to "เกิดข้อผิดพลาดในการโหลดการตั้งค่ารอบ",
        "tournaments.stageConfigLoading" to "กำลังโหลดการตั้งค่ารอบ…",
        "tournaments.stageConfigMissingIds" to "ไม่สามารถบันทึกได้: ไม่มีรหัสสโมสรหรือรหัสทัวร์นาเมนต์",
        "tournaments.stageConfigTitle" to "รอบกลางและรอบชิง",
        "tournaments.stageCreated" to "สร้างรอบ {round} แล้ว",
        "tournaments.stageFinalDescription" to "ตัดสินใจว่ารอบสุดท้ายควรเล่นเป็นกลุ่มหรือแบบแพ้คัดออกโดยตรง",
        "tournaments.stageFlowBreakdownActionAddRule" to "เพิ่มกฎ",
        "tournaments.stageFlowBreakdownActionOpen" to "เปิดกฎ",
        "tournaments.stageFlowBreakdownActionReview" to "ตรวจสอบประเด็นต่างๆ",
        "tournaments.stageFlowBreakdownErrors" to "{count} ข้อผิดพลาดในการบล็อก",
        "tournaments.stageFlowBreakdownMissingRule" to "ยังไม่มีการเพิ่มกฎที่สมบูรณ์",
        "tournaments.stageFlowBreakdownOk" to "การกำหนดค่าดูดี",
        "tournaments.stageFlowBreakdownWarnings" to "{count} คำเตือนเปิดอยู่",
        "tournaments.stageFlowDirectFinal" to "รอบเบื้องต้น -> รอบสุดท้าย ({final})",
        "tournaments.stageFlowHealthBlocked" to "ตรรกะกลมขัดแย้งกัน",
        "tournaments.stageFlowHealthBlockedDescription" to "ขณะนี้กฎอย่างน้อยหนึ่งข้อไม่ตรงกับรอบเป้าหมายหรือมีข้อผิดพลาดในการกำหนดค่าการบล็อก",
        "tournaments.stageFlowHealthIncomplete" to "ตรรกะแบบกลมไม่สมบูรณ์",
        "tournaments.stageFlowHealthMissingRules" to "การเปลี่ยนแปลงอย่างน้อยหนึ่งครั้งยังไม่มีกฎความก้าวหน้าที่สมบูรณ์",
        "tournaments.stageFlowHealthOk" to "ตรรกะกลมๆ ก็ดูดีนะ",
        "tournaments.stageFlowHealthOkDescription" to "การเปลี่ยนระหว่างรอบได้รับการกำหนดค่าอย่างสมบูรณ์และสอดคล้องกันในปัจจุบัน",
        "tournaments.stageFlowHealthReviewDescription" to "โดยทั่วไปตรรกะแบบกลมนั้นใช้งานได้ แต่ควรยังคงได้รับการตรวจสอบเนื่องจากมีคำแนะนำแบบเปิด",
        "tournaments.stageFlowPreviewMissing" to "ยังไม่มีการกำหนดค่ากฎ",
        "tournaments.stageFlowPreviewRule" to "สถานที่ {places} ไปที่ {target}",
        "tournaments.stageFlowPreviewRuleWithCount" to "{base} (ผู้เข้ารอบที่คาดหวัง: {count})",
        "tournaments.stageFlowQualifiedPreviewEntry" to "G{group} · สถานที่ {position} · {name}",
        "tournaments.stageFlowQualifiedPreviewTitle" to "ปัจจุบันผ่านการรับรองแล้ว",
        "tournaments.stageFlowReadinessIncompleteGroups" to "{count} กลุ่มยังไม่ได้รับการตัดสินใจทั้งหมด",
        "tournaments.stageFlowReadinessNoGroups" to "ยังไม่มีกลุ่มที่ตรงกัน",
        "tournaments.stageFlowReadinessReady" to "การเปลี่ยนแปลงพร้อมที่จะเริ่มต้นแล้ว",
        "tournaments.stageFlowRecommendationError" to "ตรวจสอบข้อผิดพลาดการบล็อกครั้งแรกในลอจิกรอบก่อน",
        "tournaments.stageFlowRecommendationFixes" to "ปัญหาการกำหนดค่าทั่วไปสามารถล้างข้อมูลได้โดยอัตโนมัติทันที",
        "tournaments.stageFlowRecommendationMissingRule" to "กฎที่สมบูรณ์ยังคงขาดหายไปสำหรับ {label} นั่นคือสถานที่ที่ดีที่สุดที่จะดำเนินการต่อ",
        "tournaments.stageFlowRecommendationSave" to "ตรรกะกลมมีความสอดคล้องกัน คุณสามารถบันทึกการกำหนดค่าได้ทันที",
        "tournaments.stageFlowRecommendationTitle" to "แนะนำขั้นตอนต่อไป",
        "tournaments.stageFlowRecommendationWarnings" to "ยังมีคำเตือนที่ควรตรวจสอบก่อนบันทึก",
        "tournaments.stageFlowWithIntermediate" to "รอบเบื้องต้น -> รอบกลาง ({stage2}) -> รอบสุดท้าย ({final})",
        "tournaments.stageParticipantsTransferred" to "ผู้เล่นที่ผ่านการรับรองถูกย้ายเข้าสู่ {round}",
        "tournaments.stageStep1" to "ขั้นตอนที่ 1",
        "tournaments.stageStep1Description" to "ขั้นแรกตัดสินใจว่าควรมีรอบเพิ่มเติมหลังจากรอบเบื้องต้นหรือไม่",
        "tournaments.stageStep1Title" to "ตัดสินใจเลือกรอบกลาง",
        "tournaments.stageStep2" to "ขั้นตอนที่ 2",
        "tournaments.stageStep2Description" to "กำหนดว่ารอบกลางควรมีลักษณะอย่างไร และต้องการกี่กลุ่ม",
        "tournaments.stageStep3" to "ขั้นตอนที่ 3",
        "tournaments.stageValidationApplyAllFixes" to "ใช้ {count} โปรแกรมฟิกซ์ด่วน",
        "tournaments.stageValidationApplyFix" to "นำมาใช้",
        "tournaments.stageValidationApplyTargetGroupFix" to "ตั้งค่าเป็นกลุ่มเป้าหมาย {count}",
        "tournaments.stageValidationApplyTargetTypeFix" to "เปลี่ยนเป็น {target}",
        "tournaments.stageValidationDescription" to "แก้ไขจุดเหล่านี้ก่อนที่จะบันทึกหรือย้ายผู้เล่นเข้าสู่รอบถัดไป",
        "tournaments.stageValidationGroupCountRequired" to "โปรดตั้งค่าจำนวนกลุ่มที่ถูกต้องอย่างน้อยหนึ่งรายการ",
        "tournaments.stageValidationKnockoutByesLikely" to "ด้วยคุณสมบัติ {count} ที่คาดหวังไว้ วงเล็บที่น่าพิศวงมักจะรวมการบายด้วย",
        "tournaments.stageValidationKnockoutNeedsTwoPlayers" to "รอบแพ้คัดออกต้องมีผู้เล่นที่มีคุณสมบัติเหมาะสมอย่างน้อย 2 คน",
        "tournaments.stageValidationKnockoutTargetOnly" to "สำหรับรอบสุดท้ายแบบน็อกเอาต์ อนุญาตให้ใช้เฉพาะวงเล็บน็อคเอาท์เป็นเป้าหมายที่นี่",
        "tournaments.stageValidationNoRules" to "ยังไม่มีกฎความก้าวหน้าสำหรับ {stage}",
        "tournaments.stageValidationNotEnoughQualifiersForGroups" to "ด้วยตัวระบุ {count} เท่านั้นสำหรับกลุ่มเป้าหมาย {groups} กลุ่มว่างจะถูกสร้างขึ้น",
        "tournaments.stageValidationRulePlacesDuplicate" to "กฎข้อเดียวต้องไม่มีสถานที่เดียวกันมากกว่าหนึ่งครั้ง",
        "tournaments.stageValidationRulePlacesGap" to "คำจำกัดความของสถานที่มีช่องว่าง โดยปกติแล้วจะมีจุดประสงค์เพื่อลำดับต่อเนื่องเช่น 1,2 หรือ 1,2,3",
        "tournaments.stageValidationRulePlacesInvalid" to "คำจำกัดความของสถานที่ไม่ถูกต้อง อนุญาตให้ใช้เฉพาะจำนวนเต็มบวก เช่น 1 หรือ 1,2 เท่านั้น",
        "tournaments.stageValidationRulePlacesRequired" to "ป้อนอย่างน้อยหนึ่งสถานที่ที่ควรก้าวหน้า",
        "tournaments.stageValidationRulesOverlap" to "สถานที่ {place} ถูกกำหนดสองครั้ง ในกฎ {first} และกฎ {second}",
        "tournaments.stageValidationSaveBlocked" to "โปรดแก้ไขข้อผิดพลาดในการกำหนดค่าที่ไฮไลต์ไว้ก่อน",
        "tournaments.stageValidationSuggestion" to "คำแนะนำ: {value}",
        "tournaments.stageValidationTargetGroupCountMismatch" to "จำนวนกลุ่มเป้าหมายต้องตรงกับรอบเป้าหมาย ที่คาดไว้: {expected}",
        "tournaments.stageValidationTargetGroupsRequired" to "กรุณากรอกจำนวนกลุ่มเป้าหมายที่ถูกต้อง",
        "tournaments.stageValidationTargetTypeMismatch" to "เป้าหมายของกฎนี้จะต้องตรงกับรอบเป้าหมาย ที่คาดไว้: {target}",
        "tournaments.stageValidationThinGroupsLikely" to "เมื่อใช้ตัวระบุ {count} ทั่วทั้งกลุ่มเป้าหมาย {groups} กลุ่มนี้มีแนวโน้มว่าจะมีขนาดเล็กมาก",
        "tournaments.stageValidationTitle" to "ตรวจสอบการกำหนดค่า",
        "tournaments.startKORound" to "เริ่มรอบน็อคเอาท์",
        "tournaments.statusActionAssign" to "กำหนด",
        "tournaments.statusActionCreate" to "สร้าง",
        "tournaments.statusActionGenerate" to "สร้าง",
        "tournaments.statusActionPair" to "คู่",
        "tournaments.statusActionReview" to "ทบทวน",
        "tournaments.statusActionStart" to "เริ่ม",
        "tournaments.statusConfigIncomplete" to "การกำหนดค่าไม่สมบูรณ์",
        "tournaments.statusConfigReady" to "การกำหนดค่าพร้อมแล้ว",
        "tournaments.statusFinished" to "เสร็จแล้ว",
        "tournaments.statusGroupsMissing" to "ยังไม่ได้สร้างกลุ่ม",
        "tournaments.statusGroupsReady" to "หมู่คณะพร้อม.",
        "tournaments.statusGroupsRunning" to "อยู่ระหว่างดำเนินการรอบแบ่งกลุ่ม",
        "tournaments.statusKnockoutReady" to "น็อกเอาต์พร้อมที่จะเริ่ม",
        "tournaments.statusKnockoutRunning" to "อยู่ในระหว่างน็อกเอาต์",
        "tournaments.statusLive" to "กำลังแข่ง",
        "tournaments.statusOpen" to "เปิด",
        "tournaments.statusParticipantsConflicts" to "ผู้เข้าร่วม {count} ที่มีความขัดแย้ง",
        "tournaments.statusParticipantsReady" to "ผู้เข้าร่วม {count} ไม่มีข้อขัดแย้ง",
        "tournaments.statusParticipantsUnassigned" to "{count} ไม่มีชั้นเรียน",
        "tournaments.statusTournamentCompleted" to "การแข่งขันเสร็จสิ้นแล้ว",
        "tournaments.statusUnpairedDoubles" to "{count} เพิ่มเป็นสองเท่าโดยไม่มีคู่",
        "tournaments.strategy" to "กลยุทธ์",
        "tournaments.tabConfig" to "การกำหนดค่า",
        "tournaments.tabGroups" to "อันดับพูล",
        "tournaments.table" to "โต๊ะ",
        "tournaments.tablesDistributed" to "จัดสรรโต๊ะเรียบร้อยแล้ว",
        "tournaments.tabParticipants" to "ผู้เข้าร่วม",
        "tournaments.tabPlacements" to "ตำแหน่ง",
        "tournaments.tabResults" to "ผลลัพธ์",
        "tournaments.target" to "เป้าหมาย",
        "tournaments.targetClass" to "เป้า",
        "tournaments.targetGroupCount" to "จำนวนกลุ่มปลายทาง",
        "tournaments.targetGroupsLabel" to "{count} กลุ่ม",
        "tournaments.tournamentClassGenderFemale" to "หญิง",
        "tournaments.tournamentClassGenderOpen" to "เปิด (ทุกคน)",
        "tournaments.tournamentName" to "ชื่อทัวร์นาเมนท์",
        "tournaments.tournamentParticipations" to "ทัวร์นาเมนต์และรายการอย่างเป็นทางการ",
        "tournaments.transferQualifiedToFinalFromIntermediate" to "ย้ายผู้เล่นที่ผ่านการคัดเลือกเข้าสู่รอบสุดท้าย",
        "tournaments.transferQualifiedToFinalFromIntermediateDesc" to "ใช้กฎรอบกลางถึงรอบสุดท้ายและย้ายผู้เล่นที่ผ่านการคัดเลือกข้ามไป",
        "tournaments.transferQualifiedToFinalFromPreliminary" to "ย้ายผู้เล่นที่ผ่านการคัดเลือกเข้าสู่รอบสุดท้ายโดยตรง",
        "tournaments.transferQualifiedToFinalFromPreliminaryDesc" to "ใช้กฎรอบเบื้องต้นถึงรอบสุดท้ายและสร้างผู้เล่นที่ผ่านการรับรองโดยตรง",
        "tournaments.transferQualifiedToIntermediate" to "ย้ายผู้เล่นที่ผ่านการคัดเลือกเข้าสู่รอบกลาง",
        "tournaments.transferQualifiedToIntermediateDesc" to "ใช้กฎรอบเบื้องต้นถึงรอบกลางและย้ายผู้เล่นที่ผ่านการคัดเลือกข้ามไป",
        "tournaments.unknown" to "ไม่ทราบ",
        "tournaments.unknownDate" to "ไม่ทราบวันที่",
        "tournaments.unmarkMatchLive" to "ลบเครื่องหมายกำลังแข่ง",
        "tournaments.unpairedDoubles" to "ประเภทคู่ที่ยังไม่มีคู่",
        "tournaments.useIntermediateStage" to "ใช้รอบกลาง",
        "tournaments.warningBirthDateMissing" to "คลาสนี้ต้องมีวันเกิด",
        "tournaments.warningClassMissing" to "ไม่พบคลาส",
        "tournaments.warningGenderMismatch" to "เพศไม่ตรงกับคลาส",
        "tournaments.warningGenderMissing" to "คลาสนี้ต้องมีข้อมูลเพศ",
        "tournaments.warningMissingPairing" to "ยังไม่มีคู่สำหรับประเภทคู่",
        "tournaments.warningTooOldForClass" to "อายุมากเกินไปสำหรับคลาสนี้",
        "tournaments.warningTooYoungForClass" to "อายุน้อยเกินไปสำหรับคลาสนี้",
        "tournaments.winningSets" to "อัตราการชนะ",
        "tournaments.withoutClass" to "ไม่มีคลาส",
        "tournaments.workspaceProblemsTitle" to "{count} ปัญหาที่เปิดอยู่",
        "trainingDetails.birthdate" to "วันเกิด",
        "trainingDetails.birthYear" to "ปีเกิด",
        "trainingDetails.last12Months" to "12 เดือนที่ผ่านมา",
        "trainingDetails.last3Months" to "3 เดือนที่ผ่านมา",
        "trainingDetails.maxBirthYear" to "เกิด ≤ ปี",
        "trainingDetails.noTrainings" to "ไม่มีผู้เข้ารับการฝึกอบรม",
        "trainingDetails.title" to "รายละเอียดการฝึกอบรม",
        "trainingDetails.total" to "ทั้งหมด",
        "trainingDetails.trainingParticipations" to "การเข้าร่วมการฝึกอบรม (เรียงลำดับจากมากไปน้อย)",
        "trainingGroupsTab.addMember" to "เพิ่มสมาชิก...",
        "trainingGroupsTab.cancel" to "ยกเลิก",
        "trainingGroupsTab.create" to "สร้าง",
        "trainingGroupsTab.delete" to "ลบ",
        "trainingGroupsTab.edit" to "แก้ไข",
        "trainingGroupsTab.editGroup" to "แก้ไขกลุ่ม",
        "trainingGroupsTab.groupName" to "ชื่อกลุ่ม",
        "trainingGroupsTab.groups" to "อันดับพูล",
        "trainingGroupsTab.members" to "สมาชิก",
        "trainingGroupsTab.newGroup" to "+ กลุ่มใหม่",
        "trainingGroupsTab.noMembersAvailable" to "ไม่มีพันธมิตรในเครือ",
        "trainingGroupsTab.remove" to "ลบ",
        "trainingStats.actions" to "การดำเนินการ",
        "trainingStats.activeMembers" to "สมาชิกที่ใช้งานอยู่",
        "trainingStats.allTrainingDays" to "วันฝึกซ้อมทั้งหมด",
        "trainingStats.attendingMembers" to "สมาชิกที่เข้าร่วม",
        "trainingStats.averageParticipationCurrentMonth" to "การเข้าร่วมเฉลี่ย (เดือนปัจจุบัน)",
        "trainingStats.averageParticipationHalfYear" to "การเข้าร่วมเฉลี่ย (ครึ่งปี)",
        "trainingStats.averageParticipationLastMonth" to "การเข้าร่วมเฉลี่ย (เดือนที่ผ่านมา)",
        "trainingStats.averageParticipationQuarter" to "การเข้าร่วมเฉลี่ย (ไตรมาส)",
        "trainingStats.averageParticipationYear" to "การเข้าร่วมเฉลี่ย (ปี)",
        "trainingStats.birthdate" to "วันเกิด",
        "trainingStats.date" to "วันที่",
        "trainingStats.lastTraining" to "การฝึกซ้อมล่าสุด",
        "trainingStats.memberParticipations" to "การเข้าร่วมของสมาชิก",
        "trainingStats.name" to "ชื่อ",
        "trainingStats.noParticipants" to "ไม่มีผู้เข้าร่วม",
        "trainingStats.panelAgeGroups" to "การเข้าร่วมตามกลุ่มอายุ",
        "trainingStats.panelBestDay" to "วันซ้อมที่คึกคักที่สุด",
        "trainingStats.panelGroupPerformance" to "พัฒนาการตามกลุ่ม",
        "trainingStats.panelMemberStructure" to "โครงสร้างสมาชิก",
        "trainingStats.panelMonthlyTrend" to "แนวโน้มรายเดือน",
        "trainingStats.panelSummary" to "ตัวเลขสำคัญ (กรอง)",
        "trainingStats.panelWeekdayStats" to "วันซ้อมตามวันในสัปดาห์",
        "trainingStats.participants" to "ผู้เข้าร่วม",
        "trainingStats.participations12Months" to "การเข้าร่วม (12 เดือน)",
        "trainingStats.participations3Months" to "การเข้าร่วม (3 เดือน)",
        "trainingStats.participationsTotal" to "การเข้าร่วม (ทั้งหมด)",
        "trainingStats.qttr" to "QTTR",
        "trainingStats.showDetails" to "แสดงรายละเอียด",
        "trainingStats.title" to "สถิติการฝึกซ้อม",
        "trainingStats.trainingDayFilter" to "วันฝึกซ้อม",
        "trainingStats.trainingDays" to "วันฝึกซ้อม (12 เดือนล่าสุด)",
        "trainingStats.ttr" to "TTR",
        "trainingStats.weekday" to "วันในสัปดาห์",
        "trainingTimesTab.addTime" to "เพิ่มเวลา",
        "trainingTimesTab.cancel" to "ยกเลิก",
        "trainingTimesTab.create" to "สร้าง",
        "trainingTimesTab.delete" to "ลบ",
        "trainingTimesTab.edit" to "แก้ไข",
        "trainingTimesTab.editTime" to "แก้ไขเวลาการฝึกอบรม",
        "trainingTimesTab.excludeFromQuickDiaryCreate" to "แยกออกจากการสร้างอย่างรวดเร็ว (ไดอารี่)",
        "trainingTimesTab.excludeFromQuickDiarySaveError" to "ไม่สามารถบันทึกการตั้งค่าได้",
        "trainingTimesTab.friday" to "วันศุกร์",
        "trainingTimesTab.from" to "จาก:",
        "trainingTimesTab.loading" to "กำลังโหลดเวลาออกกำลังกาย...",
        "trainingTimesTab.monday" to "วันจันทร์",
        "trainingTimesTab.noTimes" to "ไม่มีกำหนดเวลาการฝึกอบรม",
        "trainingTimesTab.saturday" to "วันเสาร์",
        "trainingTimesTab.save" to "บันทึก",
        "trainingTimesTab.saveError" to "เกิดข้อผิดพลาดในการประหยัดเวลาออกกำลังกาย",
        "trainingTimesTab.sunday" to "วันอาทิตย์",
        "trainingTimesTab.thursday" to "วันพฤหัสบดี",
        "trainingTimesTab.to" to "ถึง:",
        "trainingTimesTab.tuesday" to "วันอังคาร",
        "trainingTimesTab.wednesday" to "วันพุธ",
        "trainingTimesTab.weekday" to "วันธรรมดา:",
        "unknown" to "ไม่ทราบ",
    ) }

    private val tl: Map<String, String> by lazy { mapOf(
        "accident.accident" to "Aksidente",
        "accident.accidentDescription" to "Paglalarawan ng aksidente...",
        "accident.close" to "Isara",
        "accident.member" to "Miyembro",
        "accident.pleaseSelect" to "Mangyaring pumili",
        "accident.reportAccident" to "Mag-ulat ng mga aksidente",
        "accident.reportedAccidents" to "Naiulat na Aksidente",
        "accident.submit" to "Isumite",
        "activityStats.activityStatistics" to "Mga istatistika ng ehersisyo",
        "activityStats.last3Participations" to "Huling 3 Entries",
        "activityStats.noParticipations" to "Walang magagamit na mga entry",
        "activityStats.noStatistics" to "Walang available na istatistika",
        "activityStats.title" to "Istatistika ng Pagsasanay",
        "app.name" to "Talaarawan sa Pagsasanay",
        "app.title" to "Talaarawan sa Pagsasanay",
        "auth.accountActivated" to "Na-activate ang account! Maaari ka nang mag-log in.",
        "auth.activate" to "I-activate",
        "auth.activateAccount" to "I-activate ang account",
        "auth.activationFailed" to "Nabigo ang activation. Suriin ang link.",
        "auth.confirmPassword" to "Kumpirmahin ang password",
        "auth.email" to "Email",
        "auth.forgotPassword" to "Nakalimutan ang password?",
        "auth.forgotPasswordDescription" to "Ilagay ang iyong email address. Makakatanggap ka ng link para i-reset ang password.",
        "auth.hasAccount" to "Mayroon ka nang account?",
        "auth.login" to "Mag-login",
        "auth.loginFailed" to "Nabigo ang pag-login. Suriin ang iyong credentials.",
        "auth.loginSuccess" to "Matagumpay na nag-login",
        "auth.logout" to "Mag-logout",
        "auth.logoutSuccess" to "Matagumpay na nag-logout",
        "auth.newPassword" to "Bagong password",
        "auth.noAccount" to "Wala pang account?",
        "auth.password" to "Password",
        "auth.passwordResetSuccess" to "Matagumpay na nabago ang password. Maaari ka nang mag-login.",
        "auth.passwordsDoNotMatch" to "Hindi magkatugma ang mga password.",
        "auth.passwordTooShort" to "Ang password ay dapat hindi bababa sa 6 na character.",
        "auth.register" to "Magrehistro",
        "auth.registerFailed" to "Nabigo ang pagpaparehistro. Pakisubukang muli.",
        "auth.registerSuccess" to "Matagumpay ang pagpaparehistro! Mangyaring suriin ang iyong email upang i-activate ang iyong account.",
        "auth.rememberMe" to "Tandaan ako",
        "auth.resetEmailSent" to "Kung may account sa email na ito, ipinadala na ang reset link. Suriin ang inbox (at spam folder).",
        "auth.resetFailed" to "Hindi nabago ang password. Maaaring nag-expire na ang link.",
        "auth.resetPassword" to "Magtakda ng bagong password",
        "auth.resetRequestFailed" to "Nabigo ang request. Subukan ulit.",
        "auth.saveNewPassword" to "I-save ang password",
        "auth.saving" to "Sine-save...",
        "auth.sending" to "Ipinapadala...",
        "auth.sendResetLink" to "Ipadala ang link",
        "auth.sessionExpired" to "Nag-expire na ang iyong session. Ikaw ay ma-logout.",
        "auth.toLogin" to "Pumunta sa login",
        "baseDialog.close" to "Isara",
        "baseDialog.minimize" to "i-minimize",
        "baseDialog.resize" to "Baguhin ang laki",
        "billing.autoSuggestMapping" to "Mga mungkahi sa kotse",
        "billing.deleteBilling" to "Tanggalin",
        "billing.deleteConfirm" to "Talagang tanggalin ang nabuong pahayag na ito?",
        "billing.deleteError" to "Hindi matanggal ang pagsingil.",
        "billing.deleteSuccess" to "Ang pagsingil ay tinanggal.",
        "billing.deleteTemplate" to "Tanggalin ang template",
        "billing.deleteTemplateConfirm" to "Talagang tanggalin ang template na ito?",
        "billing.deleteTemplateError" to "Hindi matanggal ang template.",
        "billing.deleteTemplateSuccess" to "Ang template ay tinanggal.",
        "billing.documentDate" to "Petsa",
        "billing.downloadError" to "Hindi ma-download ang PDF.",
        "billing.downloadPdf" to "Mag-download ng PDF",
        "billing.generateAndDownloadPdf" to "Bumuo + mag-download ng PDF",
        "billing.generateError" to "Hindi magawa ang PDF.",
        "billing.generateOwnBilling" to "Bumuo ng sarili mong pagsingil",
        "billing.generatePdf" to "Bumuo ng PDF",
        "billing.generateSuccess" to "Nagawa na ang PDF.",
        "billing.generatingPdf" to "Gumawa ng PDF...",
        "billing.hourlyRate" to "Oras na suweldo",
        "billing.hoursAutoHint" to "Bilang ng mga oras ay awtomatikong kinakalkula mula sa mga araw ng pagsasanay: {hours} h ({count} unit).",
        "billing.hoursTotal" to "Bilang ng oras",
        "billing.iban" to "IBAN",
        "billing.ibanBoxesReset" to "Na-reset ang mga kahon ng IBAN.",
        "billing.ibanLearnCancel" to "Kanselahin ang pag-aaral ng IBAN",
        "billing.ibanLearnDone" to "Ang mga kahon ng IBAN ay itinalaga mula sa napiling lugar.",
        "billing.ibanLearnStart" to "Matuto ng IBAN",
        "billing.ibanLearnStep1" to "Pag-aaral ng IBAN: mangyaring mag-click sa unang kahon ng IBAN na gagamitin.",
        "billing.ibanLearnStep2" to "Pag-aaral ng IBAN: mangyaring mag-click sa huling kahon ng IBAN na gagamitin.",
        "billing.ibanWithoutCountry" to "walang country code",
        "billing.locationText" to "Lokasyon",
        "billing.mappingEditorHint" to "Piliin ang field, pagkatapos ay mag-click sa PDF. Aagawin kaagad ang posisyon.",
        "billing.mappingEditorTitle" to "Magtalaga ng mga patlang sa PDF sa isang pag-click",
        "billing.mappingField" to "Patlang",
        "billing.mappingHint" to "Ayusin at i-save ang mga coordinate nang isang beses para sa bawat field. Ang mga posisyon na ito ay ginagamit sa \"Gumawa ng PDF\".",
        "billing.mappingPreviewError" to "Hindi ma-load ang preview ng PDF para sa pagmamapa.",
        "billing.mappingSaved" to "Nai-save na ang pagmamapa.",
        "billing.mappingSaveError" to "Hindi ma-save ang pagmamapa.",
        "billing.mappingSuggested" to "Ang mga mungkahi sa kotse ay ipinasok. Mangyaring suriin at ayusin.",
        "billing.mappingSuggestError" to "Hindi matukoy ang mga awtomatikong suhestyon.",
        "billing.mappingTitle" to "Pagmamapa ng posisyon",
        "billing.monthFrom" to "buwan ng",
        "billing.monthTo" to "buwan hanggang",
        "billing.noRuns" to "Wala pang available na mga invoice.",
        "billing.noSessionsInRange" to "Walang nakitang mga sesyon ng pagsasanay sa napiling panahon.",
        "billing.noTemplates" to "Wala pang available na template.",
        "billing.omitField" to "huwag tukuyin",
        "billing.openMappingEditor" to "Pagma-map sa isang pag-click",
        "billing.resetIbanBoxes" to "Na-reset ang mga kahon ng IBAN",
        "billing.runSection" to "Tumatakbo sa pagsingil",
        "billing.runsTitle" to "Mga nakaraang pagsingil",
        "billing.sameAccountCheckbox" to "Parehong account tulad ng huling pahayag",
        "billing.saveMapping" to "I-save ang pagmamapa",
        "billing.selfRecipientName" to "Sariling pangalan",
        "billing.sessionHours" to "Oras",
        "billing.sessionLabel" to "Identifier",
        "billing.sessionTime" to "Oras",
        "billing.step1" to "Hakbang 1: Template ng tindahan",
        "billing.step2" to "Hakbang 2: Gumawa ng billing run",
        "billing.step3" to "Hakbang 3: Bumuo at mag-download ng PDF",
        "billing.subtitle" to "Lumikha ng iyong sariling buwanang bill ng pagsasanay sa aralin.",
        "billing.template" to "Template",
        "billing.templateDescription" to "Paglalarawan",
        "billing.templateName" to "Pangalan ng template",
        "billing.templatePdf" to "PDF template",
        "billing.templateSection" to "Mag-upload ng template",
        "billing.title" to "Invoice",
        "billing.uploadTemplate" to "I-save ang Template",
        "calendar.agendaEmpty" to "Walang event ngayong buwan.",
        "calendar.agendaTitle" to "Mga event ngayong buwan",
        "calendar.cancelCancellation.confirm" to "Bawiin ang pagkansela",
        "calendar.cancelCancellation.message" to "Bawiin talaga ang pagkansela ng training “{title}” sa {date}?",
        "calendar.cancelCancellation.title" to "Bawiin ang pagkansela ng training",
        "calendar.cancellation.date" to "Petsa",
        "calendar.cancellation.description" to "Itinatago ang mga regular na oras ng pagsasanay.",
        "calendar.cancellation.fallbackTitle" to "Kinansela ang pagsasanay",
        "calendar.cancellation.reasonPlaceholder" to "Dahilan (opsyonal)",
        "calendar.cancellation.saving" to "Nagse-save...",
        "calendar.cancellation.submit" to "Idagdag",
        "calendar.cancellation.subtitle" to "Pagkansela ng pagsasanay",
        "calendar.cancellation.title" to "Kinansela ang pagsasanay",
        "calendar.cancellation.trainingGroups" to "Mga pangkat ng pagsasanay",
        "calendar.cancellation.untilOptional" to "Hanggang opsyonal",
        "calendar.customEvent.categoryPlaceholder" to "Kategorya (opsyonal)",
        "calendar.customEvent.description" to "Mga pulong ng distrito, sesyon, panloob na pagpupulong, ...",
        "calendar.customEvent.saving" to "Nagse-save...",
        "calendar.customEvent.submit" to "Lumikha",
        "calendar.customEvent.subtitleFallback" to "Sariling kaganapan",
        "calendar.customEvent.title" to "Sariling kaganapan",
        "calendar.customEvent.titlePlaceholder" to "Pamagat",
        "calendar.description" to "Mga araw ng pagsasanay, mga paligsahan sa club at mga laban sa liga sa buwanang view.",
        "calendar.eventTitles.match" to "Ligal na laban",
        "calendar.eventTitles.officialTournament" to "Paglahok sa tournament",
        "calendar.eventTitles.tournament" to "Tournament",
        "calendar.eventTitles.training" to "pagsasanay",
        "calendar.eyebrow" to "Kalendaryo ng club",
        "calendar.holidayTypes.holiday" to "Holiday",
        "calendar.holidayTypes.schoolHoliday" to "Mga bakasyon sa paaralan",
        "calendar.legend.customEvent" to "Kaganapan",
        "calendar.legend.holiday" to "Holiday",
        "calendar.legend.match" to "Ligal na laban",
        "calendar.legend.officialTournament" to "Pakikilahok",
        "calendar.legend.schoolHoliday" to "Mga bakasyon sa paaralan",
        "calendar.legend.tournament" to "Tournament",
        "calendar.legend.training" to "pagsasanay",
        "calendar.legend.trainingCancellation" to "Kinansela",
        "calendar.loadError" to "Hindi ma-load ang data ng kalendaryo.",
        "calendar.loading" to "Nilo-load ang datos ng kalendaryo...",
        "calendar.match.guest" to "Malayo",
        "calendar.match.home" to "Bahay",
        "calendar.noClub" to "Pumili muna ng club.",
        "calendar.options.subtitle" to "Mga pagkansela at sariling kaganapan",
        "calendar.options.title" to "Mga pagpipilian",
        "calendar.participants" to "{count} kalahok",
        "calendar.quickCancellation.confirm" to "Magdagdag ng pagkansela",
        "calendar.quickCancellation.message" to "Markahan ang \"{title}\" bilang pagkansela ng pagsasanay?",
        "calendar.quickCancellation.noGroups" to "Walang magagamit na mga grupo ng pagsasanay na may mga oras ng pagsasanay.",
        "calendar.quickCancellation.title" to "Pagkansela ng pagsasanay",
        "calendar.quickCancellation.trainingGroups" to "Mga apektadong grupo ng pagsasanay",
        "calendar.quickCancellation.useWholeRange" to "Mag-apply sa buong panahon ({start} hanggang {end})",
        "calendar.recurringTrainingTime" to "Regular na oras ng pagsasanay",
        "calendar.sources.customEvents" to "Sariling kaganapan",
        "calendar.sources.holidays" to "Holidays/school holidays",
        "calendar.sources.matches" to "Mga laban sa liga",
        "calendar.sources.officialTournaments" to "Mga paglahok sa tournament",
        "calendar.sources.tournaments" to "Mga paligsahan",
        "calendar.sources.trainingCancellations" to "Pagkansela ng pagsasanay",
        "calendar.sources.trainingDays" to "Mga araw ng pagsasanay",
        "calendar.sources.trainingTimes" to "Mga oras ng pagsasanay",
        "calendar.sourceWarning" to "Hindi ma-load ang {source}",
        "calendar.starts" to "Magsisimula ang {count}",
        "calendar.title" to "Kalendaryo",
        "calendar.today" to "Ngayon",
        "calendar.tournament.club" to "Club tournament",
        "calendar.tournament.open" to "Buksan ang paligsahan",
        "calendar.weekdays.friday" to "Biy",
        "calendar.weekdays.monday" to "Lun",
        "calendar.weekdays.saturday" to "Sab",
        "calendar.weekdays.sunday" to "Lin",
        "calendar.weekdays.thursday" to "Huw",
        "calendar.weekdays.tuesday" to "Mar",
        "calendar.weekdays.wednesday" to "Miy",
        "club.accessDenied" to "Hindi pinapayagan ang access sa club na ito.",
        "club.accessRequested" to "Naipadala na ang hiling sa access.",
        "club.accessRequestFailed" to "Hindi naipadala ang hiling sa access.",
        "club.accessRequestPending" to "Humiling ka na ng access sa club na ito. Maghintay lamang.",
        "club.create" to "Gumawa ng club",
        "club.createTitle" to "Gumawa ng club",
        "club.diary" to "Talaarawan ng pagsasanay",
        "club.errorLoadingRequests" to "Error sa pag-load ng mga nakabinbing hiling",
        "club.load" to "I-load",
        "club.members" to "Mga miyembro",
        "club.mobileSelectHint" to "Pumili muna ng club para magamit ang app sa smartphone.",
        "club.name" to "Pangalan ng club",
        "club.new" to "Bagong club",
        "club.noAccess" to "Wala ka pang pahintulot na ma-access ang club na ito.",
        "club.openAccessRequests" to "Mga nakabinbing hiling sa access",
        "club.openRequests" to "Mga nakabinbing hiling sa access",
        "club.requestAccess" to "Humiling ng access",
        "club.select" to "Pumili ng club",
        "club.selectPlaceholder" to "Pumili ng club...",
        "club.title" to "Club",
        "club.trainingDiary" to "Talaarawan ng pagsasanay",
        "clubSettings.associationMemberNumber" to "Numero ng pagiging kasapi ng asosasyon",
        "clubSettings.associationMemberNumberPlaceholder" to "hal. SN-12-3456.",
        "clubSettings.autoFetchRankings" to "Awtomatikong bawiin ang mga ranggo",
        "clubSettings.greetingHint" to "Lumalabas ang text na ito sa tab na \"Welcome\" ng sheet ng ulat ng laro.",
        "clubSettings.greetingPlaceholder" to "Welcome text para sa mga laro sa bahay...",
        "clubSettings.greetingText" to "Text ng pagbati",
        "clubSettings.guestPlayers" to "Manlalaro at Doubles Guest Team",
        "clubSettings.guestTeam" to "Pangalan ng Guest Team",
        "clubSettings.homePlayers" to "Doble ang mga manlalaro at home team",
        "clubSettings.homeTeam" to "Pangalan ng Home Team",
        "clubSettings.loadFailed" to "Hindi ma-load ang mga setting",
        "clubSettings.memberDataQuality" to "Mga miyembro ng kalidad ng data",
        "clubSettings.memberDataQualityHint" to "Ang mga field na ito ay binibilang kung kinakailangan sa pahina ng miyembro. Maaari pa ring ilagay ang lahat ng mga patlang.",
        "clubSettings.myTischtennisFedNickname" to "Pagpapaikli ng asosasyon",
        "clubSettings.myTischtennisFedNicknamePlaceholder" to "hal. HeTTV",
        "clubSettings.myTischtennisRankings" to "myTischtennis TTR/QTTR ranggo",
        "clubSettings.myTischtennisRankingsHint" to "Awtomatikong pagbawi ng ranggo ng club para sa mga update sa TTR at QTTR ng mga miyembro.",
        "clubSettings.noClubSelected" to "Mangyaring pumili muna ng doktor.",
        "clubSettings.placeholders" to "Spacer",
        "clubSettings.rankingsUsesAssociationNumber" to "Ang numero ng club para sa pagkuha ng listahan ng ranggo ay tumutugma sa numero ng pagiging miyembro ng asosasyon sa itaas.",
        "clubSettings.requireCity" to "Kinakailangan ang Lokasyon",
        "clubSettings.requireEmail" to "Kinakailangan ang Email",
        "clubSettings.requirePhone" to "Kinakailangan ang Numero ng Telepono",
        "clubSettings.requirePostalCode" to "Kinakailangan ang zip code",
        "clubSettings.requireStreet" to "Kinakailangan ang Daan",
        "clubSettings.save" to "I-save",
        "clubSettings.saved" to "Nakaimbak",
        "clubSettings.saveFailed" to "Hindi ma-save",
        "clubSettings.settings" to "Mga setting",
        "clubSettings.title" to "Mga Setting ng Club",
        "clubSettings.trainingGroups" to "Mga pangkat ng pagsasanay.",
        "clubSettings.trainingTimes" to "Iskedyul ng pagsasanay",
        "common.actions" to "Mga aksyon",
        "common.active" to "Aktibo",
        "common.add" to "Magdagdag",
        "common.all" to "Lahat",
        "common.apply" to "Ilapat",
        "common.back" to "Bumalik",
        "common.cancel" to "Kanselahin",
        "common.choose" to "Pumili",
        "common.clear" to "Burahin",
        "common.close" to "Isara",
        "common.confirm" to "Kumpirmahin",
        "common.create" to "Lumikha",
        "common.date" to "Petsa",
        "common.days" to "Araw",
        "common.delete" to "Tanggalin",
        "common.description" to "Paglalarawan",
        "common.details" to "Details",
        "common.disabled" to "Hindi pinagana",
        "common.download" to "I-download",
        "common.edit" to "I-edit",
        "common.enabled" to "Pinagana",
        "common.filter" to "salain",
        "common.hours" to "Oras",
        "common.in" to "in",
        "common.inactive" to "Hindi aktibo",
        "common.loading" to "Naglo-load...",
        "common.min" to "min",
        "common.minutes" to "Minuto",
        "common.months" to "Buwan",
        "common.move" to "Ilipat",
        "common.name" to "pangalan",
        "common.new" to "Bago",
        "common.next" to "Susunod",
        "common.no" to "Hindi",
        "common.ok" to "OK",
        "common.optional" to "Optional",
        "common.period" to "Panahon",
        "common.previous" to "Nakaraan",
        "common.refresh" to "I-reload",
        "common.remove" to "Alisin",
        "common.required" to "Kinakailangan",
        "common.reset" to "I-reset",
        "common.save" to "I-save",
        "common.saved" to "Na-save",
        "common.saving" to "Sine-save...",
        "common.search" to "Maghanap",
        "common.select" to "Pumili",
        "common.status" to "katayuan",
        "common.submit" to "Ipasa",
        "common.time" to "Oras",
        "common.today" to "Ngayon",
        "common.type" to "Uri",
        "common.update" to "I-update",
        "common.view" to "Tingnan",
        "common.weeks" to "Linggo",
        "common.years" to "Taon",
        "common.yes" to "Oo",
        "courtDrawing.cancel" to "Kanselahin",
        "courtDrawing.durationMinutes" to "Tagal (minuto)",
        "courtDrawing.durationText" to "Tagal (teksto)",
        "courtDrawing.durationTextPlaceholder" to "hal. 2x5",
        "courtDrawing.group" to "Grupo",
        "courtDrawing.ok" to "OK",
        "courtDrawing.selectGroup" to "Pumili ng pangkat...",
        "courtDrawing.title" to "I-configure ang ehersisyo ng table tennis",
        "courtDrawingRender.animationRunning" to "Kasalukuyang ginagawa ang animation...",
        "courtDrawingRender.startAnimation" to "Simulan ang animation",
        "courtDrawingTool.addStroke" to "Magdagdag ng palo",
        "courtDrawingTool.backhand" to "Backhand",
        "courtDrawingTool.codeLabel" to "Code",
        "courtDrawingTool.completeFirstStroke" to "Tapusin ang unang palo",
        "courtDrawingTool.completeFirstStrokeHint" to "Piliin ang panimulang posisyon, side, spin at target. Pagkatapos ay lalabas ang graphic.",
        "courtDrawingTool.configureExercise" to "I-configure ang ehersisyo",
        "courtDrawingTool.counterSpin" to "Counter spin",
        "courtDrawingTool.forehand" to "Forehand",
        "courtDrawingTool.noAdditionalStrokes" to "Wala pang mga kasunod na palo.",
        "courtDrawingTool.preview" to "Silipin",
        "courtDrawingTool.previewHint" to "Lilitaw ang graphic kapag kumpleto na ang unang palo.",
        "courtDrawingTool.service" to "ihain:",
        "courtDrawingTool.serviceTitle" to "maglingkod",
        "courtDrawingTool.sidespin" to "Sidespin",
        "courtDrawingTool.sideUnderspin" to "Side underspin",
        "courtDrawingTool.spin" to "Iikot:",
        "courtDrawingTool.startLeft" to "kaliwa",
        "courtDrawingTool.startMiddle" to "gitna",
        "courtDrawingTool.startRight" to "kanan",
        "courtDrawingTool.stepAdditionalStrokes" to "4. Mga kasunod na palo",
        "courtDrawingTool.stepAdditionalStrokesHint" to "Opsyonal na magdagdag pa ng mga bola bilang listahan.",
        "courtDrawingTool.stepFirstStroke" to "2. Unang palo",
        "courtDrawingTool.stepFirstStrokeHint" to "Itakda ang side at spin para sa unang bola.",
        "courtDrawingTool.stepStartPosition" to "1. Panimulang posisyon",
        "courtDrawingTool.stepStartPositionHint" to "Saang posisyon ng serve magsisimula ang ehersisyo?",
        "courtDrawingTool.stepTarget" to "3. Target",
        "courtDrawingTool.stepTargetHint" to "Pumili ng target zone para sa unang palo.",
        "courtDrawingTool.strokeSide" to "Gilid",
        "courtDrawingTool.strokeTypeBlock" to "Block",
        "courtDrawingTool.strokeTypeChopDefense" to "Chop defense",
        "courtDrawingTool.strokeTypeCounter" to "Kontra",
        "courtDrawingTool.strokeTypeFlip" to "pitik",
        "courtDrawingTool.strokeTypeLabel" to "Uri ng palo",
        "courtDrawingTool.strokeTypeLobDefense" to "Lob defense",
        "courtDrawingTool.strokeTypePush" to "Itulak",
        "courtDrawingTool.strokeTypeSmash" to "Basagin",
        "courtDrawingTool.strokeTypeTopspin" to "Top spin",
        "courtDrawingTool.targetBackhandHalfLong" to "backhand half-long",
        "courtDrawingTool.targetBackhandLong" to "backhand long",
        "courtDrawingTool.targetBackhandShort" to "backhand short",
        "courtDrawingTool.targetForehandHalfLong" to "forehand half-long",
        "courtDrawingTool.targetForehandLong" to "forehand long",
        "courtDrawingTool.targetForehandShort" to "forehand short",
        "courtDrawingTool.targetMiddleHalfLong" to "middle half-long",
        "courtDrawingTool.targetMiddleLong" to "middle long",
        "courtDrawingTool.targetMiddleShort" to "middle short",
        "courtDrawingTool.targetPosition" to "Posisyon ng target:",
        "courtDrawingTool.targetPositionLabel" to "Posisyon ng target",
        "courtDrawingTool.title" to "Guhit ng ehersisyo sa table tennis",
        "courtDrawingTool.titleLabel" to "Pamagat",
        "courtDrawingTool.topspin" to "Topspin",
        "courtDrawingTool.toTarget" to "papunta sa",
        "courtDrawingTool.underspin" to "Underspin",
        "createClub.clubExists" to "Umiiral na ang asosasyon.",
        "createClub.clubName" to "pangalan ng club",
        "createClub.create" to "Gumawa ng club",
        "createClub.nameRequired" to "Mangyaring bigyan ang asosasyon ng isang makabuluhang pangalan.",
        "createClub.title" to "Gumawa ng club",
        "createClub.unknownError" to "May naganap na hindi kilalang error, subukang muli",
        "csvImport.cancel" to "Kanselahin",
        "csvImport.import" to "Ini-import",
        "csvImport.title" to "Iskedyul ng Pag-import",
        "csvImport.uploadCsvFile" to "Mag-upload ng CSV file",
        "dialogExamples.composableConfirmDetails" to "Ito ay isang halimbawa ng useConfirm Composable.",
        "dialogExamples.composableConfirmMessage" to "Gusto mo bang magpatuloy?",
        "dialogExamples.composableConfirmTitle" to "gamitinConfirm halimbawa",
        "dialogExamples.composableDialogText" to "Ginagamit ng dialog na ito ang useDialog Composable.",
        "dialogExamples.composableDialogText2" to "Ginagawa nitong mas madaling pamahalaan!",
        "dialogExamples.composableDialogTitle" to "Dialogue na may useDialog Composable",
        "dialogExamples.composableUsage" to "Composable na Paggamit",
        "dialogExamples.confirmDeleteMessage" to "Sigurado ka bang gusto mong tanggalin ang gift card na ito?",
        "dialogExamples.confirmDeleteTitle" to "Kumpirmahin ang Tanggalin",
        "dialogExamples.confirmDialogs" to "Mga dialog ng kumpirmasyon",
        "dialogExamples.confirmWarningDetails" to "Ang pagkilos na ito ay hindi maaaring i-undo.",
        "dialogExamples.confirmWarningMessage" to "Sigurado ka bang gusto mong magpatuloy?",
        "dialogExamples.error" to "Error",
        "dialogExamples.errorDetails" to "Pakisubukang muli mamaya.",
        "dialogExamples.errorMessage" to "May naganap na error.",
        "dialogExamples.fullscreenModal" to "Fullscreen Modal",
        "dialogExamples.fullscreenModalText" to "Ito ay isang fullscreen na dialog.",
        "dialogExamples.fullscreenModalText2" to "Sinasakop nito ang halos buong screen (90vw x 90vh).",
        "dialogExamples.fullscreenModalTitle" to "Fullscreen Modal Dialog",
        "dialogExamples.info" to "Impormasyon",
        "dialogExamples.infoDialogs" to "Mga diyalogo ng impormasyon",
        "dialogExamples.infoMessage" to "Ito ay isang mensahe ng impormasyon.",
        "dialogExamples.information" to "impormasyon",
        "dialogExamples.largeModal" to "Malaking Modal",
        "dialogExamples.largeModalText" to "Ito ay isang mahusay na modal dialogue.",
        "dialogExamples.largeModalText2" to "Nag-aalok ito ng mas maraming espasyo para sa nilalaman.",
        "dialogExamples.largeModalTitle" to "Malaking Modal Dialogue",
        "dialogExamples.minimizedDialogs" to "Mga pinaliit na dialog:",
        "dialogExamples.modalDialogs" to "Mga Modal na Dialogue",
        "dialogExamples.multipleDialogs" to "Maramihang Dialog",
        "dialogExamples.nonModalDialog" to "Di-modal na diyalogo",
        "dialogExamples.nonModalDialogs" to "Mga di-modal na diyalogo",
        "dialogExamples.nonModalText" to "Ito ay isang non-modal na dialogue.",
        "dialogExamples.nonModalText2" to "Maaari mo itong ilipat at buksan ang ilan nang sabay-sabay!",
        "dialogExamples.nonModalTitle" to "Di-modal na diyalogo",
        "dialogExamples.scrollArea" to "Mag-scroll area para sa maraming content...",
        "dialogExamples.secondNonModalText" to "Isa pang non-modal na dialogue!",
        "dialogExamples.secondNonModalTitle" to "Pangalawang di-modal na diyalogo",
        "dialogExamples.simpleModal" to "Simpleng Modal",
        "dialogExamples.simpleModalText" to "Ito ay isang simpleng modal dialog na may katamtamang laki.",
        "dialogExamples.simpleModalText2" to "Mag-click sa labas o sa X para isara.",
        "dialogExamples.simpleModalTitle" to "Simpleng modal dialogue",
        "dialogExamples.success" to "Achievement",
        "dialogExamples.successDetails" to "Nai-save na ang lahat ng pagbabago.",
        "dialogExamples.successMessage" to "Matagumpay na nakumpleto ang operasyon!",
        "dialogExamples.title" to "Mga halimbawa ng diyalogo",
        "dialogExamples.useConfirmExample" to "gamitinConfirm halimbawa",
        "dialogExamples.useDialogExample" to "useDialog halimbawa",
        "dialogExamples.warning" to "Mga pag-iingat",
        "dialogExamples.warningDetails" to "Ang ilang mga patlang ay maaaring hindi ganap na punan.",
        "dialogExamples.warningMessage" to "Maaaring makatulong sa iyo ang mga sumusunod na link:",
        "dialogManager.close" to "Isara",
        "dialogManager.minimize" to "i-minimize",
        "dialogManager.noMinimizedDialogs" to "Walang pinaliit na dialog",
        "dialogs.confirm.cancel" to "Kanselahin",
        "dialogs.confirm.ok" to "OK",
        "dialogs.confirm.title" to "Kumpirmasyon",
        "dialogs.info.ok" to "OK",
        "dialogs.info.title" to "impormasyon",
        "diary.activeTrainingDay" to "Aktibong araw ng pagsasanay",
        "diary.activities" to "Mga aktibidad",
        "diary.activity" to "Aktibidad",
        "diary.activityDrawing" to "Guhit ng aktibidad",
        "diary.activityImage" to "Larawan ng aktibidad",
        "diary.activityNotFound" to "Hindi nahanap ang aktibidad. Mangyaring pumili mula sa listahan.",
        "diary.activityOrTimeblock" to "Aktibidad / time block",
        "diary.activityPlaceholder" to "Aktibidad",
        "diary.activityRequired" to "Mangyaring maglagay ng aktibidad.",
        "diary.addActivity" to "Magdagdag ng aktibidad",
        "diary.addGroup" to "Magdagdag ng grupo",
        "diary.addGroupActivity" to "Magdagdag ng aktibidad ng grupo",
        "diary.addGroupButton" to "+ Grupo",
        "diary.addTimeblock" to "Time block",
        "diary.all" to "Lahat",
        "diary.applySuggestion" to "Ilapat ang mungkahi",
        "diary.assignParticipants" to "Magtalaga ng mga kalahok",
        "diary.assignParticipantsForGroupActivity" to "Magtalaga ng mga kalahok para sa aktibidad ng grupo",
        "diary.assignShort" to "Italaga",
        "diary.bookAccident" to "Magtala ng aksidente",
        "diary.confirmDelete" to "Kumpirmahin ang pagbura",
        "diary.confirmDeleteDate" to "Sigurado ka bang buburahin ang petsang ito?",
        "diary.confirmDeleteDateDetails" to "Mabubura rin ang lahat ng kaugnay na datos.",
        "diary.confirmDeleteGroup" to "Sigurado ka bang buburahin ang grupong \"{name}\"?",
        "diary.createDate" to "Lumikha ng petsa",
        "diary.createDrawing" to "Gumawa ng guhit ng ehersisyo",
        "diary.createGroups" to "Lumikha ng mga grupo",
        "diary.createNew" to "Lumikha ng bago",
        "diary.createNewDate" to "Lumikha ng bagong petsa",
        "diary.date" to "Petsa",
        "diary.dateCannotBeDeleted" to "Hindi mabubura ang petsa",
        "diary.dateCannotBeDeletedDetails" to "May laman pa (plano ng pagsasanay, mga kalahok, aktibidad, aksidente o mga tala).",
        "diary.dateNoLongerCurrent" to "Hindi na kasalukuyan ang napiling petsa. Pakisubukan muli.",
        "diary.delete" to "Burahin",
        "diary.deleteDate" to "Burahin ang petsa",
        "diary.deleteGroup" to "Burahin ang grupo",
        "diary.duration" to "Tagal",
        "diary.durationExampleLong" to "hal. 2x7 o 3*5",
        "diary.durationExampleShort" to "hal. 2x7",
        "diary.durationMinutes" to "Tagal (min)",
        "diary.editActivity" to "I-edit ang aktibidad",
        "diary.editGroupActivity" to "I-edit ang aktibidad ng grupo",
        "diary.editTrainingTimes" to "I-edit ang oras ng pagsasanay",
        "diary.errorCreatingActivity" to "Error sa paggawa ng aktibidad",
        "diary.errorCreatingGroups" to "Error sa paggawa ng mga grupo",
        "diary.errorDeletingGroup" to "Error sa pagbura ng grupo",
        "diary.errorLoadingPredefinedActivities" to "Error sa pag-load ng paunang natukoy na mga aktibidad",
        "diary.errorMarkingForm" to "Error sa pagmamarka ng form ng miyembro",
        "diary.errorOccurred" to "May naganap na error. Pakisubukang muli.",
        "diary.existingGroups" to "Mga kasalukuyang grupo",
        "diary.filterAbsent" to "Liban",
        "diary.filterAll" to "Lahat",
        "diary.filterExcused" to "May paalam",
        "diary.filterPresent" to "Dumalo",
        "diary.filterTest" to "Pagsubok",
        "diary.formHandedOver" to "Naibigay na ang form ng miyembro",
        "diary.formMarkedAsHandedOver" to "Namarkahan bilang naibigay na ang form ng miyembro",
        "diary.freeActivities" to "Libreng aktibidad",
        "diary.gallery" to "Gallery ng mga miyembro",
        "diary.galleryCreating" to "Ginagawa ang gallery…",
        "diary.group" to "Grupo...",
        "diary.groupDeletedSuccessfully" to "Matagumpay na nabura ang grupo!",
        "diary.groupManagement" to "Pamamahala ng grupo",
        "diary.groupsCreated" to "Matagumpay na nalikha ang {count} grupo!",
        "diary.groupsLabel" to "Mga grupo",
        "diary.groupsSection" to "Mga grupo",
        "diary.leader" to "Tagapanguna",
        "diary.min" to "Min",
        "diary.minutes" to "Minuto",
        "diary.mustCreateAtLeastTwoGroups" to "Sa unang paggawa, kailangan ng hindi bababa sa 2 grupo!",
        "diary.nextAppointment" to "Susunod na schedule",
        "diary.noActiveTrainingDay" to "Walang napiling araw ng pagsasanay.",
        "diary.noEntries" to "Walang entry",
        "diary.noFreeActivitiesYet" to "Wala pang naitalang libreng aktibidad.",
        "diary.noParticipants" to "Walang kalahok para sa araw ng pagsasanay na ito.",
        "diary.numberOfGroups" to "Bilang ng grupo",
        "diary.oneGroupAdded" to "Matagumpay na naidagdag ang 1 grupo!",
        "diary.openPlanItems" to "{count} bukas",
        "diary.openPlanItemsLabel" to "Katayuan ng plano",
        "diary.overallActivity" to "Kabuuang aktibidad",
        "diary.participants" to "Mga kalahok",
        "diary.participantStatusCancelled" to "Kinansela",
        "diary.participantStatusExcused" to "May paalam",
        "diary.participantStatusNone" to "Walang katayuan",
        "diary.planActivitiesCount" to "Mga aktibidad sa plano",
        "diary.planAddHint" to "Magdagdag ng bagong item sa plano gamit ang mga aksyon sa itaas.",
        "diary.planEmptyState" to "Wala pang nakalagay sa plano ng pagsasanay.",
        "diary.quickAdd" to "+ Mabilis na idagdag",
        "diary.quickCreate" to "Mabilis na idagdag",
        "diary.quickCreateFailed" to "Hindi malikha ang araw ng training.",
        "diary.quickCreateNoSlot" to "Walang nahanap na libreng araw ng training (ayon sa iskedyul ng grupo, isang taon pasulong).",
        "diary.searchParticipants" to "Maghanap ng kalahok",
        "diary.selectGroup" to "Pumili ng grupo...",
        "diary.selectGroupAndActivity" to "Mangyaring pumili ng grupo at maglagay ng aktibidad.",
        "diary.selectParticipantAndNote" to "Mangyaring pumili ng kalahok at maglagay ng tala.",
        "diary.selectTags" to "Pumili ng mga tag",
        "diary.selectTrainingGroup" to "Pumili ng grupo ng pagsasanay",
        "diary.selectTrainingGroupPlaceholder" to "Mangyaring pumili...",
        "diary.showImage" to "Ipakita ang larawan/guhit",
        "diary.skipSuggestion" to "Magpatuloy nang walang mungkahi",
        "diary.standardActivities" to "Mga karaniwang aktibidad",
        "diary.standardActivityAddError" to "Hindi maidagdag ang karaniwang aktibidad.",
        "diary.standardDurationShort" to "Min",
        "diary.startTime" to "Oras ng simula",
        "diary.statusEmpty" to "Wala pang laman ang araw ng pagsasanay na ito.",
        "diary.statusInProgress" to "Bahagyang naihanda ang araw ng pagsasanay na ito.",
        "diary.statusOpenShort" to "Bukas",
        "diary.statusReady" to "Naayos na ang oras at plano ng pagsasanay.",
        "diary.statusReadyShort" to "Handa",
        "diary.suggestion" to "Mungkahi",
        "diary.timeblock" to "Time block",
        "diary.timeblocksCount" to "Mga time block",
        "diary.title" to "Talaarawan ng pagsasanay",
        "diary.today" to "Ngayon",
        "diary.trainingDayAsPDF" to "I-download ang araw ng pagsasanay bilang PDF",
        "diary.trainingDayAsPDFShort" to "Araw ng pagsasanay PDF",
        "diary.trainingDayChecklist" to "Checklist ng pagkumpleto",
        "diary.trainingDaySection" to "Araw ng pagsasanay",
        "diary.trainingDaySummaryPdfShort" to "Buod ng kalahok bilang PDF",
        "diary.trainingEnd" to "Pagtatapos ng pagsasanay",
        "diary.trainingPlan" to "Plano ng pagsasanay",
        "diary.trainingPlanAsPDF" to "Plano ng pagsasanay bilang PDF",
        "diary.trainingPlanPdfShort" to "Flow plan bilang PDF",
        "diary.trainingStart" to "Simula ng pagsasanay",
        "diary.trainingTimesUpdated" to "Matagumpay na na-update ang oras ng pagsasanay.",
        "diary.trainingWindow" to "Oras ng pagsasanay",
        "diary.trainingWindowUnset" to "Hindi pa naitakda",
        "diary.unassignedPlanItems" to "{count} hindi nakatalaga",
        "diary.updateTimes" to "I-update ang oras",
        "errors.ERROR_ACTIVITY_IMAGE_DELETE_FAILED" to "Error sa pagtanggal ng larawan.",
        "errors.ERROR_BAD_REQUEST" to "Di-wastong kahilingan.",
        "errors.ERROR_CLUB_ALREADY_EXISTS" to "Umiiral na ang asosasyon.",
        "errors.ERROR_CLUB_NAME_REQUIRED" to "Mangyaring bigyan ang asosasyon ng isang makabuluhang pangalan.",
        "errors.ERROR_CLUB_NAME_TOO_SHORT" to "Mangyaring bigyan ang asosasyon ng isang makabuluhang pangalan.",
        "errors.ERROR_CLUB_NOT_FOUND" to "Hindi nahanap ang club.",
        "errors.ERROR_DIARY_ACTIVITY_PARTICIPANTS_UPDATE_FAILED" to "Error sa pag-update ng mga kalahok sa aktibidad",
        "errors.ERROR_DIARY_ASSIGN_ALL_PARTICIPANTS_FAILED" to "Error sa pagtatalaga ng lahat ng kalahok",
        "errors.ERROR_DIARY_ASSIGN_GROUP_FAILED" to "Error sa pagmamapa ng pangkat",
        "errors.ERROR_DIARY_DATE_NOT_FOUND" to "Hindi nahanap ang petsa",
        "errors.ERROR_DIARY_DATE_UPDATED" to "Hindi (hindi na) available ang petsa. Na-update ang tagapili ng petsa. Pakisubukang muli.",
        "errors.ERROR_DIARY_GROUP_ASSIGNMENT_UPDATE_FAILED" to "Error sa pag-update ng assignment ng pangkat",
        "errors.ERROR_DIARY_IMAGE_LOAD_FAILED" to "NABIGO MAGLOAD NG LARAWAN",
        "errors.ERROR_DIARY_MEMBER_CREATE_FAILED" to "Error sa paggawa ng miyembro",
        "errors.ERROR_DIARY_NO_EXERCISE_DATA" to "Walang natanggap na data ng ehersisyo",
        "errors.ERROR_DIARY_NO_PARTICIPANTS" to "Walang available na kalahok para sa araw ng pagsasanay na ito.",
        "errors.ERROR_DIARY_PARTICIPANT_ASSIGN_FAILED" to "Hindi maitalaga ang mga kalahok.",
        "errors.ERROR_DIARY_PARTICIPANT_GROUP_ASSIGNMENT_UPDATE_FAILED" to "Error sa pag-update ng assignment ng pangkat ng kalahok",
        "errors.ERROR_DIARY_PDF_GENERATION_FAILED" to "Error sa pagbuo ng PDF.",
        "errors.ERROR_DIARY_STATS_LOAD_FAILED" to "Nabigong i-load ang mga istatistika.",
        "errors.ERROR_FORBIDDEN" to "Tinanggihan ang pahintulot.",
        "errors.ERROR_GROUP_ALREADY_EXISTS" to "Umiiral na ang isang pangkat na may ganitong pangalan.",
        "errors.ERROR_GROUP_CANNOT_RENAME_PRESET" to "Hindi mapapalitan ng pangalan ang mga default na grupo.",
        "errors.ERROR_GROUP_INVALID_PRESET_TYPE" to "Di-wastong uri ng preset.",
        "errors.ERROR_GROUP_NAME_REQUIRED" to "Mangyaring magpasok ng pangalan ng pangkat.",
        "errors.ERROR_GROUP_NOT_FOUND" to "Hindi nahanap ang grupo.",
        "errors.ERROR_INTERNAL_SERVER_ERROR" to "May naganap na panloob na error sa server.",
        "errors.ERROR_INVALID_PASSWORD" to "Maling password.",
        "errors.ERROR_LOG_NOT_FOUND" to "Hindi nahanap ang log entry",
        "errors.ERROR_LOGIN_FAILED" to "Nabigo ang pag-login.",
        "errors.ERROR_MEMBER_ALREADY_EXISTS" to "Umiiral na ang miyembro",
        "errors.ERROR_MEMBER_FIRSTNAME_REQUIRED" to "Kinakailangan ang pangalan.",
        "errors.ERROR_MEMBER_LASTNAME_REQUIRED" to "Kinakailangan ang apelyido.",
        "errors.ERROR_MEMBER_NOT_FOUND" to "Hindi nahanap ang mga miyembro",
        "errors.ERROR_MEMBER_TRANSFER_BULK_FAILED" to "Error sa maramihang paglilipat: {message}",
        "errors.ERROR_MYTISCHTENNIS_ACCOUNT_NOT_LINKED" to "Walang myTischtennis account na naka-link.",
        "errors.ERROR_MYTISCHTENNIS_CAPTCHA_REQUIRED" to "Kinakailangan ang CAPTCHA. Gumagamit na ngayon ang MyTischtennis ng CAPTCHA kapag nagla-log in. Mangyaring mag-log in nang direkta sa mytischtennis.de upang malutas ang CAPTCHA, o makipag-ugnayan sa suporta.",
        "errors.ERROR_MYTISCHTENNIS_INVALID_PASSWORD" to "Di-wastong myTischtennis password.",
        "errors.ERROR_MYTISCHTENNIS_LOGIN_FAILED" to "Nabigo ang pag-login. Pakisuri ang iyong mga kredensyal.",
        "errors.ERROR_MYTISCHTENNIS_NO_PASSWORD_SAVED" to "Walang na-save na password at nag-expire ang session. Mangyaring ipasok ang iyong password.",
        "errors.ERROR_MYTISCHTENNIS_PASSWORD_NOT_SAVED" to "Walang na-save na password. Mangyaring ipasok ang iyong password.",
        "errors.ERROR_MYTISCHTENNIS_SESSION_EXPIRED" to "Nag-expire na ang session. Mangyaring mag-log in muli.",
        "errors.ERROR_MYTISCHTENNIS_USER_NOT_FOUND" to "myTischtennis user ay hindi nahanap.",
        "errors.ERROR_NOT_FOUND" to "Hindi nahanap.",
        "errors.ERROR_OFFICIAL_TOURNAMENT_PDF_UPLOAD" to "Error sa pag-upload ng PDF.",
        "errors.ERROR_SESSION_EXPIRED" to "Nag-expire na ang session.",
        "errors.ERROR_TEAM_LINK_TO_LEAGUE_REQUIRED" to "Mangyaring magtalaga muna ng liga sa koponan upang maproseso ang mga dokumento.",
        "errors.ERROR_TEAM_NOT_LINKED_TO_LEAGUE" to "Ang pangkat na ito ay hindi nakatalaga sa anumang liga.",
        "errors.ERROR_TEAM_PDF_LOAD_FAILED" to "Nabigong i-load ang PDF",
        "errors.ERROR_TEAM_STATS_LOAD_FAILED" to "Hindi ma-load ang mga istatistika",
        "errors.ERROR_TOURNAMENT_CLASS_NAME_REQUIRED" to "Mangyaring magpasok ng pangalan ng klase!",
        "errors.ERROR_TOURNAMENT_NO_DATE" to "Walang available na petsa ng tournament!",
        "errors.ERROR_TOURNAMENT_NO_PARTICIPANTS" to "Walang nahanap na kalahok sa araw ng pagsasanay para sa petsang ito!",
        "errors.ERROR_TOURNAMENT_NO_TRAINING_DAY" to "Walang nahanap na araw ng pagsasanay para kay {date}!",
        "errors.ERROR_TOURNAMENT_NO_VALID_PARTICIPANTS" to "Walang nakitang valid na kalahok sa araw ng pagsasanay para sa petsang ito!",
        "errors.ERROR_TOURNAMENT_NOT_FOUND" to "Hindi nahanap ang tournament",
        "errors.ERROR_TOURNAMENT_PDF_GENERATION_FAILED" to "Error sa Pagbuo ng PDF",
        "errors.ERROR_TOURNAMENT_SELECT_FIRST" to "Mangyaring pumili muna ng paligsahan.",
        "errors.ERROR_TRAINING_STATS_LOAD_FAILED" to "Error sa paglo-load ng mga istatistika ng pagsasanay",
        "errors.ERROR_UNAUTHORIZED" to "Hindi awtorisado.",
        "errors.ERROR_UNKNOWN_ERROR" to "May naganap na hindi kilalang error.",
        "errors.ERROR_USER_NOT_FOUND" to "Hindi Nahanap ang User.",
        "errors.ERROR_VALIDATION_FAILED" to "Nabigong pagpapatunay",
        "errors.SUCCESS_DIARY_GROUP_ASSIGNMENT_UPDATED" to "Na-update ang Group Mapping",
        "errors.SUCCESS_DIARY_MEMBER_CREATED" to "Ang miyembrong \"{name}\" ay matagumpay na nagawa at naidagdag!",
        "errors.SUCCESS_OFFICIAL_TOURNAMENT_PDF_UPLOAD" to "Matagumpay ang pag-upload.",
        "home.authenticatedFeatures.keepDiary" to "Panatilihin ang isang talaarawan sa pagsasanay",
        "home.authenticatedFeatures.keepDiaryDesc" to "Idokumento ang mga aktibidad sa pagsasanay, mga kalahok, mga aktibidad at mga tala para sa bawat araw ng pagsasanay.",
        "home.authenticatedFeatures.manageMembers" to "Pamahalaan ang mga miyembro",
        "home.authenticatedFeatures.manageMembersDesc" to "Pamahalaan ang iyong mga miyembro ng club, lumikha ng mga grupo ng pagsasanay at subaybayan ang lahat ng mga kalahok.",
        "home.authenticatedFeatures.manageTournaments" to "Pamahalaan ang mga paligsahan",
        "home.authenticatedFeatures.manageTournamentsDesc" to "Lumikha ng panloob at bukas na mga paligsahan, mag-import ng mga opisyal na paligsahan at pamahalaan ang mga entry.",
        "home.authenticatedFeatures.myTischtennisIntegration" to "Pagsasama ng MyTable Tennis",
        "home.authenticatedFeatures.myTischtennisIntegrationDesc" to "Awtomatikong i-synchronize ang mga resulta at istatistika ng laro sa MyTischtennis.de.",
        "home.authenticatedFeatures.pdfExport" to "Pag-export ng PDF",
        "home.authenticatedFeatures.pdfExportDesc" to "I-export ang mga araw ng pagsasanay bilang PDF kasama ng mga kalahok, aktibidad at istatistika.",
        "home.authenticatedFeatures.statistics" to "Mga istatistika at pagsusuri",
        "home.authenticatedFeatures.statisticsDesc" to "Kumuha ng detalyadong pagsasanay at mga pangkalahatang-ideya sa pakikilahok pati na rin ang mga istatistika ng aktibidad.",
        "home.authenticatedFeatures.teamManagement" to "Pamamahala ng pangkat",
        "home.authenticatedFeatures.teamManagementDesc" to "Pamahalaan ang mga koponan, liga, fixture at mga resulta para sa iyong club.",
        "home.authenticatedFeatures.trainingGroups" to "Mga pangkat at oras ng pagsasanay",
        "home.authenticatedFeatures.trainingGroupsDesc" to "Ayusin ang mga pangkat ng pagsasanay, tukuyin ang mga oras ng pagsasanay at pamahalaan ang mga takdang-aralin ng grupo.",
        "home.faq" to "Mga madalas itanong",
        "home.faqFree.answer" to "Oo, maaari kang magsimula nang libre. Maaaring sumunod ang mga extension sa ibang pagkakataon.",
        "home.faqFree.question" to "Libre ba itong gamitin?",
        "home.faqInstallation.answer" to "Hindi, ito ay isang web application. Direkta mong ginagamit ito sa browser – sa desktop, tablet at smartphone.",
        "home.faqInstallation.question" to "Kailangan ko ba ng pag-install?",
        "home.faqMyTischtennis.answer" to "Oo, pagkatapos ng setup, awtomatikong nagsi-synchronize ang application sa MyTischtennis.de at nag-import ng mga resulta at istatistika ng laro.",
        "home.faqMyTischtennis.question" to "Awtomatikong gumagana ba ang MyTischtennis integration?",
        "home.faqPermissions.answer" to "May apat na tungkulin: Admin, Coach, Team Leader at Miyembro. Ang bawat tungkulin ay may mga partikular na pahintulot na maaaring i-customize.",
        "home.faqPermissions.question" to "Paano gumagana ang sistema ng awtorisasyon?",
        "home.faqPrivacy.answer" to "Umaasa kami sa ekonomiya ng data, mga transparent na pag-apruba, pag-access na nakabatay sa tungkulin at kumpletong log ng aktibidad. Ang application ay sumusunod sa GDPR.",
        "home.faqPrivacy.question" to "Paano ang tungkol sa proteksyon ng data?",
        "home.faqTournaments.answer" to "Maaari mong pamahalaan ang mga panloob na paligsahan, bukas na mga paligsahan at mga opisyal na paligsahan (hal. mula sa mga asosasyon). Maaaring ma-import ang mga opisyal na paligsahan.",
        "home.faqTournaments.question" to "Aling mga uri ng tournament ang sinusuportahan?",
        "home.faqTrainingGroups.answer" to "Oo, maaari kang lumikha ng mga grupo ng pagsasanay, tukuyin ang mga oras ng pagsasanay at magtalaga ng mga miyembro sa mga grupo. Ang talaarawan sa pagsasanay ay awtomatikong nagmumungkahi ng mga angkop na grupo at oras.",
        "home.faqTrainingGroups.question" to "Maaari ko bang pamahalaan ang mga pangkat at oras ng pagsasanay?",
        "home.features.activityLog" to "Log ng aktibidad",
        "home.features.activityLogDesc" to "Kumpletuhin ang pag-log ng lahat ng mga aksyon para sa transparency at traceability.",
        "home.features.keepDiary" to "Panatilihin ang isang talaarawan sa pagsasanay",
        "home.features.keepDiaryDesc" to "Idokumento ang nilalaman, saklaw at pagdalo ng bawat yunit – naiintindihan at nakabalangkas.",
        "home.features.manageMembers" to "Pamahalaan ang mga miyembro",
        "home.features.manageMembersDesc" to "Lumikha ng mga profile ng miyembro, bumuo ng mga grupo at panatilihing napapanahon ang mga katayuan sa pakikipag-ugnayan at pag-apruba.",
        "home.features.myTischtennisIntegration" to "Pagsasama ng MyTable Tennis",
        "home.features.myTischtennisIntegrationDesc" to "Awtomatikong pag-synchronize sa MyTischtennis.de para sa mga resulta at istatistika ng laro.",
        "home.features.officialTournaments" to "Mga opisyal na paligsahan",
        "home.features.officialTournamentsDesc" to "Mag-import at pamahalaan ang mga opisyal na paligsahan, pamahalaan ang mga entry at resulta.",
        "home.features.organizeSchedules" to "Ayusin ang mga plano sa laro",
        "home.features.organizeSchedulesDesc" to "Magplano ng mga laro, paligsahan at kaganapan kabilang ang mga grupo, round at resulta.",
        "home.features.pdfExport" to "Pag-export ng PDF",
        "home.features.pdfExportDesc" to "I-export ang mga araw ng pagsasanay bilang PDF kasama ng mga kalahok, aktibidad at istatistika.",
        "home.features.permissionSystem" to "Sistema ng awtorisasyon",
        "home.features.permissionSystemDesc" to "Pag-access na nakabatay sa tungkulin (admin, coach, team captain, miyembro) na may mga indibidwal na pahintulot.",
        "home.features.predefinedActivities" to "Mga paunang natukoy na aktibidad",
        "home.features.predefinedActivitiesDesc" to "Gumamit ng mga template para sa mga paulit-ulit na pagsasanay at pabilisin ang iyong dokumentasyon.",
        "home.features.security" to "Seguridad at GDPR",
        "home.features.securityDesc" to "Ang arkitektura na angkop sa proteksyon ng data, mga pag-apruba ng miyembro at transparent na pag-access.",
        "home.features.statistics" to "Mga istatistika at pagsusuri",
        "home.features.statisticsDesc" to "Tumanggap ng mga pangkalahatang-ideya ng pagsasanay at pakikilahok, kilalanin ang pag-unlad at partikular na magplano.",
        "home.features.teamManagement" to "Pamamahala ng pangkat",
        "home.features.teamManagementDesc" to "Pamahalaan ang mga koponan, liga, fixture at mga resulta para sa iyong club.",
        "home.features.trainingGroups" to "Mga pangkat at oras ng pagsasanay",
        "home.features.trainingGroupsDesc" to "Ayusin ang mga pangkat ng pagsasanay, tukuyin ang mga oras ng pagsasanay at pamahalaan ang mga takdang-aralin ng grupo.",
        "home.forWhom" to "Para kanino ang training diary?",
        "home.forWhomText" to "Ang TrainingDiary ay ang komprehensibong platform para sa mga club, departamento at coaching team. Pinagsasama nito ang pamamahala ng miyembro sa mga grupo at oras ng pagsasanay, detalyadong talaarawan sa pagsasanay, komprehensibong organisasyon ng paligsahan (panloob, bukas at opisyal na mga torneo), pamamahala ng koponan na may pagsasama-sama ng liga, pag-synchronize ng MyTischtennis, makabuluhang istatistika at pagsusuri pati na rin ang isang flexible na sistema ng awtorisasyon sa isang modernong web application. Sa pamamagitan ng malinaw na mga tungkulin (admin, tagapagsanay, pinuno ng pangkat, miyembro) at mga indibidwal na awtorisasyon, ang mga responsable ay nagpapanatili ng kontrol, habang ang mga miyembro ay maaaring lumahok sa isang self-determinadong paraan. Tamang-tama para sa koponan, raketa at indibidwal na sports - mula junior hanggang advanced na antas. Sumusunod ang GDPR sa mga transparent na pag-apruba at buong log ng aktibidad.",
        "home.haveAccount" to "May account na ako",
        "home.heroFeatures.memberManagement" to "Pamamahala ng miyembro at pangkat",
        "home.heroFeatures.myTischtennis" to "Pagsasama ng MyTable Tennis",
        "home.heroFeatures.statistics" to "Mga istatistika at pagsusuri",
        "home.heroFeatures.teamManagement" to "Pamamahala ng Koponan at Mga Liga",
        "home.heroFeatures.tournaments" to "Mga paligsahan (panloob, bukas, opisyal)",
        "home.heroFeatures.trainingDiary" to "Diary ng pagsasanay at dokumentasyon",
        "home.heroFeatures.trainingGroups" to "Mga grupo ng pagsasanay at oras ng pagsasanay",
        "home.heroSubtitle" to "Ang TrainingDiary ay ang komprehensibong solusyon para sa mga club: pamamahala ng miyembro, mga grupo ng pagsasanay, mga oras ng pagsasanay, talaarawan ng pagsasanay, organisasyon ng paligsahan, pamamahala ng koponan, pagsasama ng MyTable Tennis, mga istatistika at higit pa - sumusunod sa GDPR at madaling gamitin.",
        "home.heroTitle" to "Pamamahala ng club, pagpaplano ng pagsasanay at mga paligsahan - lahat sa isang lugar",
        "home.howItWorks" to "Ito ay kung paano ito gumagana",
        "home.registerNow" to "Magrehistro ngayon nang libre",
        "home.rolesAndPrivacy" to "Mga tungkulin, pahintulot, at GDPR",
        "home.startFree" to "Magsimula nang libre",
        "home.step1.description" to "Lumikha ng isang account nang libre at i-activate ito sa pamamagitan ng email.",
        "home.step1.title" to "Magrehistro",
        "home.step2.description" to "Lumikha ng iyong club, mag-imbita ng mga miyembro at mag-set up ng mga grupo.",
        "home.step2.title" to "Gumawa ng club",
        "home.step3.description" to "Magplano ng mga appointment, magdokumento ng pagsasanay at subaybayan ang pag-unlad.",
        "home.step3.title" to "Plano at dokumento",
        "home.welcome" to "Maligayang pagdating sa talaarawan ng pagsasanay",
        "home.welcomeBack" to "Maligayang pagbabalik! Matagumpay kang naka-log in.",
        "home.whatCanYouDo" to "Ano ang maaari mong gawin sa talaarawan ng pagsasanay?",
        "imageDialog.close" to "Isara",
        "imageDialog.noImageAvailable" to "Walang available na larawan",
        "imageDialog.title" to "Screen",
        "imageViewer.camera" to "Camera",
        "imageViewer.delete" to "Tanggalin",
        "imageViewer.deleteImage" to "Tanggalin ang larawan",
        "imageViewer.nextImage" to "Susunod na larawan",
        "imageViewer.noImageAvailable" to "Walang available na larawan",
        "imageViewer.previousImage" to "nakaraang larawan",
        "imageViewer.rotateLeft" to "I-rotate 90° Kaliwa",
        "imageViewer.rotateRight" to "I-rotate 90° Pakanan",
        "imageViewer.selectFiles" to "Piliin ang Mga File",
        "imageViewer.setAsPrimary" to "itakda bilang pangunahing imahe",
        "imageViewer.setAsPrimaryButton" to "Itakda ang itinatampok na larawan",
        "imprint.contact" to "Makipag-ugnayan",
        "imprint.serviceProvider" to "Pangalan ng service provider",
        "imprint.title" to "Legal na paunawa",
        "languages.de" to "Deutsch (Aleman)",
        "languages.de-CH" to "Schwiizerdütsch (Swiss Aleman)",
        "languages.en-AU" to "English (Ingles (AU))",
        "languages.en-GB" to "English (Ingles (GB))",
        "languages.en-US" to "English (Ingles (US))",
        "languages.es" to "Español (Espanyol)",
        "languages.fil" to "Filipino",
        "languages.fr" to "Français (Pranses)",
        "languages.it" to "Italiano (Italyano)",
        "languages.ja" to "日本語 (Hapones)",
        "languages.pl" to "Polski (Polako)",
        "languages.th" to "Thai (ไทย)",
        "languages.tl" to "Tagalog",
        "languages.zh" to "中文 (Intsik)",
        "legal.backToHome" to "Bumalik sa homepage",
        "legal.imprint" to "Legal na paunawa",
        "legal.privacyPolicy" to "Patakaran sa privacy",
        "logs.actions" to "Mga aksyon",
        "logs.all" to "Lahat",
        "logs.apiRequests" to "Mga Kahilingan sa API",
        "logs.applyFilters" to "Ilapat ang filter",
        "logs.backend" to "Mga Setting ng Backend",
        "logs.clearFilters" to "Ibalik",
        "logs.cronJobs" to "Mga Trabaho sa Cron",
        "logs.details" to "Details",
        "logs.displayed" to "ipinapakita",
        "logs.displayedLabel" to "Tiningnan",
        "logs.error" to "Error",
        "logs.errorLabel" to "Error",
        "logs.errorLoading" to "Error sa paglo-load ng mga log",
        "logs.executionTime" to "Oras ng pagpapatupad",
        "logs.from" to "Mula sa",
        "logs.httpMethod" to "Paraan ng HTTP",
        "logs.justNow" to "ngayon lang",
        "logs.loadingLogs" to "Naglo-load ng mga log...",
        "logs.logDetails" to "Detalye ng Log",
        "logs.logDetailsLabels.error" to "Error",
        "logs.logDetailsLabels.executionTime" to "Oras ng pagpapatupad",
        "logs.logDetailsLabels.ip" to "IP",
        "logs.logDetailsLabels.method" to "Pamamaraan",
        "logs.logDetailsLabels.path" to "landas",
        "logs.logDetailsLabels.requestBody" to "Request Body",
        "logs.logDetailsLabels.responseBody" to "Response Body",
        "logs.logDetailsLabels.schedulerJob" to "Trabaho ng Scheduler",
        "logs.logDetailsLabels.status" to "katayuan",
        "logs.logDetailsLabels.time" to "Oras",
        "logs.logDetailsLabels.type" to "Uri",
        "logs.logType" to "Uri ng Log",
        "logs.logTypeLabels.api_request" to "Kahilingan sa API",
        "logs.logTypeLabels.cron_job" to "Cron Job",
        "logs.logTypeLabels.manual" to "Manwal",
        "logs.logTypeLabels.scheduler" to "scheduler",
        "logs.manual" to "Mga Manu-manong Pagpapatupad",
        "logs.method" to "Pamamaraan",
        "logs.minutesAgo" to "{n} minuto ang nakalipas",
        "logs.mytischtennis" to "myTischtennis",
        "logs.next" to "Susunod",
        "logs.of" to "sa pamamagitan ng",
        "logs.ownBackend" to "Sariling backend",
        "logs.page" to "Pahina",
        "logs.path" to "landas",
        "logs.pathPlaceholder" to "hal. /api/diary",
        "logs.previous" to "Nakaraang",
        "logs.recordsFound" to "Nahanap ang mga tala",
        "logs.scheduler" to "scheduler",
        "logs.secondsAgo" to "{n} segundo ang nakalipas",
        "logs.status" to "katayuan",
        "logs.subtitle" to "Pangkalahatang-ideya ng lahat ng kahilingan, tugon at pagpapatupad ng API",
        "logs.successfullyLoaded" to "Matagumpay na na-load",
        "logs.time" to "Oras",
        "logs.title" to "Mga Log ng System",
        "logs.to" to "Upang",
        "logs.total" to "Kabuuan",
        "logs.type" to "Uri",
        "matchReport.analyzeNuscore" to "pagsusuri ng nuscore",
        "matchReport.createLocalCopy" to "Lumikha ng lokal na kopya",
        "matchReport.hideAnalyzer" to "Itago ang Analyzer",
        "matchReportApi.availablePlayers" to "Mga Magagamit na Manlalaro",
        "matchReportApi.bothTeamsAppeared" to "Ang dalawang koponan ay naglaban-laban",
        "matchReportApi.clickToRemove" to "I-click upang alisin",
        "matchReportApi.completed" to "sarado",
        "matchReportApi.completion" to "Pagkumpleto",
        "matchReportApi.endTime" to "oras ng pagtatapos",
        "matchReportApi.errorLoading" to "Error sa paglo-load ng data",
        "matchReportApi.general" to "Heneral",
        "matchReportApi.greeting" to "Pagtanggap",
        "matchReportApi.guestLineup" to "Setup ng bisita",
        "matchReportApi.guestPin" to "PIN Guest Club",
        "matchReportApi.guestTeamNotAppeared" to "Hindi nakipagkumpitensya ang guest team na si {team}",
        "matchReportApi.homeLineup" to "Pag-install sa bahay",
        "matchReportApi.homePin" to "PIN Home Club",
        "matchReportApi.homeTeamNotAppeared" to "Ang home team {team} ay hindi lumaban",
        "matchReportApi.loading" to "Nilo-load ang data ng ulat ng pagtutugma...",
        "matchReportApi.noLineupData" to "Walang available na data sa pag-install",
        "matchReportApi.notAppeared" to "Hindi lumahok para sa lahat",
        "matchReportApi.pending" to "Nakabinbin",
        "matchReportApi.pinInput" to "PIN input",
        "matchReportApi.playSystem" to "Sistema ng paglalaro",
        "matchReportApi.rank" to "Bilog",
        "matchReportApi.result" to "Pagpasok ng mga resulta",
        "matchReportApi.retry" to "Subukan muli",
        "matchReportApi.selectedPlayers" to "Napiling Manlalaro",
        "matchReportApi.setCurrentTime" to "Itakda ang kasalukuyang oras",
        "matchReportApi.signLineup" to "Pag-install ng sign",
        "matchReportApi.startTime" to "oras ng pagsisimula",
        "matchReportApi.status" to "katayuan",
        "matchReportApi.vs" to "vs",
        "matchReportHeaderActions.copied" to "Kinopya!",
        "matchReportHeaderActions.copyError" to "Error sa pagkopya ng pin",
        "matchReportHeaderActions.copyPin" to "Kopyahin ang PIN",
        "matchReportHeaderActions.copyPinTitle" to "Kopyahin sa clipboard",
        "matchReportHeaderActions.insertPin" to "INSERT IYONG PIN",
        "matchReportHeaderActions.insertPinTitle" to "Auto insert",
        "matchReportHeaderActions.noPinAvailable" to "Walang PIN na AVAILABLE",
        "memberActivities.activity" to "Mag-ehersisyo",
        "memberActivities.all" to "Lahat",
        "memberActivities.close" to "Isara",
        "memberActivities.dates" to "Data",
        "memberActivities.frequency" to "Dalas",
        "memberActivities.last3Months" to "Huling 3 buwan",
        "memberActivities.last4Weeks" to "huling 2 buwan",
        "memberActivities.last6Months" to "noong nakaraang kalahating taon",
        "memberActivities.lastYear" to "Noong nakaraang taon",
        "memberActivities.loading" to "Naglo-load ng mga ehersisyo...",
        "memberActivities.more" to "iba pa",
        "memberActivities.noActivities" to "Walang nakitang ehersisyo sa napiling panahon.",
        "memberActivities.period" to "tagal ng panahon",
        "memberActivities.showLess" to "magpakita ng mas kaunti",
        "memberActivities.title" to "Mga ehersisyo ni",
        "memberGallery.imageSize" to "Laki ng Larawan",
        "memberGallery.loading" to "Nilo-load ang gallery...",
        "memberGallery.noImage" to "Walang Imahe",
        "memberGallery.noMembersWithImages" to "Walang nakitang miyembro na may mga larawan.",
        "memberGallery.title" to "Gallery ng mga Miyembro",
        "memberGallery.titleWithDate" to "Gallery ng Miyembro - Mag-click sa isang imahe upang idagdag bilang isang kalahok",
        "memberNotes.add" to "Idagdag",
        "memberNotes.memberImage" to "Miyembro ng Larawan",
        "memberNotes.newNote" to "Bagong tala",
        "memberNotes.notes" to "Mga Tala",
        "memberNotes.phone" to "Telepono no.",
        "memberNotes.selectTags" to "Piliin ang Mga Tag",
        "memberNotes.tags" to "Tags",
        "memberNotes.title" to "Mga tala para sa",
        "members.actions" to "Mga aksyon",
        "members.active" to "Aktibo",
        "members.activeMembers" to "Mga aktibong miyembro",
        "members.addEmail" to "Magdagdag ng email address",
        "members.addGroup" to "Magdagdag ng grupo...",
        "members.addPhone" to "Magdagdag ng numero ng telepono",
        "members.address" to "Address",
        "members.adultReleaseApproved" to "Aprubado para sa matatanda",
        "members.adultReserveApproved" to "Pang-adultong reserba",
        "members.adults" to "Adulto (20+)",
        "members.age" to "Edad",
        "members.ageFromPlaceholder" to "mula",
        "members.ageGroup" to "Pangkat ng edad",
        "members.ageRange" to "Edad mula - hanggang",
        "members.ageToPlaceholder" to "hanggang",
        "members.batchFormsMarkedEmpty" to "Walang mga hindi na-verify na form sa kasalukuyang pagpili.",
        "members.batchFormsMarkedSuccess" to "Minarkahan ang {count} (mga) form bilang na-verify.",
        "members.batchMarkedRegularEmpty" to "Walang trial na miyembro sa kasalukuyang pagpili.",
        "members.batchMarkedRegularSuccess" to "Minarkahan ang {count} (mga) miyembro ng pagsubok bilang regular.",
        "members.batchPartialFailure" to "{success} ay nagtagumpay, {failed} ay nabigo.",
        "members.birthdate" to "Petsa ng kapanganakan",
        "members.bulkActions" to "Mga bulk action",
        "members.camera" to "Camera",
        "members.change" to "Baguhin",
        "members.city" to "Lungsod",
        "members.clearFields" to "Burahin ang mga field",
        "members.clearFilters" to "I-reset ang mga filter",
        "members.clickTtRequestAction" to "Humiling ng pagiging kwalipikado ng click-TT",
        "members.clickTtRequestConfirm" to "Simulan ang awtomatikong Click-TT na kahilingan para sa {name}?",
        "members.clickTtRequestError" to "Hindi maisumite ang kahilingan sa Click-TT.",
        "members.clickTtRequestFailedLog" to "Nabigo ang kahilingan sa Click-TT",
        "members.clickTtRequestHint" to "Ang kahilingan ay awtomatikong pinoproseso ng backend Click-TT workflow.",
        "members.clickTtRequestPending" to "Kasalukuyang isinasagawa ang kahilingan sa Click-TT",
        "members.clickTtRequestPendingShort" to "Nakabinbin...",
        "members.clickTtRequestShort" to "I-click ang TT",
        "members.clickTtRequestSuccess" to "Mangyaring mag-sign in sa click-tt at isumite ang kahilingan doon.",
        "members.clickTtRequestTitle" to "Simulan ang kahilingan sa Click-TT",
        "members.clickTtSubmitted" to "Naisumite ang Click-TT",
        "members.closeEditor" to "Isara ang editor",
        "members.composeEmail" to "Gumawa ng email",
        "members.contact" to "Makipag-ugnayan",
        "members.copyContactSummary" to "Kopyahin ang buod ng contact",
        "members.copyContactSummarySuccess" to "Nakopya ang buod ng contact sa clipboard.",
        "members.copyEmails" to "Kopyahin ang mga email",
        "members.copyEmailsEmpty" to "Walang mga email address sa kasalukuyang pagpili.",
        "members.copyEmailsSuccess" to "Nakopya ang listahan ng email sa clipboard.",
        "members.copyPhones" to "Kopyahin ang mga telepono",
        "members.copyPhonesEmpty" to "Walang mga numero ng telepono sa kasalukuyang pagpili.",
        "members.copyPhonesSuccess" to "Nakopya ang listahan ng telepono sa clipboard.",
        "members.create" to "Lumikha",
        "members.createNewMember" to "Lumikha ng bagong miyembro",
        "members.dataIssueAddress" to "Kulang ang address",
        "members.dataIssueBirthdate" to "Kulang ang petsa ng kapanganakan",
        "members.dataIssueCity" to "Kulang ang lungsod",
        "members.dataIssueEmail" to "Kulang ang email",
        "members.dataIssueGender" to "Hindi malinaw ang kasarian",
        "members.dataIssuePhone" to "Kulang ang telepono",
        "members.dataIssuePostalCode" to "Kulang ang postal code",
        "members.dataIssueStreet" to "Kulang ang kalye",
        "members.dataIssueTrainingGroup" to "Kulang ang grupo ng pagsasanay",
        "members.dataQuality" to "Kalidad ng datos",
        "members.dataQualityComplete" to "Kumpleto ang datos",
        "members.deactivateMember" to "I-deactivate ang miyembro",
        "members.deactivateMemberConfirm" to "Sigurado ka bang ide-deactivate si \"{name}\"?",
        "members.deactivateMemberTitle" to "I-deactivate ang miyembro",
        "members.deleteImageConfirm" to "Gusto mo ba talagang tanggalin ang larawang ito?",
        "members.deleteImageTitle" to "Tanggalin ang larawan",
        "members.editHint" to "Mag-click sa isang row para buksan ang editor.",
        "members.editMember" to "I-edit ang miyembro",
        "members.editorAssignTrainingGroupHint" to "Mangyaring magtalaga ng kahit isang grupo ng pagsasanay.",
        "members.editorCreateHint" to "Lumikha ng bagong miyembro at direktang kumuha ng mga detalye ng contact.",
        "members.editorEditHint" to "I-edit ang mga detalye para sa {name}.",
        "members.editorRecommendedEntry" to "Inirerekomendang entry",
        "members.emailAddress" to "Email address",
        "members.emailAddressShort" to "Email",
        "members.emails" to "Mga email address",
        "members.errorAddingToGroup" to "Error sa pagdagdag sa grupo",
        "members.errorDeactivatingMember" to "Error sa pag-deactivate ng miyembro",
        "members.errorDeletingImage" to "Hindi mabura ang larawan",
        "members.errorLoadingImage" to "Error sa pag-load ng larawan",
        "members.errorLoadingMembers" to "Nabigong i-load ang listahan ng miyembro.",
        "members.errorLoadingTrainingParticipations" to "Error sa pag-load ng paglahok sa pagsasanay",
        "members.errorMarkingForm" to "Error sa pagmamarka ng form.",
        "members.errorRemovingFromGroup" to "Error sa pag-alis mula sa grupo",
        "members.errorRemovingTestMembership" to "Error sa pag-alis ng trial membership.",
        "members.errorRotatingImage" to "Error sa pag-ikot ng larawan",
        "members.errorSavingMember" to "Error sa pag-save ng miyembro",
        "members.errorSettingPrimaryImage" to "Hindi maitakda ang pangunahing larawan",
        "members.errorTransfer" to "Error sa paglipat",
        "members.errorUpdatingRatings" to "Error sa pag-update ng mga TTR/QTTR value",
        "members.errorUploadingImage" to "Hindi ma-upload ang larawan",
        "members.exercises" to "Mga ehersisyo",
        "members.exportCsv" to "I-export ang CSV",
        "members.exportCsvFile" to "member-selection.csv",
        "members.exportEmails" to "Email",
        "members.exportMembersSelected" to "mga miyembro na kasalukuyang napili",
        "members.exportPhones" to "Telepono",
        "members.exportPreview" to "I-export ang preview",
        "members.exportPreviewEmpty" to "Walang miyembro sa kasalukuyang pagpili",
        "members.exportPreviewNames" to "Silipin",
        "members.exportReachableByEmail" to "na may email address",
        "members.exportReachableByPhone" to "na may numero ng telepono",
        "members.firstName" to "Pangalan",
        "members.formHandedOver" to "Naibigay na ang form ng miyembro",
        "members.formMarkedAsHandedOver" to "Namarkahan bilang naibigay na ang form ng miyembro.",
        "members.gender" to "Kasarian",
        "members.genderDiverse" to "Iba pa",
        "members.genderFemale" to "Babae",
        "members.genderMale" to "Lalaki",
        "members.genderUnknown" to "Hindi alam",
        "members.generatePhoneList" to "Gumawa ng listahan ng telepono",
        "members.groupPhotoCrop" to "Iproseso ang group photo",
        "members.groupPhotoCropSaved" to "Na-save ang larawan ng miyembro mula sa group photo.",
        "members.image" to "Larawan",
        "members.imageDeleted" to "Nabura na ang larawan.",
        "members.imageInternet" to "Larawan (net?)",
        "members.imagePreview" to "Preview ng larawan ng miyembro",
        "members.imageUpdated" to "Na-update na ang larawan",
        "members.inactive" to "hindi aktibo",
        "members.inactiveMembers" to "Mga hindi aktibong miyembro",
        "members.j11" to "U11",
        "members.j13" to "U13",
        "members.j15" to "U15",
        "members.j17" to "J17 (17 pababa)",
        "members.j19" to "U19",
        "members.j9" to "U9",
        "members.lastName" to "Apelyido",
        "members.lastTrainingFilter" to "Huling training",
        "members.lastTrainingFilterHasDate" to "May petsa",
        "members.lastTrainingFilterHint" to "Table: kasalukuyang season sa AK. Buong detalye (dalawang season, huling training, participations) kapag-hover sa hilera.",
        "members.lastTrainingFilterNoDate" to "Walang huling training",
        "members.lastTrainingFilterNotInTraining" to "Flag na “hindi na nagte-training”",
        "members.loadingMembers" to "Nilo-load ang mga miyembro...",
        "members.m11" to "G11",
        "members.m13" to "G13",
        "members.m15" to "G15",
        "members.m19" to "G19",
        "members.m9" to "G9",
        "members.markFormReceived" to "Markahan ang form na na-verify",
        "members.markFormsForSelection" to "I-verify ang mga form para sa pagpili",
        "members.markRegular" to "Markahang regular",
        "members.markRegularForSelection" to "Markahan ang pagpili ng regular",
        "members.memberDeactivated" to "Na-deactivate na ang miyembro",
        "members.memberDetails" to "Mga detalye ng miyembro",
        "members.memberFormHandedOver" to "Naibigay na ang form ng miyembro",
        "members.memberImage" to "Larawan ng miyembro",
        "members.memberImages" to "Mga larawan ng miyembro",
        "members.memberInfo" to "Impormasyon ng miyembro",
        "members.memberScope" to "Saklaw ng miyembro",
        "members.missingTtrHistoryId" to "Walang naka-save na myTischtennis ID",
        "members.name" to "Apelyido, Pangalan",
        "members.newMember" to "Bagong miyembro",
        "members.noAddressShort" to "Walang address",
        "members.noEmailShort" to "Walang email",
        "members.noGroupsAssigned" to "Walang grupong nakatalaga",
        "members.noGroupsAvailable" to "Walang available na grupo",
        "members.noOpenTasks" to "Walang bukas na gawain",
        "members.noPhoneShort" to "Walang phone",
        "members.notes" to "Mga tala",
        "members.noTestMembership" to "Hindi na trial member",
        "members.notInTrainingTooltip" to "Walang paglahok para sa {weeks} na linggo ng pagsasanay",
        "members.onlyActiveMembers" to "Tanging mga aktibong miyembro lamang ang ilalabas",
        "members.openTasks" to "Buksan ang mga gawain",
        "members.parent" to "Magulang",
        "members.parentFallback" to "Magulang",
        "members.parentName" to "Pangalan (hal. ina, ama)",
        "members.phoneList" to "ListahanNgTelepono.pdf",
        "members.phoneListForSelection" to "Listahan ng telepono para sa pagpili",
        "members.phoneListSelectionFile" to "phone-list-selection.pdf",
        "members.phoneNumber" to "Numero ng telepono",
        "members.phoneNumberShort" to "Telepono",
        "members.phones" to "Mga numero ng telepono",
        "members.picsInInternetAllowed" to "Pinapayagan ang larawan sa internet",
        "members.postalCode" to "Postal code",
        "members.previewLastTraining" to "Huling pagsasanay",
        "members.previewNoLastTraining" to "Wala pang partisipasyon",
        "members.primary" to "Pangunahin",
        "members.primaryImageUpdated" to "Na-update na ang pangunahing larawan.",
        "members.remove" to "Alisin",
        "members.resultsVisible" to "nakikita ang mga miyembro",
        "members.rowTooltipSeparator" to "·",
        "members.scopeActive" to "Aktibo",
        "members.scopeActiveDataIncomplete" to "Aktibo + hindi kumpleto ang datos",
        "members.scopeActiveTest" to "Aktibo + pagsubok",
        "members.scopeAll" to "Lahat",
        "members.scopeDataIncomplete" to "Hindi kumpleto ang datos",
        "members.scopeInactive" to "Hindi aktibo",
        "members.scopeNeedsForm" to "Hindi na-verify ang form",
        "members.scopeNotTraining" to "Hindi na training",
        "members.scopeTest" to "Pagsubok",
        "members.search" to "Maghanap",
        "members.searchAndFilter" to "Paghahanap at mga filter",
        "members.searchPlaceholder" to "Maghanap ayon sa pangalan, lungsod, telepono o email",
        "members.selectFile" to "Pumili ng file",
        "members.showInactiveMembers" to "Ipakita ang mga hindi aktibong miyembro",
        "members.showTrainingParticipationsColumn" to "Ipakita ang column na « Training participations »",
        "members.showTtrHistory" to "Ipakita ang TTR history",
        "members.sixOrMoreParticipations" to "6 o higit pang paglahok sa pagsasanay",
        "members.sortAge" to "Edad",
        "members.sortBirthday" to "Birthday",
        "members.sortBy" to "Pagbukud-bukurin ayon sa",
        "members.sortFirstName" to "Pangalan",
        "members.sortLastName" to "Apelyido",
        "members.sortLastTraining" to "Huling pagsasanay",
        "members.sortOpenTasks" to "Buksan ang mga gawain",
        "members.sortQttr" to "Halaga ng QTTR",
        "members.status" to "katayuan",
        "members.street" to "Kalye",
        "members.subtitle" to "Direktang maghanap, mag-filter at mag-edit ng mga miyembro.",
        "members.taskActionMarkRegular" to "Markahang regular",
        "members.taskActionRequest" to "Kahilingan",
        "members.taskActionReview" to "Buksan",
        "members.taskActionVerify" to "I-verify",
        "members.taskAssignTrainingGroup" to "Magtalaga ng grupo ng pagsasanay",
        "members.taskCheckClickTt" to "Suriin ang pagiging karapat-dapat sa Click-TT",
        "members.taskCheckDataQuality" to "Suriin ang kalidad ng datos",
        "members.taskCheckTrainingStatus" to "Suriin ang katayuan ng pagsasanay",
        "members.taskReviewTrialStatus" to "Suriin ang katayuan ng pagsubok",
        "members.taskVerifyForm" to "I-verify ang form",
        "members.testMember" to "Pagsubok",
        "members.testMembers" to "Mga trial na miyembro",
        "members.testMembership" to "Trial membership",
        "members.testMembershipRemoved" to "Inalis na ang trial membership.",
        "members.threeOrMoreParticipations" to "3 o higit pang paglahok sa pagsasanay",
        "members.title" to "Mga miyembro",
        "members.toggleSortDirection" to "I-toggle ang direksyon ng pag-uuri",
        "members.trainingGroups" to "Mga grupo ng pagsasanay",
        "members.trainingParticipations" to "Paglahok sa pagsasanay",
        "members.transferErrorTitle" to "Error sa paglilipat",
        "members.transferMembers" to "Ilipat ang mga miyembro",
        "members.transferSuccessTitle" to "Matagumpay ang paglipat",
        "members.ttAdult" to "Adulto (hindi youth sa cutoff)",
        "members.ttAgeClassCol" to "Edad (TT)",
        "members.ttFilterGroupJ" to "Babae at lalaki (halo)",
        "members.ttFilterGroupM" to "Babae lamang",
        "members.ttrQttr" to "TTR/QTTR",
        "members.ttSeasonCurrentTag" to "kasalukuyan",
        "members.ttSeasonFilter" to "Season (cutoff)",
        "members.ttSeasonNextTag" to "susunod",
        "members.ttStichtagHint" to "Cutoff Enero 1 (DTTB). Lalaki: J lang. Babae: J at M.",
        "members.updateRatings" to "I-update ang TTR/QTTR mula sa myTischtennis",
        "members.updating" to "Nag-a-update...",
        "members.visibleMembers" to "Mga nakikitang miyembro",
        "members.wantsToPlay" to "Gustong maglaro",
        "memberSelection.close" to "Isara",
        "memberSelection.deselectAll" to "Alisin sa pagkakapili ang lahat",
        "memberSelection.generatePdf" to "Bumuo ng PDF",
        "memberSelection.members" to "Mga miyembro",
        "memberSelection.noRecommendations" to "Walang nakitang katugmang rekomendasyon.",
        "memberSelection.recommendations" to "Mga rekomendasyon",
        "memberSelection.selectAll" to "Piliin ang Lahat",
        "memberSelection.title" to "Pumili ng Mga Miyembro",
        "memberTransfer.additionalField" to "Dagdag na field",
        "memberTransfer.additionalFieldExample1" to "Karagdagang field (hal. client_id)",
        "memberTransfer.additionalFieldExample2" to "Karagdagang field (hal. client_secret)",
        "memberTransfer.analyzeAndImport" to "Pag-aralan at Pag-import ng Template",
        "memberTransfer.availablePlaceholders" to "Magagamit na mga placeholder",
        "memberTransfer.bulkMode" to "Bulk import mode (ilipat ang lahat ng miyembro nang sabay-sabay)",
        "memberTransfer.bulkModeActive" to "Aktibo ang mode",
        "memberTransfer.bulkModeActiveDescription" to "Tinutukoy ng template ang format para sa isang miyembro. Ang mga miyembro ay awtomatikong nakabalot sa isang array. Maaari mong opsyonal na tukuyin ang panlabas na istraktura sa \"template ng bulk wrapper\" (tingnan sa ibaba).",
        "memberTransfer.bulkModeHint" to "Kung pinagana, ang lahat ng miyembro sa isang kahilingan ay ililipat bilang isang array.",
        "memberTransfer.bulkWrapperDescription" to "Opsyonal, maaari mong tukuyin ang panlabas na istraktura kung saan ilalagay ang array ng miyembro. Gamitin ang PLACEHOLDER_MEMBERS bilang mga placeholder para sa hanay ng mga miyembro.",
        "memberTransfer.bulkWrapperNote" to "Tandaan: Kung walang tinukoy na template ng wrapper, awtomatikong ginagamit ang array ng mga miyembro.",
        "memberTransfer.bulkWrapperTemplate" to "Bulk wrapper template (opsyonal)",
        "memberTransfer.bulkWrapperWhat" to "Ano ang template ng bulk wrapper?",
        "memberTransfer.configDeleted" to "Matagumpay na natanggal ang configuration!",
        "memberTransfer.configInfo" to "I-configure ang mga setting para sa paglilipat ng mga miyembro sa mga external na system dito. Ang mga setting na ito ay nai-save sa isang batayan na partikular sa club.",
        "memberTransfer.configSaved" to "Matagumpay na na-save ang configuration",
        "memberTransfer.confirmDelete" to "Tanggalin ang configuration",
        "memberTransfer.confirmDeleteMessage" to "Sigurado ka bang gusto mong i-refund ang transaksyong ito?",
        "memberTransfer.deleteConfig" to "Tanggalin ang configuration",
        "memberTransfer.deleting" to "paglilinis...",
        "memberTransfer.errorDeleting" to "Error sa pag-clear",
        "memberTransfer.errorLoading" to "Error sa Paglo-load ng Config",
        "memberTransfer.errorParsingTemplate" to "Error sa pag-parse ng template",
        "memberTransfer.errorSaving" to "Error habang nagse-save",
        "memberTransfer.example" to "Halimbawa",
        "memberTransfer.exampleFormData" to "Halimbawa ng format ng data ng form",
        "memberTransfer.exampleJson" to "Halimbawa ng JSON format (inirerekomenda)",
        "memberTransfer.exampleXml" to "Halimbawa ng XML format",
        "memberTransfer.formDataHint" to "Para sa data ng form, gumamit ng simpleng text template na may mga linya sa format na feldname=placeholder:",
        "memberTransfer.httpMethod" to "Paraan ng HTTP",
        "memberTransfer.importTemplate" to "Mag-import ng template mula sa buong halimbawa",
        "memberTransfer.importTemplateHint" to "Isama ang isang buong sample na template (na may mga sample na miyembro). Awtomatikong makikita ng system ang template ng miyembro at template ng bulk wrapper.",
        "memberTransfer.importTemplatePlaceholder" to "Maglagay ng buong halimbawang template dito, hal.:\nLBRACE\n  Disyembre: [\n    LBRACE\n      D .firstNameD.: D .MaxD.,\n      D. ApelyidoD.: D. MustermannD.,\n      DMail: DMaxATexample.comMail: DMaxATexample.com\n    RBRACE\n  ]\nRBRACE",
        "memberTransfer.invalidJson" to "Pakitiyak na wastong JSON ang ginagamit.",
        "memberTransfer.invalidTemplateFormat" to "Di-wastong format ng template",
        "memberTransfer.loadingConfig" to "Nilo-load ang configuration...",
        "memberTransfer.loginConfiguration" to "Pag-login Configuration",
        "memberTransfer.loginData" to "Data ng pag-login",
        "memberTransfer.loginEndpointHint" to "Opsyonal: Kaugnay na landas sa pag-login endpoint (hal. /api/auth/login)",
        "memberTransfer.loginEndpointPath" to "Path ng Endpoint sa Pag-login",
        "memberTransfer.loginEndpointPlaceholder" to "/api/auth/login",
        "memberTransfer.loginFormat" to "Format ng Pag-login",
        "memberTransfer.membersArray" to "Array ng Miyembro",
        "memberTransfer.password" to "Password",
        "memberTransfer.passwordEncrypted" to "Ang mga password ay naka-imbak na naka-encrypt.",
        "memberTransfer.placeholderHint" to "Mag-click sa isang placeholder upang ipasok ito sa kasalukuyang posisyon ng cursor:",
        "memberTransfer.placeholders.address" to "Pinagsamang Address",
        "memberTransfer.placeholders.addressDesc" to "Pinagsamang kalye at bayan",
        "memberTransfer.placeholders.birthDate" to "Petsa ng kapanganakan",
        "memberTransfer.placeholders.birthDateAlt" to "Petsa ng kapanganakan (luma)",
        "memberTransfer.placeholders.birthDateAltDesc" to "Petsa ng kapanganakan sa format na YYYY-MM-DD (alternatibong pangalan)",
        "memberTransfer.placeholders.birthDateDesc" to "sa format na YYYY-MM-DD",
        "memberTransfer.placeholders.city" to "Lokasyon",
        "memberTransfer.placeholders.cityDesc" to "Lugar ng Paninirahan",
        "memberTransfer.placeholders.email" to "Email Address",
        "memberTransfer.placeholders.emailDesc" to "Email address ng miyembro",
        "memberTransfer.placeholders.firstName" to "Pangalan",
        "memberTransfer.placeholders.firstNameDesc" to "Pangalan ng Miyembro",
        "memberTransfer.placeholders.fullName" to "Buong pangalan",
        "memberTransfer.placeholders.fullNameDesc" to "Pinagsama ang pangalan at apelyido",
        "memberTransfer.placeholders.gender" to "kasarian",
        "memberTransfer.placeholders.genderDesc" to "Kasarian ng miyembro",
        "memberTransfer.placeholders.lastName" to "Apelyido",
        "memberTransfer.placeholders.lastNameDesc" to "Apelyido ng Miyembro",
        "memberTransfer.placeholders.phone" to "Numero ng Telepono",
        "memberTransfer.placeholders.phoneDesc" to "Telepono ng Miyembro ng Staff",
        "memberTransfer.placeholders.qttr" to "halaga ng QTTR",
        "memberTransfer.placeholders.qttrDesc" to "Halaga ng QTTR ng Miyembro",
        "memberTransfer.placeholders.street" to "kalye",
        "memberTransfer.placeholders.streetDesc" to "Numero ng kalye at bahay",
        "memberTransfer.placeholders.ttr" to "halaga ng TTR",
        "memberTransfer.placeholders.ttrDesc" to "Halaga ng TTR ng Miyembro",
        "memberTransfer.save" to "I-save",
        "memberTransfer.saving" to "Nagse-save...",
        "memberTransfer.serverBaseUrl" to "URL ng Server Base",
        "memberTransfer.serverBaseUrlHint" to "Base URL ng server (hal. https://example.com)",
        "memberTransfer.serverBaseUrlPlaceholder" to "https://example.com",
        "memberTransfer.serverConfiguration" to "Server-configuration",
        "memberTransfer.templateDescription" to "Tinutukoy ng template ang format kung saan inililipat ang data ng miyembro sa panlabas na sistema. Gumamit ng mga placeholder gaya ng PLACEHOLDER_FIRSTNAME upang awtomatikong palitan ang data.",
        "memberTransfer.templateImported" to "Matagumpay na na-import ang template.",
        "memberTransfer.templateImportedBulk" to "May nakitang template ng miyembro, pinagana ang bulk mode.",
        "memberTransfer.templateImportedDetails" to "Ang mga template ng miyembro at bulk wrapper ay nakita at nakumpleto.",
        "memberTransfer.templateImportedSingle" to "May nakitang template ng isang miyembro.",
        "memberTransfer.templateTip" to "Tip: Ilagay ang cursor sa gustong lugar sa template at mag-click sa isang placeholder para ipasok ito. Ang mga placeholder ay awtomatikong pinapalitan ng aktwal na data ng miyembro kapag inilipat ang mga ito.",
        "memberTransfer.templateWhat" to "Ano ang isang template?",
        "memberTransfer.title" to "Paglipat ng Miyembro - Mga Setting",
        "memberTransfer.transferConfiguration" to "Configuration ng Transmission",
        "memberTransfer.transferConfigurationTitle" to "Configuration ng Transmission",
        "memberTransfer.transferEndpointHint" to "Relatibong path sa transmission endpoint (hal. /api/members/bulk)",
        "memberTransfer.transferEndpointPath" to "Landas ng Endpoint ng Transmission",
        "memberTransfer.transferEndpointPlaceholder" to "/api/members/bulk",
        "memberTransfer.transferFormat" to "Format ng paghahatid",
        "memberTransfer.transferTemplate" to "Template ng Paglipat",
        "memberTransfer.usernameEmail" to "Username / email",
        "memberTransferDialog.additionalErrors" to "karagdagang mga pagkakamali",
        "memberTransferDialog.additionalFieldPlaceholder" to "Karagdagang field (hal. client_id)",
        "memberTransferDialog.additionalFieldPlaceholderForm" to "Pangalan ng field: Value (hal. client_id: abc123)",
        "memberTransferDialog.bulkImport" to "Bultuhang Pag-import",
        "memberTransferDialog.cancel" to "Kanselahin",
        "memberTransferDialog.editConfig" to "I-edit ang configuration.",
        "memberTransferDialog.endpoint" to "Endpoint",
        "memberTransferDialog.excludedMembers" to "Mga ibinukod na miyembro (nawawalang mandatoryong field)",
        "memberTransferDialog.format" to "Format",
        "memberTransferDialog.goToSettings" to "Mga Setting Saan pupunta?",
        "memberTransferDialog.loadingConfig" to "Nilo-load ang naka-save na configuration",
        "memberTransferDialog.loginData" to "Data ng pag-login",
        "memberTransferDialog.loginDataHint" to "Ang mga detalye sa pag-log in ay ginagamit mula sa mga setting. Maaari mong i-overwrite ang mga ito dito kung kinakailangan.",
        "memberTransferDialog.loginDataOverride" to "Mga detalye sa pag-login (opsyonal na overwrite)",
        "memberTransferDialog.loginDataOverrideHint" to "Punan lamang kung gusto mong i-overwrite ang naka-save na data sa pag-log in. Ang mga walang laman na field ay gumagamit ng mga nakaimbak na halaga.",
        "memberTransferDialog.method" to "Pamamaraan",
        "memberTransferDialog.mode" to "mode",
        "memberTransferDialog.noConfigFound" to "Walang nahanap na configuration",
        "memberTransferDialog.noConfigMessage" to "Mangyaring i-configure muna ang paglipat ng miyembro sa mga setting.",
        "memberTransferDialog.passwordPlaceholder" to "Password (iwang blangko para sa nai-save)",
        "memberTransferDialog.server" to "Server",
        "memberTransferDialog.single" to "Walang asawa",
        "memberTransferDialog.title" to "Maglipat ng mga Miyembro",
        "memberTransferDialog.transfer" to "Inilipat",
        "memberTransferDialog.transferConfiguration" to "Configuration ng Transmission",
        "memberTransferDialog.transferError" to "Error sa panahon ng paghahatid",
        "memberTransferDialog.transferFailed" to "Nabigo ang paglipat",
        "memberTransferDialog.transferring" to "Nakikipag-usap...",
        "memberTransferDialog.transferSuccess" to "Matagumpay na nailipat ng {total} na miyembro ang {transferred}.",
        "memberTransferDialog.usernameEmail" to "Username / email",
        "messages.cancel" to "Kanselahin",
        "messages.confirm" to "Kumpirmahin",
        "messages.error" to "Error",
        "messages.fileTooLarge" to "Masyadong malaki ang file",
        "messages.imageMaxSize" to "Ang larawan ay dapat na isang maximum na 5 MB.",
        "messages.info" to "Impormasyon",
        "messages.invalidFile" to "Di-wastong file",
        "messages.note" to "Pansinin",
        "messages.pleaseSelectImageFile" to "Mangyaring pumili ng file ng imahe.",
        "messages.recordsDisplayed" to "ipinapakita",
        "messages.recordsFound" to "Nahanap ang mga tala",
        "messages.success" to "Tagumpay",
        "messages.successfullyLoaded" to "Matagumpay na na-load",
        "messages.warning" to "Babala",
        "mobile.active" to "Aktiv",
        "mobile.add" to "Hinzufügen",
        "mobile.appLoading" to "App wird geladen",
        "mobile.calendarAgendaEmpty" to "Walang appointment sa buwang ito.",
        "mobile.calendarAgendaTitle" to "Mga appointment sa buwan",
        "mobile.calendarAllSourcesFailed" to "Hindi ma-load ang kalendaryo.",
        "mobile.calendarCancellationEnd" to "Hanggang (opsyonal)",
        "mobile.calendarCancellationHint" to "Itinatago ang paulit-ulit na oras ng training sa mga araw na iyon.",
        "mobile.calendarCancellationInMonth" to "Mga kansela ngayong buwan",
        "mobile.calendarCancellationReason" to "Dahilan",
        "mobile.calendarCancellationSave" to "I-save",
        "mobile.calendarCancellationStart" to "Petsa (YYYY-MM-DD)",
        "mobile.calendarCancellationTitle" to "Kanseladong training",
        "mobile.calendarGridTitle" to "Buwan",
        "mobile.calendarLegend" to "Ipakita",
        "mobile.calendarLegendCancellation" to "Kansela",
        "mobile.calendarLegendHoliday" to "Holiday",
        "mobile.calendarLegendMatch" to "Laban",
        "mobile.calendarLegendOfficial" to "Pakikilahok",
        "mobile.calendarLegendSchool" to "Bakasyon sa paaralan",
        "mobile.calendarLegendTournament" to "Torneo",
        "mobile.calendarLegendTraining" to "Training",
        "mobile.calendarSourceCancellations" to "Mga pagkansela",
        "mobile.calendarSourceDiary" to "Diaryo",
        "mobile.calendarSourceFailed" to "hindi na-load",
        "mobile.calendarSourceHolidays" to "Holiday / bakasyon",
        "mobile.calendarSourceMatches" to "Mga laban sa liga",
        "mobile.calendarSourceOfficial" to "Opisyal na pakikilahok",
        "mobile.calendarSourceTournaments" to "Mga torneo",
        "mobile.calendarSourceTrainingTimes" to "Mga oras ng training",
        "mobile.calendarSubtitle" to "Training, torneo, liga at holiday sa buwan.",
        "mobile.calendarTitle" to "Kalendaryo",
        "mobile.calendarToday" to "Ngayon",
        "mobile.cancel" to "Abbrechen",
        "mobile.clubRequest" to "Zugriff anfragen",
        "mobile.clubRequested" to "Angefragt",
        "mobile.createDiaryEntry" to "Eintrag erstellen",
        "mobile.deleteNote" to "Notiz löschen",
        "mobile.deleteTag" to "Tag entfernen",
        "mobile.editTimes" to "Zeiten bearbeiten",
        "mobile.emailAndPasswordRequired" to "E-Mail und Passwort sind erforderlich",
        "mobile.entry" to "Eintrag",
        "mobile.inactive" to "Inaktiv",
        "mobile.language" to "Sprache",
        "mobile.lastTraining" to "Letztes Training",
        "mobile.loginFailed" to "Login fehlgeschlagen",
        "mobile.loginInProgress" to "Anmelden...",
        "mobile.more" to "Mehr",
        "mobile.new" to "Neu",
        "mobile.newNote" to "Neue Notiz",
        "mobile.newTag" to "Neuer Tag",
        "mobile.noDiaryEntries" to "Noch keine Tagebuch-Einträge",
        "mobile.noMembers" to "Keine Mitglieder gefunden",
        "mobile.noResults" to "Keine Treffer",
        "mobile.noTimes" to "Keine Zeiten",
        "mobile.offlineCacheHint" to "Walang koneksyon – ipinapakita ang huling na-load na datos.",
        "mobile.participationTop" to "Top Teilnahmen",
        "mobile.refresh" to "Aktualisieren",
        "mobile.requestedAccess" to "Angefragt",
        "mobile.role" to "Rolle",
        "mobile.saveEntry" to "Speichern",
        "mobile.search" to "Suche",
        "mobile.select" to "Auswählen",
        "mobile.sessionCheck" to "Session prüfen",
        "mobile.sessionCheckFailed" to "Session check fehlgeschlagen",
        "mobile.sessionInvalid" to "Session ungültig",
        "mobile.sessionValid" to "Session gültig",
        "mobile.status" to "Status",
        "mobile.user" to "Benutzer",
        "myTischtennis.about" to "Tungkol sa myTischtennis",
        "myTischtennis.aboutFeatures.fetch" to "Direktang kunin ang data ng kumpetisyon",
        "myTischtennis.aboutFeatures.import" to "Awtomatikong mag-import ng data ng tournament",
        "myTischtennis.aboutFeatures.sync" to "I-sync ang Mga Resulta ng Player",
        "myTischtennis.aboutText" to "Sa pamamagitan ng pag-link ng iyong myTischtennis account, maaari mong:",
        "myTischtennis.autoUpdates" to "Auto Update",
        "myTischtennis.club" to "Association (myTischtennis)",
        "myTischtennis.deleteAccount" to "Idiskonekta ang account",
        "myTischtennis.disabled" to "Hindi naka-check",
        "myTischtennis.editAccount" to "I-edit ang account",
        "myTischtennis.enabled" to "NAKA-ON",
        "myTischtennis.fetchStatistics" to "Mga Istatistika sa Pagkuha ng Data",
        "myTischtennis.lastFetch" to "Huling Nakuha:",
        "myTischtennis.lastLoginAttempt" to "Huling pagtatangka sa pag-log in",
        "myTischtennis.lastSuccessfulLogin" to "Huling matagumpay na pag-log in",
        "myTischtennis.leagueTables" to "JoomSport Standings",
        "myTischtennis.linkAccount" to "I-link ang account",
        "myTischtennis.linkedAccount" to "Naka-link na Account",
        "myTischtennis.loadingStats" to "Naglo-load ng mga istatistika",
        "myTischtennis.matchResults" to "Mga Resulta ng Kaganapan",
        "myTischtennis.neverFetched" to "Never Retrieved",
        "myTischtennis.no" to "Hindi",
        "myTischtennis.noAccount" to "Walang myTischtennis account na naka-link.",
        "myTischtennis.passwordNote" to "Tandaan: Ang pag-save ng password ay opsyonal. Kung hindi mo ito nai-save, hihilingin sa iyo ang password sa tuwing magsi-synchronize ka.",
        "myTischtennis.passwordSaved" to "Na-save ang password",
        "myTischtennis.passwordsEncrypted" to "Ang mga password ay naka-imbak na naka-encrypt.",
        "myTischtennis.playerRatings" to "Mga Rating ng Manlalaro",
        "myTischtennis.refreshStats" to "I-reload ang Stats",
        "myTischtennis.testLogin" to "Muling pag-login",
        "myTischtennis.title" to "myTischtennis-Account",
        "myTischtennis.updateHistory" to "I-update ang Kasaysayan",
        "myTischtennis.yes" to "Oo",
        "myTischtennisAccount.aboutDescription" to "Sa pamamagitan ng pag-link ng iyong myTischtennis account, maaari mong:",
        "myTischtennisAccount.aboutFeature1" to "Awtomatikong mag-import ng data ng tournament",
        "myTischtennisAccount.aboutFeature2" to "I-sync ang Mga Resulta ng Player",
        "myTischtennisAccount.aboutFeature3" to "Direktang kunin ang data ng kumpetisyon",
        "myTischtennisAccount.aboutHint" to "Ang pag-save ng password ay opsyonal. Kung hindi mo ito nai-save, hihilingin sa iyo ang password sa tuwing magsi-synchronize ka.",
        "myTischtennisAccount.aboutMyTischtennis" to "Tungkol sa myTischtennis",
        "myTischtennisAccount.accountSaved" to "myTischtennis-Account ay matagumpay na na-save",
        "myTischtennisAccount.accountUnlinked" to "Matagumpay na nadiskonekta ang myTischtennis account",
        "myTischtennisAccount.autoUpdates" to "Mga awtomatikong pag-update:",
        "myTischtennisAccount.club" to "Association (myTischtennis):",
        "myTischtennisAccount.daysAgo" to "{count} araw ang nakalipas",
        "myTischtennisAccount.disabled" to "Hindi naka-check",
        "myTischtennisAccount.editAccount" to "I-edit ang account",
        "myTischtennisAccount.email" to "E-mail:",
        "myTischtennisAccount.enabled" to "NAKA-ON",
        "myTischtennisAccount.errorLoadingAccount" to "Error sa paglo-load ng myTischtennis account",
        "myTischtennisAccount.errorLoadingStatistics" to "Error sa paglo-load ng mga istatistika ng pagkuha",
        "myTischtennisAccount.errorUnlinking" to "Error sa pagdiskonekta ng account",
        "myTischtennisAccount.fetchStatistics" to "Mga Istatistika sa Pagkuha ng Data",
        "myTischtennisAccount.hoursAgo" to "{count} h ang nakalipas",
        "myTischtennisAccount.justNow" to "ngayon lang",
        "myTischtennisAccount.lastFetch" to "Huling Nakuha:",
        "myTischtennisAccount.lastLoginAttempt" to "Huling pagtatangka sa pag-log in:",
        "myTischtennisAccount.lastSuccessfulLogin" to "Huling matagumpay na pag-log in:",
        "myTischtennisAccount.leagueTables" to "JoomSport Standings",
        "myTischtennisAccount.linkAccount" to "I-link ang account",
        "myTischtennisAccount.linkedAccount" to "Naka-link na Account",
        "myTischtennisAccount.loading" to "Naglo-load...",
        "myTischtennisAccount.loadingStatistics" to "Naglo-load ng mga istatistika",
        "myTischtennisAccount.loginAgain" to "Muling pag-login",
        "myTischtennisAccount.loginFailed" to "Nabigo ang pag-login",
        "myTischtennisAccount.loginSuccessful" to "Matagumpay ang pag-login! Na-update ang mga detalye ng koneksyon.",
        "myTischtennisAccount.matchResults" to "Mga Resulta ng Kaganapan",
        "myTischtennisAccount.minutesAgo" to "{count} min ang nakalipas",
        "myTischtennisAccount.never" to "Hindi kailanman",
        "myTischtennisAccount.neverFetched" to "Never Retrieved",
        "myTischtennisAccount.no" to "Hindi",
        "myTischtennisAccount.noAccountLinked" to "Walang myTischtennis account na naka-link.",
        "myTischtennisAccount.passwordRequired" to "Kinakailangan ang password",
        "myTischtennisAccount.passwordSaved" to "Na-save ang password",
        "myTischtennisAccount.playerRatings" to "Mga Rating ng Manlalaro",
        "myTischtennisAccount.playersUpdated" to "Na-update ang Manlalaro",
        "myTischtennisAccount.refreshStatistics" to "I-reload ang Stats",
        "myTischtennisAccount.results" to "Mga resulta",
        "myTischtennisAccount.teams" to "Teams",
        "myTischtennisAccount.title" to "myTischtennis Account",
        "myTischtennisAccount.unlinkAccount" to "Idiskonekta ang account",
        "myTischtennisAccount.unlinkAccountConfirm" to "Sigurado ka bang gusto mong i-unlink ang myTischtennis account?",
        "myTischtennisAccount.unlinkAccountTitle" to "Idiskonekta ang account",
        "myTischtennisAccount.updateHistory" to "I-update ang Kasaysayan",
        "myTischtennisAccount.yes" to "Oo",
        "myTischtennisAccount.yesterday" to "kahapon",
        "myTischtennisDialog.appPassword" to "Ang password ng iyong app para kumpirmahin",
        "myTischtennisDialog.appPasswordHint" to "Para sa mga kadahilanang pangseguridad, kailangan namin ang password ng iyong app para i-save ang myTischtennis password.",
        "myTischtennisDialog.appPasswordPlaceholder" to "Ang iyong password para sa app na ito",
        "myTischtennisDialog.autoUpdateRatings" to "Paganahin ang awtomatikong pag-update ng mga rating",
        "myTischtennisDialog.autoUpdateRatingsHint" to "Ang pinakabagong mga rating mula sa myTischtennis ay awtomatikong kinukuha araw-araw sa 6:00 am. Nangangailangan ng naka-save na password.",
        "myTischtennisDialog.autoUpdateWarning" to "Para sa mga awtomatikong pag-update, dapat na i-save ang myTischtennis password.",
        "myTischtennisDialog.cancel" to "Kanselahin",
        "myTischtennisDialog.editAccount" to "i-edit ang myTischtennis-Account",
        "myTischtennisDialog.email" to "myTischtennis-Email",
        "myTischtennisDialog.emailPlaceholder" to "Ang iyong myTischtennis email address",
        "myTischtennisDialog.errorLogin" to "Error sa pag-login.",
        "myTischtennisDialog.errorSaving" to "Error sa pag-save ng Account",
        "myTischtennisDialog.linkAccount" to "link myTischtennis account",
        "myTischtennisDialog.loadingLoginForm" to "Nilo-load ang Form sa Pag-login...",
        "myTischtennisDialog.loggingIn" to "mag-log in...",
        "myTischtennisDialog.login" to "Mag-log in",
        "myTischtennisDialog.password" to "myTischtennis-Password",
        "myTischtennisDialog.passwordPlaceholder" to "Ang iyong myTischtennis password",
        "myTischtennisDialog.passwordPlaceholderKeep" to "Iwanang blangko upang panatilihin",
        "myTischtennisDialog.save" to "I-save",
        "myTischtennisDialog.savePassword" to "i-save ang mytabletennis-password",
        "myTischtennisDialog.savePasswordHint" to "Kung pinagana, ang iyong myTischtennis password ay maiimbak na naka-encrypt upang ang mga awtomatikong pag-synchronize ay posible.",
        "myTischtennisDialog.saving" to "Nagse-save...",
        "myTischtennisHistory.close" to "Isara",
        "myTischtennisHistory.failed" to "Hindi iyon gumana.",
        "myTischtennisHistory.loading" to "Nilo-load ang history...",
        "myTischtennisHistory.noHistory" to "Wala pang awtomatikong pag-update na ginawa.",
        "myTischtennisHistory.ratingsUpdated" to "Na-update ang mga rating",
        "myTischtennisHistory.successful" to "Matagumpay",
        "myTischtennisHistory.title" to "I-update ang Kasaysayan ng Mga Rating",
        "navigation.approvals" to "Mga pag-apruba",
        "navigation.backToHome" to "Bumalik sa home",
        "navigation.billing" to "Pagsingil",
        "navigation.clickTtAccount" to "HTTV / click-TT account",
        "navigation.clickTtBrowser" to "HTTV / click-TT",
        "navigation.clubSettings" to "Mga setting ng club",
        "navigation.clubTournaments" to "Mga paligsahan ng club",
        "navigation.competitions" to "Mga kompetisyon",
        "navigation.dailyBusiness" to "Araw-araw na negosyo",
        "navigation.diary" to "Talaarawan",
        "navigation.home" to "Bahay",
        "navigation.login" to "Mag-login",
        "navigation.logout" to "Mag-logout",
        "navigation.logs" to "Mga system log",
        "navigation.members" to "Mga miyembro",
        "navigation.memberTransfer" to "Paglipat ng miyembro",
        "navigation.myTischtennisAccount" to "myTischtennis Account",
        "navigation.orders" to "Mga order",
        "navigation.permissions" to "Mga pahintulot",
        "navigation.personalSettings" to "Mga personal na setting",
        "navigation.predefinedActivities" to "Mga paunang natukoy na aktibidad",
        "navigation.register" to "Magrehistro",
        "navigation.schedule" to "Mga iskedyul",
        "navigation.settings" to "Mga setting",
        "navigation.statistics" to "Mga istatistika ng pagsasanay",
        "navigation.teamManagement" to "Pamamahala ng koponan",
        "navigation.tournamentParticipations" to "Mga paglahok sa paligsahan",
        "navigation.tournaments" to "Mga paligsahan",
        "nuscoreAnalyzer.analysisComplete" to "✅ Nakumpleto ang pagsusuri: {count} na mapagkukunan ang nakita",
        "nuscoreAnalyzer.analyze" to "🔍 nuscore analysis",
        "nuscoreAnalyzer.analyzing" to "Sinusuri...",
        "nuscoreAnalyzer.createLocalCopy" to "Gumawa ng 🏗️ lokal na kopya",
        "nuscoreAnalyzer.creating" to "🏗️ Ginagawa...",
        "nuscoreAnalyzer.description" to "Sinusuri at dina-download ang mga mapagkukunan ng nuscore para sa lokal na paggamit",
        "nuscoreAnalyzer.downloading" to "⬇️ Dina-download...",
        "nuscoreAnalyzer.downloadResources" to "Mag-download ng mga mapagkukunan",
        "nuscoreAnalyzer.foundResources" to "📋 Nahanap na mga mapagkukunan:",
        "nuscoreAnalyzer.log" to "Log",
        "nuscoreAnalyzer.pageLoaded" to "✅ na-load ang nuscore page",
        "nuscoreAnalyzer.startAnalysis" to "🔍 Sinisimulan ang nuscore analysis...",
        "nuscoreAnalyzer.title" to "🔍 nuscore Analyzer",
        "officialTournaments.action" to "Aksyon",
        "officialTournaments.age" to "Edad",
        "officialTournaments.ageClassCompetition" to "Pangkat ng Edad/Kumpetisyon",
        "officialTournaments.ageClasses" to "Mga klase sa edad",
        "officialTournaments.all" to "Lahat",
        "officialTournaments.birthDate" to "Petsa ng kapanganakan",
        "officialTournaments.checkBoxToActivate" to "Paganahin ang checkbox",
        "officialTournaments.competition" to "Katunggali",
        "officialTournaments.competitions" to "Mga kumpetisyon",
        "officialTournaments.competitionTypes" to "Mga Uri ng Kumpetisyon:",
        "officialTournaments.cutoffDate" to "Petsa ng bisa:",
        "officialTournaments.date" to "Petsa",
        "officialTournaments.dateTime" to "Petsa:",
        "officialTournaments.deadlineDate" to "Deadline ng pagpaparehistro (petsa):",
        "officialTournaments.deadlineOnline" to "Deadline ng pagpaparehistro (online):",
        "officialTournaments.deadlines" to "Mga deadline ng pagpaparehistro:",
        "officialTournaments.deadlinesByAgeClass" to "Mga deadline ng pagpaparehistro para sa bawat AK:",
        "officialTournaments.delete" to "Tanggalin",
        "officialTournaments.editTitle" to "I-edit ang Pamagat",
        "officialTournaments.eligible" to "Kwalipikadong Makilahok",
        "officialTournaments.entryFee" to "panimulang cash",
        "officialTournaments.entryFees" to "Mga bayad sa pagdalo:",
        "officialTournaments.events" to "Mga pangyayari",
        "officialTournaments.finalRound" to "Finals Competition",
        "officialTournaments.hasPlayed" to "Naglaro si {0} sa kanilang turn.",
        "officialTournaments.last12Months" to "Huling 12 buwan",
        "officialTournaments.last2Years" to "Nakalipas na 2 Taon",
        "officialTournaments.last3Months" to "Huling 3 buwan",
        "officialTournaments.last6Months" to "Nakalipas na 6 na buwan",
        "officialTournaments.markAsParticipated" to "Mark bilang dumalo",
        "officialTournaments.markAsRegistered" to "Markahan bilang naka-log in",
        "officialTournaments.member" to "Miyembro",
        "officialTournaments.name" to "pangalan",
        "officialTournaments.noEvents" to "Wala pang available na event. Mag-upload ng PDF para makapagsimula.",
        "officialTournaments.notInterested" to "Hindi interesado",
        "officialTournaments.openTo" to "Bukas sa",
        "officialTournaments.participants" to "Mga kalahok",
        "officialTournaments.participantsPdf" to "PDF ng kalahok",
        "officialTournaments.participated" to "Nakilahok",
        "officialTournaments.participations" to "Mga Paglahok sa Tournament",
        "officialTournaments.pdfForSelectedMembers" to "PDF para sa mga na-flag na miyembro",
        "officialTournaments.placement" to "Paglalagay",
        "officialTournaments.preliminaryRound" to "Unang Yugto:",
        "officialTournaments.previousSeason" to "Nakaraang Season",
        "officialTournaments.registered" to "Naka-log-In",
        "officialTournaments.resetStatus" to "I-reset ang Katayuan",
        "officialTournaments.results" to "Mga resulta",
        "officialTournaments.savedEvents" to "Naka-save na Mga Kaganapan",
        "officialTournaments.selectMembers" to "Pumili ng Mga Miyembro",
        "officialTournaments.showCompetitions" to "Tingnan ang mga Kumpetisyon",
        "officialTournaments.showEvents" to "Tingnan ang Mga Nai-save na Kaganapan",
        "officialTournaments.showParticipants" to "Tingnan ang Kalahok",
        "officialTournaments.showParticipations" to "Tingnan ang Mga Pagbabahagi ng Tournament",
        "officialTournaments.showResults" to "Tingnan ang mga Resulta",
        "officialTournaments.startTime" to "oras ng pagsisimula",
        "officialTournaments.startTimes" to "Mga oras ng pagsisimula:",
        "officialTournaments.status" to "katayuan",
        "officialTournaments.timeRange" to "Panahon:",
        "officialTournaments.title" to "Pamagat:",
        "officialTournaments.tournament" to "Tournament",
        "officialTournaments.updatePlacementError" to "Error sa pag-update ng placement",
        "officialTournaments.updateStatusError" to "Nabigong i-update ang estado",
        "officialTournaments.updateTitleError" to "Hindi ito nai-save.",
        "officialTournaments.uploadError" to "Error sa pag-upload ng PDF.",
        "officialTournaments.uploadPdf" to "Mag-upload ng PDF",
        "officialTournaments.venues" to "Mga lugar",
        "officialTournaments.wantsToParticipate" to "Gustong sumali",
        "orders.addOrder" to "Gumawa ng order",
        "orders.budget" to "badyet",
        "orders.club" to "Club",
        "orders.cost" to "Halaga",
        "orders.dateAutoHint" to "Awtomatikong itinatakda ang petsa at bawat pagbabago ay sine-save kasama ang petsa.",
        "orders.errorLoading" to "Hindi ma-load ang mga order.",
        "orders.errorSaving" to "Hindi ma-save ang order.",
        "orders.filterAllClubs" to "Lahat ng club",
        "orders.filterAllCompletionStates" to "Lahat ng degree",
        "orders.filterAllStatuses" to "Lahat ng status",
        "orders.filterHandedOver" to "Naibigay ang item",
        "orders.filterPaid" to "Binayaran",
        "orders.globalSubtitle" to "Dito makikita at mapapamahalaan ang lahat ng order mula sa iba’t ibang club.",
        "orders.globalTitle" to "Mga order ng lahat ng club",
        "orders.history" to "Kasaysayan",
        "orders.item" to "item",
        "orders.itemPlaceholder" to "hal. jersey, hoodie, o lagayan ng raketa",
        "orders.loading" to "Nilo-load ang mga order...",
        "orders.member" to "Miyembro",
        "orders.memberTitle" to "Mga order: {name}",
        "orders.noOrdersGlobal" to "Wala pang mga order sa ngayon.",
        "orders.noOrdersMember" to "Wala pang order para sa miyembrong ito.",
        "orders.open" to "Natitira",
        "orders.orderDate" to "Ginawa noong",
        "orders.paid" to "Nabayaran",
        "orders.paidConfirmed" to "Binayaran",
        "orders.searchPlaceholder" to "Maghanap ayon sa club, miyembro, o item",
        "orders.showCompleted" to "Ipakita ang mga natapos",
        "orders.status" to "katayuan",
        "orders.statusArrived" to "dumating na ang item",
        "orders.statusDate" to "Huling pagbabago",
        "orders.statusHandedOver" to "naibigay na ang item",
        "orders.statusOrdered" to "na-order na",
        "orders.statusRequested" to "hinihiling",
        "orders.title" to "Mga order",
        "pdfGenerator.activityTimeBlock" to "Aktibidad / Time Block",
        "pdfGenerator.allGames" to "Lahat ng Lungsod",
        "pdfGenerator.alsoPlayable" to "Mapaglaro din",
        "pdfGenerator.birthDate" to "Petsa ng kapanganakan",
        "pdfGenerator.clubLabel" to "Club:",
        "pdfGenerator.competition" to "Kaganapan",
        "pdfGenerator.competitionName" to "Katunggali",
        "pdfGenerator.date" to "Petsa:",
        "pdfGenerator.diff" to "Diff",
        "pdfGenerator.duration" to "Mga minuto bago mag-lockout",
        "pdfGenerator.fee" to "Bayad",
        "pdfGenerator.generatedAt" to "Nilikha:",
        "pdfGenerator.group" to "Grupo",
        "pdfGenerator.groupLabel" to "Grupo",
        "pdfGenerator.groupMatrices" to "Mga matrice ng pangkat",
        "pdfGenerator.hallShoes" to "Panloob na sapatos (hindi dapat matuyo sa sahig)",
        "pdfGenerator.hints" to "Mga Tala:",
        "pdfGenerator.informTrainer" to "Dahil gusto ng club na kunin ang pagpaparehistro, ipaalam sa mga coach ang hindi bababa sa isang linggo bago ang paligsahan tungkol sa paglahok",
        "pdfGenerator.leagueLabel" to "Liga:",
        "pdfGenerator.lineupQttr" to "(Q)TTR",
        "pdfGenerator.member" to "Mga miyembro:",
        "pdfGenerator.nameFirstName" to "Apelyido, unang pangalan",
        "pdfGenerator.noActivities" to "Walang naitala na aktibidad para sa araw ng pagsasanay na ito.",
        "pdfGenerator.noWhiteJersey" to "Walang puting jersey",
        "pdfGenerator.officialTournament" to "Opisyal na Tournament",
        "pdfGenerator.oneHourBefore" to "Maging sa bulwagan isang oras bago magsimula ang kumpetisyon",
        "pdfGenerator.overallRanking" to "Pangkalahatang ranking (knockout rounds)",
        "pdfGenerator.periodLabel" to "Registration para sa:",
        "pdfGenerator.phoneList" to "Listahan ng Telepono - Mga Aktibong Miyembro",
        "pdfGenerator.phoneNumber" to "Telepono no.",
        "pdfGenerator.place" to "Ang parisukat",
        "pdfGenerator.placement" to "Paglalagay",
        "pdfGenerator.plannedLeagueLabel" to "Plano na liga:",
        "pdfGenerator.player" to "Mga skater",
        "pdfGenerator.player1" to "Manlalaro 1",
        "pdfGenerator.player2" to "4 1/2 minuto",
        "pdfGenerator.points" to "Mga puntos",
        "pdfGenerator.recommendations" to "Mga rekomendasyon",
        "pdfGenerator.result" to "Resulta",
        "pdfGenerator.round" to "Bilog",
        "pdfGenerator.seasonLabel" to "season:",
        "pdfGenerator.sets" to "mga parirala",
        "pdfGenerator.sportShorts" to "Sports shorts (o sports skirts), mas mabuti na hindi rin puti",
        "pdfGenerator.startTime" to "oras ng pagsisimula",
        "pdfGenerator.status" to "katayuan",
        "pdfGenerator.teamAgeGroupLabel" to "Age group ng koponan:",
        "pdfGenerator.teamGenderLabel" to "Kasarian ng koponan:",
        "pdfGenerator.teamLineupTitle" to "Line-up ng koponan",
        "pdfGenerator.teamNameLabel" to "Koponan:",
        "pdfGenerator.time" to "Oras:",
        "pdfGenerator.timeBlock" to "Time block",
        "pdfGenerator.tournament" to "Tournament",
        "pdfGenerator.trainersPresent" to "Sinisikap ng mga coach na dumalo sa lahat ng mga paligsahan.",
        "pdfGenerator.trainingPlan" to "Plano ng pagsasanay",
        "pdfGenerator.venue" to "Lokasyon",
        "pdfGenerator.venues" to "Mga lugar",
        "pdfGenerator.waterBottle" to "Magdala ng isang bote ng tubig",
        "pendingApprovals.actions" to "Mga aksyon",
        "pendingApprovals.approve" to "Aprubahan",
        "pendingApprovals.email" to "Email",
        "pendingApprovals.errorApproving" to "Error sa pag-apruba ng user",
        "pendingApprovals.errorLoadingRequests" to "nabigong i-load ang mga nakabinbing para sa %<%E%s%E%>",
        "pendingApprovals.errorRejecting" to "Error sa Pagtanggi sa User",
        "pendingApprovals.firstName" to "Pangalan",
        "pendingApprovals.lastName" to "Apelyido",
        "pendingApprovals.noPendingRequests" to "Walang nakabinbing kahilingan ng user.",
        "pendingApprovals.noPermission" to "Walang pahintulot",
        "pendingApprovals.noPermissionDetails" to "Ang mga admin lang ang makakapag-edit ng mga kahilingan sa miyembro.",
        "pendingApprovals.noPermissionMessage" to "Wala kang pahintulot na pamahalaan ang mga pagbabahagi.",
        "pendingApprovals.reject" to "I-dismiss",
        "pendingApprovals.title" to "Nakabinbing Mga Kahilingan ng User",
        "permissions.actions" to "Mga aksyon",
        "permissions.active" to "Aktibo",
        "permissions.availableRoles" to "Mga Magagamit na Tungkulin",
        "permissions.baseRole" to "Batayang Tungkulin",
        "permissions.cancel" to "Kanselahin",
        "permissions.clickToActivate" to "I-click para i-activate.",
        "permissions.clickToDeactivate" to "I-click upang huwag paganahin",
        "permissions.clubMembers" to "Mga miyembro ng club",
        "permissions.creator" to "Tagapaglikha",
        "permissions.customize" to "I-customize",
        "permissions.customizeInfo" to "Dito maaari kang gumawa ng mga indibidwal na pagsasaayos.",
        "permissions.email" to "Email",
        "permissions.errorLoadingData" to "Error sa paglo-load ng data",
        "permissions.errorSavingPermissions" to "Error sa pag-save ng mga pahintulot",
        "permissions.errorUpdatingRole" to "Nabigong i-update ang tungkulin",
        "permissions.inactive" to "Hindi naka-check",
        "permissions.loadingMembers" to "Iniimbitahan ang mga miyembro...",
        "permissions.permissionsFor" to "Mga pahintulot para sa",
        "permissions.reset" to "Ibalik",
        "permissions.resetAll" to "I-reset Lahat",
        "permissions.role" to "Tungkulin",
        "permissions.save" to "I-save",
        "permissions.status" to "katayuan",
        "permissions.subtitle" to "Pamahalaan ang mga karapatan sa pag-access para sa mga miyembro ng club",
        "permissions.title" to "Pamamahala ng kredensyal",
        "predefinedActivities.addImage" to "Magdagdag ng larawan",
        "predefinedActivities.cancel" to "Kanselahin",
        "predefinedActivities.code" to "Pagpapaikli",
        "predefinedActivities.createDrawing" to "Gumawa ng Exercise Drawing",
        "predefinedActivities.deduplicate" to "Pagsamahin ang mga Duplicate",
        "predefinedActivities.delete" to "Tanggalin",
        "predefinedActivities.description" to "Paglalarawan",
        "predefinedActivities.duration" to "Tagal ng minuto",
        "predefinedActivities.durationText" to "Tagal (Text)",
        "predefinedActivities.durationTextPlaceholder" to "hal. 2x7",
        "predefinedActivities.editActivity" to "I-edit ang Aktibidad",
        "predefinedActivities.editDrawing" to "I-edit ang Exercise Drawing",
        "predefinedActivities.excludeFromStats" to "Ibukod mula sa mga istatistika",
        "predefinedActivities.filterAll" to "Lahat",
        "predefinedActivities.filterCustom" to "Custom",
        "predefinedActivities.filterStandard" to "Mga karaniwang gawain",
        "predefinedActivities.imageHelp" to "Maaari kang maglagay ng link sa isang larawan o mag-upload ng larawan:",
        "predefinedActivities.imageLink" to "Link ng larawan (opsyonal)",
        "predefinedActivities.imageLinkPlaceholder" to "hal. https://example.com/bild.jpg o /api/predefined-activities/:id/image/:imageId",
        "predefinedActivities.merge" to "Pagsamahin",
        "predefinedActivities.min" to "min",
        "predefinedActivities.name" to "pangalan",
        "predefinedActivities.new" to "Bago",
        "predefinedActivities.newActivity" to "Bagong Aktibidad",
        "predefinedActivities.orUploadImage" to "O mag-upload ng larawan:",
        "predefinedActivities.reload" to "Muling Mag-load",
        "predefinedActivities.searchPlaceholder" to "Maghanap ng mga pagdadaglat (hal. 'as vh us' o 'vh as us')...",
        "predefinedActivities.selectSource" to "Piliin ang pinagmulan",
        "predefinedActivities.selectTarget" to "Pumili ng patutunguhan",
        "predefinedActivities.title" to "Mga paunang natukoy na aktibidad",
        "predefinedActivities.upload" to "Mag-upload",
        "predefinedActivities.uploadAfterSave" to "Mag-upload pagkatapos i-save",
        "predefinedActivities.uploadedImages" to "Na-upload na (mga) video:",
        "predefinedActivities.uploadNote" to "Tandaan: Hindi maa-upload ang larawan hanggang sa nai-save ang aktibidad.",
        "privacy.clubData" to "Data ng Club/Aktibidad",
        "privacy.consent" to "Mga operasyong nakabatay sa pahintulot",
        "privacy.cookies" to "Cookies/Local Storage",
        "privacy.dataCategories" to "Mga kategorya ng personal na data",
        "privacy.logData" to "Mga logfile",
        "privacy.memberData" to "Mga detalye ng miyembro",
        "privacy.myTischtennisData" to "Data ng MyTischtennis",
        "privacy.purposes" to "Mga layunin at legal na batayan ng pagproseso",
        "privacy.recipients" to "tatanggap",
        "privacy.registrationData" to "Data ng Pagrehistro/Profile",
        "privacy.responsible" to "Controller ng Data",
        "privacy.title" to "Patakaran sa privacy",
        "privacy.tournamentData" to "Data ng Tournament",
        "privacy.trainingData" to "Data ng pagsasanay",
        "privacy.usage" to "Paggamit ng talaarawan sa pagsasanay",
        "privacy.usageData" to "Data ng paggamit",
        "privacy.website" to "Paghahanda ng website",
        "quickAddMember.birthDate" to "Petsa ng kapanganakan (opsyonal)",
        "quickAddMember.cancel" to "Kanselahin",
        "quickAddMember.createAndAdd" to "Gumawa at magdagdag ng bago",
        "quickAddMember.firstName" to "Pangalan",
        "quickAddMember.gender" to "kasarian",
        "quickAddMember.lastName" to "Apelyido (opsyonal)",
        "quickAddMember.pleaseSelect" to "Mangyaring pumili",
        "quickAddMember.title" to "Magdagdag ng bagong miyembro",
        "schedule.activeSelection" to "Aktibong pagpili",
        "schedule.addressLabel" to "Address",
        "schedule.adultSchedule" to "Pang-adultong iskedyul",
        "schedule.ageClass" to "pangkat ng edad",
        "schedule.allLeagueMatches" to "Lahat ng tugma",
        "schedule.balls" to "Mga bola",
        "schedule.cancel" to "Kanselahin",
        "schedule.cityLabel" to "Postcode/lungsod",
        "schedule.code" to "Code",
        "schedule.completedShort" to "Nakumpleto",
        "schedule.copyCode" to "Kopyahin ang code",
        "schedule.copyGuestPin" to "Kopyahin ang PIN",
        "schedule.copyHomePin" to "Kopyahin ang home PIN",
        "schedule.date" to "Petsa",
        "schedule.downloadPDF" to "Download PDF",
        "schedule.errorCopying" to "Error habang kumukopya",
        "schedule.errorImportingCSV" to "Nabigong i-import ang CSV file",
        "schedule.errorLoadingAdultSchedule" to "Nabigong i-load ang iskedyul ng pang-adulto",
        "schedule.errorLoadingGallery" to "Hindi ma-load ang gallery.",
        "schedule.errorLoadingMatches" to "Nabigong i-load ang mga tugma",
        "schedule.errorLoadingMembers" to "Nabigong i-load ang listahan ng miyembro.",
        "schedule.errorLoadingOverallSchedule" to "Nabigong i-load ang pangkalahatang iskedyul",
        "schedule.errorLoadingTable" to "Nabigong i-load ang data ng talahanayan ng liga mula sa myTischtennis",
        "schedule.errorLoadingTeams" to "Nabigong i-load ang mga team",
        "schedule.errorSavingPlayerSelection" to "Nabigong i-save ang pagpili ng player",
        "schedule.fetchDataFailed" to "Hindi makuha ang data ng koponan.",
        "schedule.fetchingTeamData" to "Kinukuha…",
        "schedule.fetchStartFailed" to "Hindi masimulan ang pagkuha.",
        "schedule.fetchTeamData" to "Kunin ang iskedyul at mga resulta",
        "schedule.fetchTimedOut" to "Nag-time out habang kumukuha ng data.",
        "schedule.gallery" to "Gallery ng miyembro",
        "schedule.galleryLoading" to "Nilo-load ang gallery…",
        "schedule.galleryTitle" to "Gallery ng miyembro - i-click ang isang imahe upang markahan bilang handa na",
        "schedule.gamesFor" to "Mga tugma para sa",
        "schedule.guestPin" to "Away PIN",
        "schedule.guestTeam" to "Ang away team",
        "schedule.homePin" to "PIN ng tahanan",
        "schedule.homeTeam" to "Home team",
        "schedule.imageSize" to "Laki ng larawan",
        "schedule.importSchedule" to "Iskedyul ng pag-import",
        "schedule.leagueTable" to "Mesa ng liga",
        "schedule.loadingMembers" to "Nilo-load ang mga miyembro...",
        "schedule.locationDialogTitle" to "Game room",
        "schedule.locationInfo" to "Lokasyon",
        "schedule.locationName" to "Game room",
        "schedule.matches" to "mga posporo",
        "schedule.matchLabel" to "Laro",
        "schedule.matchOverviewDescription" to "Ang mga kontrol kung aling mga laban mula sa kasalukuyang napiling liga ay ipinapakita sa iskedyul.",
        "schedule.matchOverviewTitle" to "Pangkalahatang-ideya ng laban",
        "schedule.nextMatch" to "Susunod na laban",
        "schedule.noActiveMembers" to "Walang nakitang aktibong miyembro",
        "schedule.noGames" to "Walang available na mga tugma",
        "schedule.noLeagueForTeam" to "Walang liga na nakatalaga sa pangkat na ito. Mangyaring magtalaga muna ng liga.",
        "schedule.noMatchesForPDF" to "Walang nakitang mga tugma upang makabuo ng PDF.",
        "schedule.noMatchingTeams" to "Walang mga koponan na tumutugma sa kasalukuyang paghahanap.",
        "schedule.noMembersWithImages" to "Walang nakitang mga miyembro na may mga larawan.",
        "schedule.noSelectionMessage" to "Piliin ang pangkalahatang iskedyul, ang iskedyul ng pang-adulto o isang koponan mula sa kaliwa.",
        "schedule.noSelectionTitle" to "Wala pang aktibong pagpili",
        "schedule.noTableData" to "Walang available na data ng talahanayan",
        "schedule.noTeamsFound" to "Walang nakitang mga koponan para sa season na ito",
        "schedule.openMatchReport" to "Buksan ang ulat ng laban",
        "schedule.otherTeamMatches" to "Ibang team",
        "schedule.overallSchedule" to "Pangkalahatang iskedyul",
        "schedule.ownTeamMatches" to "Sariling team",
        "schedule.pendingShort" to "Bukas",
        "schedule.planned" to "Nakaplano",
        "schedule.played" to "Pinatugtog",
        "schedule.player" to "Manlalaro",
        "schedule.playerSelection" to "Pagpili ng manlalaro",
        "schedule.playerSelectionSaved" to "Na-save ang pagpili ng manlalaro",
        "schedule.pleaseSelectGame" to "Mangyaring pumili muna ng tugma",
        "schedule.points" to "Pts",
        "schedule.position" to "Posisyon",
        "schedule.ready" to "handa na",
        "schedule.refreshTable" to "I-refresh ang talahanayan",
        "schedule.result" to "Resulta",
        "schedule.save" to "I-save",
        "schedule.scheduleImportSuccess" to "Matagumpay na na-import ang iskedyul.",
        "schedule.schedulePDF" to "Schedules.pdf",
        "schedule.scheduleTab" to "Iskedyul",
        "schedule.searchTeams" to "Search team o liga",
        "schedule.selection" to "Pagpili",
        "schedule.selectOtherTeam" to "Pumili ng ibang team",
        "schedule.selectSpecificLeague" to "Mangyaring pumili ng isang partikular na liga upang i-load ang talahanayan.",
        "schedule.sets" to "Mga set",
        "schedule.showLocation" to "Tingnan ang Lugar ng Laro",
        "schedule.subtitle" to "Pumili ng mga koponan, suriin ang mga fixture at panatilihing nakikita ang mga talahanayan ng liga.",
        "schedule.tableDataLoaded" to "Matagumpay na na-load ang data ng talahanayan ng liga mula sa myTischtennis.",
        "schedule.tableLoading" to "Nilo-load ang talahanayan…",
        "schedule.tableTab" to "mesa",
        "schedule.team" to "Team",
        "schedule.teamDataFetched" to "Matagumpay na na-update ang data ng koponan.",
        "schedule.teamDataFetchedDetails" to "Koponan: {team}\nMga naprosesong tala: {count}",
        "schedule.teams" to "Teams",
        "schedule.time" to "Oras",
        "schedule.title" to "Mga iskedyul",
        "schedule.vs" to "vs",
        "schedule.workspaceScheduleDescription" to "{matches} tugma, {completed} natapos at {pending} bukas.",
        "schedule.workspaceTableDescription" to "{count} na mga hilera ng talahanayan na kasalukuyang na-load.",
        "seasonSelector.addSeason" to "Magdagdag ng bagong Season",
        "seasonSelector.alreadyExists" to "Ang season na ito ay umiiral na!",
        "seasonSelector.cancel" to "Kanselahin",
        "seasonSelector.create" to "Lumikha",
        "seasonSelector.errorCreating" to "Error sa paggawa ng season",
        "seasonSelector.errorLoading" to "Error sa paglo-load ng mga season",
        "seasonSelector.hint" to "Pansinin",
        "seasonSelector.label" to "season:",
        "seasonSelector.loading" to "Naglo-load...",
        "seasonSelector.newSeason" to "Lumikha ng Bagong Season",
        "seasonSelector.placeholder" to "hal. 2023/2024",
        "seasonSelector.selectSeason" to "Pumili ng (mga) season",
        "settings.language" to "Wika",
        "settings.languageChanged" to "Matagumpay na nagbago ang wika",
        "settings.languageDescription" to "Pumili ng iyong gustong wika para sa aplikasyon",
        "settings.personalSettings" to "Mga personal na setting",
        "settings.selectLanguage" to "Pumili ng wika",
        "settings.title" to "Mga setting",
        "tagHistory.noHistory" to "Walang available na history ng tag",
        "tagHistory.selectTags" to "Piliin ang Mga Tag",
        "tagHistory.title" to "Tag: TypePad",
        "teamManagement.activeTeam" to "Aktibong koponan",
        "teamManagement.addPlanningTeam" to "Magdagdag ng Planning Team",
        "teamManagement.allMembersAssigned" to "Lahat ng miyembro ay kasalukuyang nakatalaga.",
        "teamManagement.assignLeagueBeforeDocuments" to "Mangyaring magtalaga muna ng liga sa koponan upang maproseso ang mga dokumento.",
        "teamManagement.assignLeagueBeforeParsing" to "Mangyaring magtalaga ng liga sa koponan muna upang i-parse ang mga PDF file.",
        "teamManagement.assignMemberToTeam" to "Idagdag sa team",
        "teamManagement.association" to "Samahan",
        "teamManagement.asyncJobStartFailed" to "Hindi masimulan ang async na trabaho.",
        "teamManagement.autoFetchEnabled" to "Ang awtomatikong pagkuha ng data ay pinagana",
        "teamManagement.automaticJobs" to "Mga awtomatikong trabaho",
        "teamManagement.autoSaved" to "AutoSaved",
        "teamManagement.autoSaveError" to "Nabigo ang Autosaving",
        "teamManagement.availableLineupMembers" to "Magagamit na manlalaro",
        "teamManagement.basicSettings" to "Mga pangunahing setting",
        "teamManagement.basicSettingsIntro" to "Suriin at ayusin ang pangalan ng koponan at liga sa mas kalmadong anyo.",
        "teamManagement.change" to "Baguhin",
        "teamManagement.clearFields" to "I-clear ang mga field",
        "teamManagement.codeList" to "Listahan ng code",
        "teamManagement.configurationStatus" to "Katayuan ng configuration",
        "teamManagement.configureLeagueDetails" to "Samahan: {association}\nSeason: {season}\nLiga: {league}\nGroup ID: {groupId}\n\nGusto mo bang i-configure ang liga na ito sa database? Nagbibigay-daan ito sa awtomatikong pagkuha ng data ng talahanayan.",
        "teamManagement.configureLeagueTitle" to "I-configure ang liga?",
        "teamManagement.createAndEdit" to "Gumawa at mag-edit",
        "teamManagement.created" to "Nilikha",
        "teamManagement.createNewTeam" to "Gumawa ng bagong team",
        "teamManagement.dataFetchFailed" to "Hindi makuha ang data.",
        "teamManagement.delete" to "Tanggalin",
        "teamManagement.deleteTeamConfirm" to "Gusto mo ba talagang tanggalin ang club team na \"{name}\"?",
        "teamManagement.deleteTeamTitle" to "Tanggalin ang koponan ng club",
        "teamManagement.documentAvailable" to "Available",
        "teamManagement.documentMissing" to "Nawawala",
        "teamManagement.documentNotFound" to "Hindi mahanap ang napiling dokumento.",
        "teamManagement.documentParsedSummary" to "Matagumpay na na-upload at na-parse ang {label}.\n\nNakita ang mga katugma: {matchesFound}\nNagawa ang mga bagong tugma: {created}\nNa-update ang mga laban: {updated}",
        "teamManagement.documents" to "Mga dokumento",
        "teamManagement.documentsIntro" to "Mag-upload, suriin at muling i-parse ang mga listahan ng code at listahan ng PIN kung kinakailangan.",
        "teamManagement.documentUploaded" to "Matagumpay na na-upload ang {label} \"{fileName}\".",
        "teamManagement.edit" to "I-edit",
        "teamManagement.editTeam" to "I-edit ang koponan",
        "teamManagement.eligibility" to "Pagiging karapat-dapat",
        "teamManagement.eligibilityAdultRelease" to "Pinayagan sa adults",
        "teamManagement.eligibilityAdultReleaseAndReserve" to "Pinayagan + reserve sa adults",
        "teamManagement.eligibilityAdultReserve" to "Reserve sa adults",
        "teamManagement.eligibilityRegular" to "Karaniwan",
        "teamManagement.enterUrlForAutoConfig" to "Maglagay ng myTischtennis URL para sa awtomatikong pagsasaayos",
        "teamManagement.error" to "Error",
        "teamManagement.errorConfiguringLeague" to "Hindi ma-configure ang liga.",
        "teamManagement.errorConfiguringTeam" to "Hindi ma-configure ang koponan.",
        "teamManagement.errorDeletingTeam" to "Nabigong tanggalin ang club team.",
        "teamManagement.errorLoadingPdf" to "Nabigong i-load ang PDF.",
        "teamManagement.errorLoadingStats" to "Hindi ma-load ang mga istatistika.",
        "teamManagement.errorParsingPdf" to "Nabigong i-parse ang PDF file",
        "teamManagement.errorParsingUrl" to "Hindi ma-parse ang URL. Pakisuri ang format.",
        "teamManagement.errorsCount" to "Mga Error: {count}",
        "teamManagement.errorUploadingDocument" to "Nabigong i-upload at i-parse ang file.",
        "teamManagement.exportLineupPdf" to "I-export ang line-up bilang PDF",
        "teamManagement.fetched" to "kinuha",
        "teamManagement.fetchTimedOut" to "Nag-time out habang kumukuha ng data (napakatagal ng async na trabaho).",
        "teamManagement.fetchTimeoutShort" to "Nag-time out habang kumukuha ng data.",
        "teamManagement.fileTooLarge" to "Ang {label} ay hindi dapat lumampas sa 10 MB.",
        "teamManagement.fileTooLargeTitle" to "Masyadong malaki ang file",
        "teamManagement.filterAll" to "Lahat",
        "teamManagement.filterConfigured" to "Na-configure",
        "teamManagement.filterNeedsAttention" to "Kailangan ng pagsusuri",
        "teamManagement.filterNoLeague" to "Walang liga",
        "teamManagement.firstHalf" to "Unang yugto",
        "teamManagement.firstHalfFull" to "Unang yugto (Hulyo - Disyembre)",
        "teamManagement.fullyConfigured" to "Ganap na naka-configure",
        "teamManagement.groupId" to "Group ID",
        "teamManagement.groupName" to "Pangalan ng pangkat",
        "teamManagement.invalidFileExtension" to "Ang {label} ay dapat magkaroon ng isa sa mga sumusunod na extension: {extensions}.",
        "teamManagement.invalidFileTypeTitle" to "Di-wastong uri ng file",
        "teamManagement.invalidMimeType" to "Ang {label} ay may hindi inaasahang uri ng MIME: {type}.",
        "teamManagement.lastRun" to "Huling pagtakbo",
        "teamManagement.lastUpdated" to "Huling na-update",
        "teamManagement.latestUpload" to "Huling na-upload: {date}",
        "teamManagement.league" to "Liga",
        "teamManagement.leagueConfiguredDetails" to "Liga: {league}\nSeason: {season}\nSamahan: {association}\nGroup ID: {groupId}\n\nAng data ng talahanayan ay maaari na ngayong awtomatikong makuha.",
        "teamManagement.leagueConfiguredSuccess" to "Matagumpay na na-configure ang liga. Ang data ng talahanayan ay maaari na ngayong awtomatikong makuha.",
        "teamManagement.leagueFieldRequired" to "Mangyaring pumili ng liga at mag-save.",
        "teamManagement.lineupEmpty" to "Wala pang manlalarong itinalaga sa koponang ito.",
        "teamManagement.lineupPdfEmpty" to "Walang manlalaro sa line-up – hindi makagawa ng PDF.",
        "teamManagement.lineupPdfFilePrefix" to "Line-up",
        "teamManagement.lineupProposal" to "Line-up ayon sa QTTR",
        "teamManagement.lineupSaved" to "Na-save ang line-up ng team.",
        "teamManagement.lineupSaveError" to "Hindi mai-save ang line-up ng koponan.",
        "teamManagement.lineupUnsavedChanges" to "May mga hindi na-save na pagbabago sa line-up ng team.",
        "teamManagement.lineupValidationTooLargeGap" to "Mahigit 30 QTTR points ang lamang ni {higher} kay {lower}. Pakitama ang ayos na ito.",
        "teamManagement.loadingStats" to "Nilo-load ang mga istatistika...",
        "teamManagement.manualFetch" to "Kunin",
        "teamManagement.markAsInterested" to "Markahan bilang Interesado",
        "teamManagement.matchesSummary" to "Nakita ang mga katugma: {matchesFound}\nNagawa ang mga bagong tugma: {created}\nNa-update ang mga laban: {updated}",
        "teamManagement.matchResults" to "Mga resulta ng tugma",
        "teamManagement.missingConfigSummary" to "Nawawalang impormasyon:",
        "teamManagement.missingItems" to "Nawawala: {items}",
        "teamManagement.missingLeagueForTeam" to "Walang liga na ibinigay para sa napiling koponan.",
        "teamManagement.moreErrors" to "... at {count} pa",
        "teamManagement.myTischtennis" to "myTischtennis",
        "teamManagement.myTischtennisIntro" to "Mag-paste ng URL, suriin ang configuration at manu-manong kunin ang data kapag kinakailangan.",
        "teamManagement.mytischtennisLoginRequired" to "Kinakailangan ang pag-login sa myTischtennis",
        "teamManagement.myTischtennisUrlPlaceholder" to "myTischtennis URL...",
        "teamManagement.myTischtennisUrlRequired" to "I-paste at i-parse ang URL ng MyTischtennis para i-link ang team ID at datos ng liga.",
        "teamManagement.never" to "Hindi kailanman",
        "teamManagement.newTeam" to "Bagong team",
        "teamManagement.noAssignment" to "Walang assignment",
        "teamManagement.noAutomaticUpdate" to "Wala pang awtomatikong pag-update",
        "teamManagement.noDocumentUploadYet" to "Wala pang na-upload na dokumento.",
        "teamManagement.noIssues" to "Walang bukas na mga isyu sa configuration.",
        "teamManagement.noLeague" to "Walang liga",
        "teamManagement.noMatchesFoundDetails" to "Tandaan: Walang nakitang tugma.\nMga linya sa dokumento: {lines}",
        "teamManagement.noMatchesFoundTitle" to "Walang nakitang tugma",
        "teamManagement.noMatchingTeams" to "Walang mga koponan na tumutugma sa kasalukuyang paghahanap o filter.",
        "teamManagement.noMembersInPool" to "Walang nakitang katugmang miyembro.",
        "teamManagement.noPlannedLeague" to "Walang nakatakdang liga",
        "teamManagement.noPlayerStats" to "Walang naitalang pagpapakita.",
        "teamManagement.notConfigured" to "Hindi naka-configure",
        "teamManagement.notCreated" to "Hindi nilikha",
        "teamManagement.noTeamsYet" to "Wala pang teams. Lumikha ng iyong unang koponan.",
        "teamManagement.openDocument" to "Bukas",
        "teamManagement.openInWorkspace" to "Bukas para i-edit",
        "teamManagement.parseDocument" to "I-parse muli",
        "teamManagement.parseUrlAction" to "Suriin ang URL",
        "teamManagement.partiallyConfigured" to "Bahagyang na-configure",
        "teamManagement.pdfFileNotFound" to "Hindi mahanap ang PDF file.",
        "teamManagement.pinList" to "Listahan ng PIN",
        "teamManagement.plannedLeague" to "Plano na liga",
        "teamManagement.plannedLeagueHint" to "Opsyonal. Hiwalay sa nakarehistrong liga (MyTischtennis).",
        "teamManagement.plannedLeaguePlaceholder" to "hal. district league, pagkatapos ng susunod na rehistro …",
        "teamManagement.planningSubtitle" to "Ipamahagi ang mga miyembro sa mga nakaiskedyul na koponan, itakda ang pagkakasunud-sunod, at tingnan ang mga bukas na takdang-aralin.",
        "teamManagement.planningTitle" to "Pagpaplano ng pangkat",
        "teamManagement.player" to "Manlalaro",
        "teamManagement.playersPoolSubtitle" to "Lahat ng aktibong miyembro na may interes sa laro",
        "teamManagement.playerStats" to "Mga pagpapakita",
        "teamManagement.playerStatsIntro" to "Mabilis na pangkalahatang-ideya ng mga pagpapakita ng koponan na ito sa kasalukuyang season.",
        "teamManagement.playersWantToPlay" to "Gusto naming maglaro.",
        "teamManagement.qttr" to "(Q)TTR rating",
        "teamManagement.ratingUpdates" to "Mga update sa rating",
        "teamManagement.refreshStats" to "I-refresh",
        "teamManagement.reuploadFile" to "Paki-upload muli ang file at subukang muli.",
        "teamManagement.searchMembers" to "Maghanap ng miyembro",
        "teamManagement.searchTeams" to "Koponan sa paghahanap",
        "teamManagement.season" to "Season",
        "teamManagement.seasonFull" to "Buong season (mula 1 Hulyo)",
        "teamManagement.seasonUnknown" to "hindi kilala",
        "teamManagement.secondHalf" to "Ikalawang yugto",
        "teamManagement.secondHalfFull" to "Ikalawang yugto (mula Enero 1)",
        "teamManagement.selectedLineup" to "Napiling manlalaro",
        "teamManagement.selectMember" to "Pumili ng miyembro",
        "teamManagement.selectTeam" to "Piliin ang Koponan",
        "teamManagement.selectTeamFirst" to "Mangyaring pumili muna ng isang koponan",
        "teamManagement.selectTeamForConfiguration" to "Upang maisaaktibo ang pagsasaayos ng myTischtennis, kailangan mo munang pumili ng isang koponan mula sa listahan.",
        "teamManagement.selectTeamTitle" to "Pumili ng koponan",
        "teamManagement.showCodeList" to "Ipakita ang listahan ng code",
        "teamManagement.showPinList" to "Ipakita ang listahan ng PIN",
        "teamManagement.sortFirstLast" to "Pag-uuri: Pangalan Apelyido",
        "teamManagement.sortLastFirst" to "Pag-uuri: Apelyido Pangalan",
        "teamManagement.status" to "katayuan",
        "teamManagement.subtitle" to "Pumili ng mga koponan, suriin ang configuration at panatilihin ang data ng liga sa isang lugar.",
        "teamManagement.successful" to "Matagumpay",
        "teamManagement.tableUpdateLabel" to "Pag-update ng talahanayan:",
        "teamManagement.tableUrlDetected" to "Nakita ang URL ng talahanayan",
        "teamManagement.team" to "Team",
        "teamManagement.teamAgeGroup" to "pangkat ng edad",
        "teamManagement.teamConfiguredDetails" to "Liga: {league}\nSeason: {season}\nAktibo na ngayon ang awtomatikong pagkuha ng data.",
        "teamManagement.teamConfiguredSuccess" to "Matagumpay na na-configure ang koponan. Aktibo na ngayon ang awtomatikong pagkuha ng data.",
        "teamManagement.teamDataFetched" to "Matagumpay na nakuha ang data ng koponan.",
        "teamManagement.teamDataFetchedDetails" to "Koponan: {team}\nMga nakuhang tala: {count}",
        "teamManagement.teamGender" to "Kasarian",
        "teamManagement.teamGenderFemale" to "Babae",
        "teamManagement.teamGenderOpen" to "Bukas",
        "teamManagement.teamHasNoLeague" to "Ang pangkat na ito ay hindi nakatalaga sa isang liga.",
        "teamManagement.teamId" to "ID ng Team",
        "teamManagement.teamName" to "Pangalan ng pangkat",
        "teamManagement.teamNamePlaceholder" to "hal. Lalaki 1, Babae 2",
        "teamManagement.teams" to "Teams",
        "teamManagement.title" to "Pamamahala ng Koponan",
        "teamManagement.unassignedMembers" to "hindi pa nakatalaga",
        "teamManagement.unassignedMembersSubtitle" to "Mga Miyembrong Walang Team Assignment",
        "teamManagement.unknown" to "Hindi alam",
        "teamManagement.unknownTeam" to "Hindi kilalang koponan",
        "teamManagement.updated" to "na-update",
        "teamManagement.uploadNewVersion" to "Mag-upload ng bagong bersyon",
        "tournament.apply" to "Ilapat ang Mga Pagbabago",
        "tournaments.action" to "Aksyon",
        "tournaments.add" to "Idagdag",
        "tournaments.addClass" to "Magdagdag ng Klase",
        "tournaments.addClubMember" to "Magdagdag ng Miyembro ng Club",
        "tournaments.addExternalParticipant" to "Magdagdag ng Panlabas na Kalahok",
        "tournaments.addPairing" to "Magdagdag ng pagpapares",
        "tournaments.addPoolRule" to "Magdagdag ng pool rule",
        "tournaments.address" to "Address",
        "tournaments.adjustTournamentSearch" to "Ayusin ang termino para sa paghahanap o lumikha ng bagong paligsahan.",
        "tournaments.advancersPerGroup" to "Mga promoter bawat grupo",
        "tournaments.allClasses" to "Lahat ng Klase",
        "tournaments.allDataComplete" to "Kumpleto na ang lahat ng datos ng mga kalahok.",
        "tournaments.allDataCompleteTop3" to "Kumpleto na ang lahat ng datos ng unang 3 puwesto.",
        "tournaments.apply" to "Ilapat ang Mga Pagbabago",
        "tournaments.assignmentReviewTitle" to "{count} kalahok ay nangangailangan ng isang pagpipilian:",
        "tournaments.atLeastOnePoolRule" to "Mangyaring magdagdag ng kahit isang pool rule para sa {label} (hal. places 1,2).",
        "tournaments.autoAssignableParticipantsHint" to "{count} sa mga ito ay maaaring awtomatikong italaga.",
        "tournaments.autoAssignEligible" to "Awtomatikong italaga",
        "tournaments.autoAssignEligibleDone" to "{count} kalahok ay awtomatikong itinalaga.",
        "tournaments.autoAssignEligibleNone" to "Kasalukuyang walang kalahok na may iisang awtomatikong takdang-aralin sa klase.",
        "tournaments.autoAssignEligiblePartial" to "{successCount} kalahok ay awtomatikong itinalaga, {errorCount} ay nabigo.",
        "tournaments.birthdate" to "Petsa ng kapanganakan",
        "tournaments.cancel" to "Kanselahin",
        "tournaments.class" to "Klase",
        "tournaments.classes" to "Mga klase",
        "tournaments.className" to "Pangalan ng Klase",
        "tournaments.cleanupOrphanedMatches" to "Linisin ang mga ulilang laro",
        "tournaments.club" to "Samahan",
        "tournaments.clubMember" to "(Miyembro ng club)",
        "tournaments.conflictSuggestionLabel" to "Mga mungkahi:",
        "tournaments.correctMatch" to "Itama",
        "tournaments.create" to "Lumikha",
        "tournaments.createFinalFromIntermediate" to "Gumawa ng final round mula sa intermediate round",
        "tournaments.createFinalFromPreliminary" to "Gumawa ng final round mula sa preliminary round",
        "tournaments.createGroupMatches" to "Lumikha ng mga tugma ng pangkat",
        "tournaments.createGroups" to "Sino ang Maaaring Gumawa ng Mga Grupo",
        "tournaments.createIntermediateFromPreliminary" to "Gumawa ng intermediate round mula sa preliminary round",
        "tournaments.createMatches" to "Magtakda ng mga tugma",
        "tournaments.createSuggestedPairings" to "Gumawa ng mga pagpapares",
        "tournaments.currentClass" to "Aktibong Klase",
        "tournaments.dataNotRecorded" to "Hindi pa naitala",
        "tournaments.date" to "Petsa",
        "tournaments.delete" to "Tanggalin",
        "tournaments.deleteClassConfirm" to "Sigurado ka bang buburahin ang class na \"{name}\"?",
        "tournaments.deleteClassParticipantsDetached" to "Aalisin ang lahat ng participants sa class na ito.",
        "tournaments.deleteClassTitle" to "Burahin ang class",
        "tournaments.deleteExistingPairingsConfirm" to "Buburahin ang mga kasalukuyang pairing. Magpatuloy?",
        "tournaments.deleteKORound" to "Knockout",
        "tournaments.diff" to "Diff",
        "tournaments.distributeTables" to "Ipamahagi ang mga bakanteng mesa",
        "tournaments.distributeTablesResult" to "Pamamahagi ng mesa",
        "tournaments.doubles" to "Doble",
        "tournaments.doublesPairingHint" to "{count} kalahok sa doubles class na ito ay nangangailangan pa rin ng kapareha.",
        "tournaments.doublesTournament" to "Dobleng paligsahan",
        "tournaments.doublesTournamentHint" to "Ginagawang doble ang lahat ng umiiral na klase at gagawa ng mga bagong klase bilang mga doble bilang default.",
        "tournaments.edit" to "I-edit",
        "tournaments.eligibleClassesHint" to "Angkop para sa: {classes}",
        "tournaments.email" to "Email address",
        "tournaments.encounter" to "Pagpupulong",
        "tournaments.enterClassName" to "Mangyaring maglagay ng pangalan ng class.",
        "tournaments.enterExternalParticipantName" to "Mangyaring ilagay kahit first name at last name.",
        "tournaments.enterMiniLocation" to "Mangyaring maglagay ng lokasyon.",
        "tournaments.errorCreatingGroups" to "Error sa paggawa ng mga grupo.",
        "tournaments.errorCreatingTournament" to "Error sa paggawa ng tournament.",
        "tournaments.errorDistributingTables" to "May error sa pamamahagi ng mga mesa.",
        "tournaments.errorGeneratingPdf" to "Error sa pagbuo ng PDF.",
        "tournaments.errorMergingClasses" to "Nabigong pagsamahin ang mga klase.",
        "tournaments.errorMoreSeededThanUnseeded" to "Mas marami ang taya kaysa mga unseeded na manlalaro. Hindi makagawa ng mga random na pagpapares.",
        "tournaments.errorResettingKORound" to "Error sa pag-reset ng knockout round.",
        "tournaments.errorUpdatingTournament" to "Error sa pag-update ng tournament.",
        "tournaments.exportPDF" to "I-export ang PDF",
        "tournaments.external" to "Panlabas",
        "tournaments.finalPlacements" to "Mga huling placement",
        "tournaments.finalRound" to "Panghuling round",
        "tournaments.finishMatch" to "Tapusin",
        "tournaments.firstName" to "Pangalan",
        "tournaments.forForwarding" to "para sa pagpapasa",
        "tournaments.gaveUp" to "Nakalagay",
        "tournaments.gaveUpHint" to "Sumuko na ang manlalaro – lahat ng laro ay binibilang para sa kalaban (11:0) o 0:0 para sa pareho.",
        "tournaments.genderAll" to "Lahat",
        "tournaments.genderMixed" to "Mixed",
        "tournaments.generatingPDF" to "Gumagawa ng PDF...",
        "tournaments.group" to "Grupo",
        "tournaments.groupMatches" to "Mga Inter Group Matches",
        "tournaments.groupNumber" to "Grupo",
        "tournaments.groupPlacements" to "Mga Placement ng Grupo",
        "tournaments.groupsLabel" to "Mga grupo",
        "tournaments.groupsOverview" to "Pangkalahatang-ideya ng mga pangkat",
        "tournaments.groupsPerClass" to "Pool standing",
        "tournaments.groupsPerClassHint" to "Para sa bawat klase, ilagay ang bilang ng mga grupo (0 = walang mga grupo para sa klase na ito):",
        "tournaments.index" to "Index",
        "tournaments.intermediateRound" to "Intermediate round (round 2)",
        "tournaments.internalStatsAbsoluteRank" to "Ranggo sa kabuuang marka",
        "tournaments.internalStatsAgeFilter" to "Edad at kasarian (singles)",
        "tournaments.internalStatsAgeFilterAll" to "Lahat ng pangkat ng edad",
        "tournaments.internalStatsAgeFilterNone" to "Walang napiling pangkat ng edad",
        "tournaments.internalStatsAgeNoClass" to "Walang klase",
        "tournaments.internalStatsAgeSelectAll" to "Lahat",
        "tournaments.internalStatsAgeSelectNone" to "Wala",
        "tournaments.internalStatsAverageRank" to "Ranggo sa average (bawat tournament)",
        "tournaments.internalStatsAvgPoints" to "Avg.",
        "tournaments.internalStatsEmpty" to "Walang datos sa napiling panahon.",
        "tournaments.internalStatsExportPdf" to "I-export bilang PDF",
        "tournaments.internalStatsFilterAgeBands" to "Mga klase sa edad",
        "tournaments.internalStatsFilterGenderColumn" to "Kasarian",
        "tournaments.internalStatsGenderScopeAll" to "Lahat",
        "tournaments.internalStatsGenderScopeGirls" to "Mga babae lang",
        "tournaments.internalStatsLast12Months" to "Huling 12 buwan",
        "tournaments.internalStatsLast3Months" to "Huling 3 buwan",
        "tournaments.internalStatsLast6Months" to "Huling 6 na buwan",
        "tournaments.internalStatsOpenButton" to "Buksan ang istatistika (singles)",
        "tournaments.internalStatsPeriod" to "Saklaw",
        "tournaments.internalStatsPoints" to "Kabuuan",
        "tournaments.internalStatsPointsExplain" to "Marka: sa bawat grupo ang puwesto ay nasa porsyento (may N na may ranggo: 1 = 100%, huli = 0%, linear sa gitna; parehong ranggo = parehong halaga). Kinakabilang ang lahat ng may ranggo sa grupo (kasama ang bisita). Isang manlalaro lamang: 100%. Sa KO: pinakamataas na grupo ng klase + 1, +1 bawat panalong laro sa KO. Mga miyembro lamang (singles).",
        "tournaments.internalStatsTitle" to "Istatistika ng internal na tournament (singles)",
        "tournaments.internalStatsTournamentsInPeriod" to "{count} tournament sa panahon (hindi kasama ang mini championships).",
        "tournaments.internalStatsTtAdult" to "Mga matatanda",
        "tournaments.internalTournaments" to "Mga panloob na paligsahan",
        "tournaments.knockoutLabel" to "KO",
        "tournaments.koRound" to "knock-out round",
        "tournaments.lastName" to "Apelyido",
        "tournaments.livePosition" to "Live na upuan",
        "tournaments.loadFromTraining" to "Mag-load mula sa araw ng pagsasanay",
        "tournaments.markMatchLive" to "Markahan bilang live",
        "tournaments.maxGroupSize" to "Pinakamataas na Laki ng Party",
        "tournaments.mergeClasses" to "Pagsamahin ang mga klase (karaniwang yugto ng pangkat)",
        "tournaments.mergeDistribute" to "Ipamahagi ang mga manlalaro mula sa A sa lahat ng grupo (mula sa B)",
        "tournaments.mergeSingleGroup" to "Lahat ng manlalaro mula sa A sa isang grupo (sa B)",
        "tournaments.minBirthYear" to "Ipinanganak sa taon o mas bago",
        "tournaments.miniChampionshipLocation" to "Lokasyon",
        "tournaments.miniChampionships" to "Mga Mini Championship",
        "tournaments.miniChampionshipYear" to "taon",
        "tournaments.miniChampionshipYearHint" to "12 = ngayong taon 12 o 13 taon, 10 = 10 o 11, 8 = 9 at mas bata",
        "tournaments.minimumParticipantsForPairings" to "Kailangan ng hindi bababa sa 2 participants para sa pairings.",
        "tournaments.missingDataPDF" to "Nawawalang datos bilang PDF",
        "tournaments.missingDataPDFSubtitle" to "Pakikolekta ang nawawalang datos (may markang ____) mula sa mga kalahok at itala dito.",
        "tournaments.missingDataPDFSubtitleTop3" to "Pakikolekta ang nawawalang datos ng unang 3 (may markang ____) at itala dito.",
        "tournaments.missingDataPDFTitle" to "Nawawalang datos ng mga kalahok – Mini championship",
        "tournaments.missingDataPDFTitleTop3" to "Nawawalang datos – Top 3 Mini championship",
        "tournaments.name" to "pangalan",
        "tournaments.newMiniChampionship" to "Bagong Mini Championship",
        "tournaments.setShort" to "Set",
        "tournaments.newTournament" to "Magdagdag ng Bagong Tournament",
        "tournaments.noAssignableMatches" to "Walang laban kung saan pareho ang mga manlalaro ay bakante.",
        "tournaments.noClassesYet" to "Wala pang klase. Magdagdag ng bagong klase.",
        "tournaments.noEligibleClass" to "Walang nakitang angkop na klase.",
        "tournaments.noFreeTables" to "Walang bakanteng mesa.",
        "tournaments.noMatchingTournamentsTitle" to "Walang katugmang mga paligsahan",
        "tournaments.noOrphanedMatchesFound" to "Walang nahanap na orphaned matches.",
        "tournaments.noPlacementsYet" to "Wala pang available na mga placement.",
        "tournaments.noPlayerDataAvailable" to "Walang available na data ng player",
        "tournaments.noPoolRulesYet12" to "Wala pang rules. Halimbawa: places 1 at 2 -> top round-2 groups.",
        "tournaments.noPoolRulesYetFinal" to "Wala pang rules. Halimbawa: places 1 at 2 -> final round.",
        "tournaments.noTop3Yet" to "Hindi pa natutukoy ang unang 3 puwesto.",
        "tournaments.noTournamentDate" to "Walang tournament date.",
        "tournaments.noTournamentsCreatedYet" to "Wala pang paligsahan na nalikha.",
        "tournaments.noTrainingOnDate" to "Walang training session para sa {date}.",
        "tournaments.noTrainingParticipants" to "Walang participants na nakita sa training session para sa petsang ito.",
        "tournaments.noValidTrainingParticipants" to "Walang valid na participants na nakita sa training session para sa petsang ito.",
        "tournaments.numberOfGroups" to "Nr ng mga grupo",
        "tournaments.numberOfTables" to "Bilang ng mesa",
        "tournaments.openTournaments" to "Buksan ang mga Tournament",
        "tournaments.optional" to "optional",
        "tournaments.orphanedMatchesRemoved" to "{count} orphaned matches ang naalis.",
        "tournaments.outOfCompetition" to "Player mula sa A wala sa kompetisyon",
        "tournaments.page" to "Pahina",
        "tournaments.pairingAlreadyExists" to "May ganitong pairing na.",
        "tournaments.pairings" to "Dobleng Pagpares",
        "tournaments.pairingsCreatedWithErrors" to "{successCount} pairings ang nagawa, {errorCount} errors.",
        "tournaments.participantConflicts" to "Mga salungatan",
        "tournaments.participantNotFound" to "Hindi nakita ang participant.",
        "tournaments.participants" to "Mga kalahok",
        "tournaments.participantsNeedClassAssignment" to "{count} kalahok ay hindi pa nakatalaga sa isang klase. Dapat italaga muna ang mga ito.",
        "tournaments.phone" to "Telepono",
        "tournaments.placementsPendingFinals" to "Lalabas ang mga panghuling paglalagay sa sandaling umiral ang maraming grupo o panghuling round.",
        "tournaments.placementsPendingGroups" to "Lilitaw ang mga paglalagay ng pangkat kapag umiral na ang mga tugma ng pangkat.",
        "tournaments.placementsPendingNoGroups" to "Lalabas dito ang mga paglalagay sa sandaling magkaroon ng mga laban ng grupo o panghuling round.",
        "tournaments.placementsPendingSelectedClass" to "Wala pang mga paglalagay para sa kasalukuyang napiling klase.",
        "tournaments.placementsPendingTitle" to "Hindi pa available ang mga paglalagay",
        "tournaments.placesFromEachGroup" to "Mga puwesto mula sa bawat grupo (hal. 1,2)",
        "tournaments.player" to "Mga skater",
        "tournaments.playerOne" to "Manlalaro 1",
        "tournaments.playerTwo" to "Manlalaro 2",
        "tournaments.playInGroups" to "Naglalaro sa mga pangkat",
        "tournaments.playThirdPlace" to "Maglaro para sa ikatlong puwesto",
        "tournaments.pleaseEnterDate" to "Mangyaring maglagay ng petsa",
        "tournaments.pleaseSelectParticipant" to "Mangyaring pumili ng isang mag-aaral.",
        "tournaments.points" to "Mga puntos",
        "tournaments.pointsRatio" to "Mga Puntos sa Laro",
        "tournaments.poolRuleLabel" to "Panuntunan {number}",
        "tournaments.poolRulePlacesHelp" to "Halimbawa: 1 o 1,2",
        "tournaments.poolRulePlacesLabel" to "Aling mga lugar ang sumusulong?",
        "tournaments.poolRulePreview" to "Mula sa bawat pangkat, ang mga lugar na {places} ay umuusad sa {target}.",
        "tournaments.poolRuleQuickExamples" to "Mabilis na mga halimbawa:",
        "tournaments.poolRuleSummary" to "Mga lugar {places} pumunta sa {target}",
        "tournaments.poolRuleTargetGroupsDetailed" to "{count} target na grupo",
        "tournaments.poolRuleTargetKnockout" to "ang knockout bracket",
        "tournaments.poolRuleTargetLabel" to "Saan napupunta ang mga lugar na ito?",
        "tournaments.position" to "Ang parisukat",
        "tournaments.problemConfigDescription" to "Suriin ang petsa, pangalan at panalong set.",
        "tournaments.problemConfigTitle" to "Hindi kumpleto ang configuration",
        "tournaments.problemConflictsDescription" to "Suriin ang mga hindi wastong klase, nawawalang data o hindi malinaw na mga takdang-aralin.",
        "tournaments.problemConflictsTitle" to "{count} kalahok na may mga salungatan",
        "tournaments.problemDoublesAutoDescription" to "Ang open doubles class ay maaaring awtomatikong ipares kaagad.",
        "tournaments.problemDoublesDescription" to "Kailangan pa rin ng isa o higit pang doubles class ng mga partner assignment.",
        "tournaments.problemDoublesTitle" to "{count} open doubles partners",
        "tournaments.problemGroupMatchesDescription" to "Ang mga grupo ay handa na, ngunit ang mga laban ay hindi pa nagagawa.",
        "tournaments.problemGroupMatchesTitle" to "Hindi pa nabuo ang mga tugma ng pangkat",
        "tournaments.problemGroupsMissingDescription" to "Ang paligsahan ng grupo ay kailangang gumawa ng mga grupo muna.",
        "tournaments.problemGroupsMissingTitle" to "Hindi pa nagagawa ang mga grupo",
        "tournaments.problemKnockoutReadyDescription" to "Ang yugto ng pangkat ay kumpleto at ang pangwakas na pag-ikot ay maaaring mabuo ngayon.",
        "tournaments.problemKnockoutReadyTitle" to "Maaaring simulan ang knockout",
        "tournaments.problemUnassignedAutoDescription" to "{count} sa mga ito ay maaaring awtomatikong italaga kaagad.",
        "tournaments.problemUnassignedDescription" to "Ang mga kalahok na ito ay nangangailangan pa rin ng manu-manong takdang-aralin sa klase.",
        "tournaments.problemUnassignedTitle" to "{count} kalahok na walang klase",
        "tournaments.promotionRule12" to "Advance: preliminary round → intermediate round (1→2)",
        "tournaments.promotionRuleDescription12" to "Tukuyin kung aling mga lugar mula sa bawat preliminary group ang uusad sa intermediate round.",
        "tournaments.promotionRuleDescriptionFinalGroups" to "Tukuyin kung aling mga lugar mula sa nakaraang round ang uusad sa final-round na mga grupo.",
        "tournaments.promotionRuleDescriptionFinalKnockout" to "Tukuyin kung aling mga lugar mula sa nakaraang round na umabante sa knockout bracket.",
        "tournaments.promotionRuleFinal" to "Advance: round {from} → round {to}",
        "tournaments.randomizeGroups" to "I-randomize",
        "tournaments.randomPairings" to "Random na Dobleng Pares",
        "tournaments.randomPairingsCreated" to "Nagawa ang mga random na pagpapares.",
        "tournaments.resetGroupMatches" to "Mga Inter Group Matches",
        "tournaments.resetGroups" to "I-reset ang Mga Grupo",
        "tournaments.result" to "Resulta",
        "tournaments.resultsRanking" to "Ranggo",
        "tournaments.round" to "Bilog",
        "tournaments.roundGroupCount" to "Bilang ng mga grupo",
        "tournaments.roundMode" to "Mode",
        "tournaments.ruleStatusBlocked" to "Naka-block",
        "tournaments.ruleStatusOk" to "Mukhang maganda",
        "tournaments.ruleStatusOkDescription" to "Ang panuntunang ito ay tumutugma sa kasalukuyang target na round at maaaring gamitin kung ano man.",
        "tournaments.ruleStatusReview" to "Balik-aral",
        "tournaments.save" to "I-save",
        "tournaments.saveRounds" to "I-save ang rounds",
        "tournaments.seeded" to "Binhi",
        "tournaments.selectClass" to "Piliin ang Klase",
        "tournaments.selectClassPrompt" to "Mangyaring pumili ng klase.",
        "tournaments.selectedTournament" to "Aktibong paligsahan",
        "tournaments.selectParticipant" to "Pumili ng user",
        "tournaments.selectPlayer" to "Pumili ng mga manlalaro",
        "tournaments.selectTournamentFirst" to "Mangyaring pumili muna ng tournament.",
        "tournaments.selectTwoDifferentPlayers" to "Mangyaring pumili ng dalawang magkaibang player.",
        "tournaments.setDiff" to "Pagkakaiba ng Pangungusap",
        "tournaments.sets" to "mga parirala",
        "tournaments.showClass" to "Tingnan ang Klase",
        "tournaments.showingTournamentCount" to "{visible} ng {total}",
        "tournaments.showPlayerDetails" to "Tingnan ang Mga Detalye ng Manlalaro",
        "tournaments.singles" to "Walang asawa",
        "tournaments.sourceClass" to "Pinagmulan",
        "tournaments.stageActionMissingRulesHint" to "Gumawa muna ng kahit isang advancement rule bago ilipat ang mga manlalaro sa susunod na round.",
        "tournaments.stageActionRun" to "Takbo na",
        "tournaments.stageActionsDescription" to "Ang mga hakbang na ito ay naglilipat ng mga kwalipikadong manlalaro sa susunod na round.",
        "tournaments.stageActionsTitle" to "Mga susunod na aksyon",
        "tournaments.stageConfigBadServerResponse" to "Hindi wastong tugon mula sa server.",
        "tournaments.stageConfigCurrentSetup" to "Kasalukuyang istraktura",
        "tournaments.stageConfigIntro" to "Opsyonal ang intermediate round. Kapag in-activate mo ito, laging may susunod na final round. Ang knockout final round ay gagawin bilang isang bracket.",
        "tournaments.stageConfigLoadError" to "Error sa pag-load ng round configuration.",
        "tournaments.stageConfigLoading" to "Naglo-load ng round configuration…",
        "tournaments.stageConfigMissingIds" to "Hindi ma-save: kulang ang club o tournament ID.",
        "tournaments.stageConfigTitle" to "Intermediate at Final Round",
        "tournaments.stageCreated" to "Nagawa ang round {round}.",
        "tournaments.stageFinalDescription" to "Magpasya kung ang huling round ay dapat laruin bilang mga grupo o direkta bilang isang knockout bracket.",
        "tournaments.stageFlowBreakdownActionAddRule" to "Magdagdag ng panuntunan",
        "tournaments.stageFlowBreakdownActionOpen" to "Buksan ang panuntunan",
        "tournaments.stageFlowBreakdownActionReview" to "Suriin ang mga isyu",
        "tournaments.stageFlowBreakdownErrors" to "{count} (mga) error sa pagharang",
        "tournaments.stageFlowBreakdownMissingRule" to "Wala pang kumpletong panuntunan ang naidagdag",
        "tournaments.stageFlowBreakdownOk" to "Mukhang maganda ang configuration",
        "tournaments.stageFlowBreakdownWarnings" to "{count} (mga) babala bukas",
        "tournaments.stageFlowDirectFinal" to "Preliminary round -> final round ({final})",
        "tournaments.stageFlowHealthBlocked" to "Ang bilog na lohika ay magkasalungat",
        "tournaments.stageFlowHealthBlockedDescription" to "Hindi bababa sa isang panuntunan ang kasalukuyang hindi tumutugma sa target na round o naglalaman ng mga error sa configuration ng pagharang.",
        "tournaments.stageFlowHealthIncomplete" to "Ang round logic ay hindi kumpleto",
        "tournaments.stageFlowHealthMissingRules" to "Hindi bababa sa isang transition ang wala pang kumpletong panuntunan sa pagsulong.",
        "tournaments.stageFlowHealthOk" to "Mukhang maganda ang round logic",
        "tournaments.stageFlowHealthOkDescription" to "Ang mga transition sa pagitan ng mga round ay ganap na na-configure at kasalukuyang magkakaugnay.",
        "tournaments.stageFlowHealthReviewDescription" to "Ang round logic ay karaniwang magagamit, ngunit dapat pa ring suriin dahil sa mga bukas na pahiwatig.",
        "tournaments.stageFlowPreviewMissing" to "Wala pang na-configure na panuntunan.",
        "tournaments.stageFlowPreviewRule" to "Mga lugar {places} pumunta sa {target}",
        "tournaments.stageFlowPreviewRuleWithCount" to "{base} (inaasahang mga kwalipikado: {count})",
        "tournaments.stageFlowQualifiedPreviewEntry" to "G{group} · Lugar {position} · {name}",
        "tournaments.stageFlowQualifiedPreviewTitle" to "Kasalukuyang kwalipikado",
        "tournaments.stageFlowReadinessIncompleteGroups" to "{count} (mga) grupo ay hindi pa ganap na napagpasyahan",
        "tournaments.stageFlowReadinessNoGroups" to "Wala pang magkakatugmang grupo",
        "tournaments.stageFlowReadinessReady" to "Handa nang magsimula ang paglipat",
        "tournaments.stageFlowRecommendationError" to "Suriin muna ang unang error sa pagharang sa round logic.",
        "tournaments.stageFlowRecommendationFixes" to "Ang karaniwang mga problema sa pagsasaayos ay maaaring awtomatikong linisin kaagad.",
        "tournaments.stageFlowRecommendationMissingRule" to "Wala pa ring kumpletong panuntunan para sa {label}. Iyon ang pinakamagandang lugar para magpatuloy.",
        "tournaments.stageFlowRecommendationSave" to "Ang bilog na lohika ay magkakaugnay. Maaari mong i-save ang configuration ngayon.",
        "tournaments.stageFlowRecommendationTitle" to "Inirerekomenda ang susunod na hakbang",
        "tournaments.stageFlowRecommendationWarnings" to "May mga babala pa rin na dapat suriin bago i-save.",
        "tournaments.stageFlowWithIntermediate" to "Preliminary round -> intermediate round ({stage2}) -> final round ({final})",
        "tournaments.stageParticipantsTransferred" to "Ang mga kwalipikadong manlalaro ay inilipat sa {round}.",
        "tournaments.stageStep1" to "Hakbang 1",
        "tournaments.stageStep1Description" to "Magpasya muna kung dapat magkaroon ng karagdagang round pagkatapos ng preliminary round.",
        "tournaments.stageStep1Title" to "Magpasya sa isang intermediate round",
        "tournaments.stageStep2" to "Hakbang 2",
        "tournaments.stageStep2Description" to "Tukuyin kung ano ang magiging hitsura ng intermediate round at kung gaano karaming mga grupo ang kailangan nito.",
        "tournaments.stageStep3" to "Hakbang 3",
        "tournaments.stageValidationApplyAllFixes" to "Ilapat ang {count} (mga) mabilisang pag-aayos",
        "tournaments.stageValidationApplyFix" to "Mag-apply",
        "tournaments.stageValidationApplyTargetGroupFix" to "Itakda sa {count} target na grupo",
        "tournaments.stageValidationApplyTargetTypeFix" to "Lumipat sa {target}",
        "tournaments.stageValidationDescription" to "Ayusin ang mga puntong ito bago i-save o ilipat ang mga manlalaro sa susunod na round.",
        "tournaments.stageValidationGroupCountRequired" to "Mangyaring magtakda ng hindi bababa sa isang wastong bilang ng pangkat.",
        "tournaments.stageValidationKnockoutByesLikely" to "Sa inaasahang {count} qualifiers, malamang na kasama sa knockout bracket ang mga bye.",
        "tournaments.stageValidationKnockoutNeedsTwoPlayers" to "Ang isang knockout bracket ay nangangailangan ng hindi bababa sa 2 kwalipikadong manlalaro.",
        "tournaments.stageValidationKnockoutTargetOnly" to "Para sa isang knockout final round, tanging ang knockout bracket lang ang pinapayagan bilang target dito.",
        "tournaments.stageValidationNoRules" to "Wala pang panuntunan sa pagsulong para sa {stage}.",
        "tournaments.stageValidationNotEnoughQualifiersForGroups" to "Sa pamamagitan lamang ng {count} na mga kwalipikasyon para sa {groups} na mga target na grupo, ang mga walang laman na grupo ay gagawin.",
        "tournaments.stageValidationRulePlacesDuplicate" to "Ang isang panuntunan ay hindi dapat maglaman ng parehong lugar nang higit sa isang beses.",
        "tournaments.stageValidationRulePlacesGap" to "May mga gaps ang kahulugan ng lugar. Karaniwan ang isang tuluy-tuloy na pagkakasunud-sunod tulad ng 1,2 o 1,2,3 ay inilaan.",
        "tournaments.stageValidationRulePlacesInvalid" to "Ang kahulugan ng lugar ay hindi wasto. Ang mga positibong buong numero lamang tulad ng 1 o 1,2 ang pinapayagan.",
        "tournaments.stageValidationRulePlacesRequired" to "Magpasok ng kahit isang lugar na dapat umabante.",
        "tournaments.stageValidationRulesOverlap" to "Ang lugar na {place} ay itinalaga ng dalawang beses, sa panuntunan {first} at panuntunan {second}.",
        "tournaments.stageValidationSaveBlocked" to "Pakiayos muna ang mga naka-highlight na error sa configuration.",
        "tournaments.stageValidationSuggestion" to "Mungkahi: {value}",
        "tournaments.stageValidationTargetGroupCountMismatch" to "Ang bilang ng mga target na grupo ay dapat tumugma sa target na round. Inaasahan: {expected}.",
        "tournaments.stageValidationTargetGroupsRequired" to "Mangyaring magpasok ng wastong bilang ng mga target na pangkat.",
        "tournaments.stageValidationTargetTypeMismatch" to "Ang target ng panuntunang ito ay dapat tumugma sa target na round. Inaasahan: {target}.",
        "tournaments.stageValidationThinGroupsLikely" to "Sa {count} qualifier sa {groups} target na grupo, malamang na napakaliit ng mga grupo.",
        "tournaments.stageValidationTitle" to "Suriin ang configuration",
        "tournaments.startKORound" to "Simulan ang knockout round",
        "tournaments.statusActionAssign" to "Magtalaga",
        "tournaments.statusActionCreate" to "Lumikha",
        "tournaments.statusActionGenerate" to "Bumuo",
        "tournaments.statusActionPair" to "Magpares",
        "tournaments.statusActionReview" to "Balik-aral",
        "tournaments.statusActionStart" to "Magsimula",
        "tournaments.statusConfigIncomplete" to "Hindi kumpleto ang configuration",
        "tournaments.statusConfigReady" to "Handa na ang configuration",
        "tournaments.statusFinished" to "Tapos",
        "tournaments.statusGroupsMissing" to "Hindi pa nagagawa ang mga grupo",
        "tournaments.statusGroupsReady" to "Handa na ang mga grupo",
        "tournaments.statusGroupsRunning" to "Isinasagawa ang yugto ng pangkat",
        "tournaments.statusKnockoutReady" to "Handa nang magsimula ang knockout",
        "tournaments.statusKnockoutRunning" to "Kasalukuyang isinasagawa ang knockout",
        "tournaments.statusLive" to "mabuhay",
        "tournaments.statusOpen" to "Bukas",
        "tournaments.statusParticipantsConflicts" to "{count} kalahok na may mga salungatan",
        "tournaments.statusParticipantsReady" to "{count} kalahok na walang salungatan",
        "tournaments.statusParticipantsUnassigned" to "{count} walang klase",
        "tournaments.statusTournamentCompleted" to "Nakumpleto ang tournament",
        "tournaments.statusUnpairedDoubles" to "{count} dobleng walang kapareha",
        "tournaments.strategy" to "Diskarte",
        "tournaments.tabConfig" to "Configuration",
        "tournaments.tabGroups" to "Pool standing",
        "tournaments.table" to "Mesa",
        "tournaments.tablesDistributed" to "Ang mga mesa ay naipamahagi na.",
        "tournaments.tabParticipants" to "Mga kalahok",
        "tournaments.tabPlacements" to "Mga paglalagay",
        "tournaments.tabResults" to "Mga resulta",
        "tournaments.target" to "Target",
        "tournaments.targetClass" to "Target",
        "tournaments.targetGroupCount" to "Target na bilang ng grupo",
        "tournaments.targetGroupsLabel" to "{count} pangkat",
        "tournaments.tournamentClassGenderFemale" to "Babae",
        "tournaments.tournamentClassGenderOpen" to "Bukas (lahat)",
        "tournaments.tournamentName" to "Pangalan ng tournament",
        "tournaments.tournamentParticipations" to "Mga Opisyal na Tournament at Entries",
        "tournaments.transferQualifiedToFinalFromIntermediate" to "Ilipat ang mga kwalipikadong manlalaro sa huling round",
        "tournaments.transferQualifiedToFinalFromIntermediateDesc" to "Gumagamit ng intermediate-round hanggang final-round na mga panuntunan at inililipat ang mga kwalipikadong manlalaro sa kabuuan.",
        "tournaments.transferQualifiedToFinalFromPreliminary" to "Ilipat ang mga kwalipikadong manlalaro diretso sa final round",
        "tournaments.transferQualifiedToFinalFromPreliminaryDesc" to "Gumagamit ng preliminary-round hanggang final-round na mga panuntunan at direktang lumilikha ng mga kwalipikadong manlalaro doon.",
        "tournaments.transferQualifiedToIntermediate" to "Ilipat ang mga kwalipikadong manlalaro sa intermediate round",
        "tournaments.transferQualifiedToIntermediateDesc" to "Gumagamit ng preliminary-round hanggang intermediate-round na mga panuntunan at inililipat ang mga kwalipikadong manlalaro sa kabuuan.",
        "tournaments.unknown" to "Hindi alam",
        "tournaments.unknownDate" to "Hindi Alam na Petsa",
        "tournaments.unmarkMatchLive" to "Alisin ang live marker",
        "tournaments.unpairedDoubles" to "Dobleng walang kapareha",
        "tournaments.useIntermediateStage" to "Gamitin ang intermediate round",
        "tournaments.warningBirthDateMissing" to "Walang petsa ng kapanganakan para sa klase na ito",
        "tournaments.warningClassMissing" to "Hindi nahanap ang klase",
        "tournaments.warningGenderMismatch" to "Ang kasarian ay hindi tumutugma sa klase",
        "tournaments.warningGenderMissing" to "Walang kasarian para sa klase na ito",
        "tournaments.warningMissingPairing" to "Nawawala ang partner ng doubles",
        "tournaments.warningTooOldForClass" to "Masyadong luma para sa klase na ito",
        "tournaments.warningTooYoungForClass" to "Masyado pang bata para sa klase na ito",
        "tournaments.winningSets" to "Mga rate ng panalong",
        "tournaments.withoutClass" to "Walang Klase",
        "tournaments.workspaceProblemsTitle" to "{count} bukas na isyu",
        "trainingDetails.birthdate" to "Petsa ng kapanganakan",
        "trainingDetails.birthYear" to "Taon ng kapanganakan",
        "trainingDetails.last12Months" to "Huling 12 buwan",
        "trainingDetails.last3Months" to "Huling 3 buwan",
        "trainingDetails.maxBirthYear" to "Ipinanganak ≤ taon",
        "trainingDetails.noTrainings" to "Walang magagamit na pagdalo sa pagsasanay",
        "trainingDetails.title" to "Mga Detalye ng Pagsasanay",
        "trainingDetails.total" to "Kabuuan",
        "trainingDetails.trainingParticipations" to "Mga partisipasyon sa pagsasanay (pinagsunod-sunod sa pababang pagkakasunud-sunod)",
        "trainingGroupsTab.addMember" to "Magdagdag ng Miyembro...",
        "trainingGroupsTab.cancel" to "Kanselahin",
        "trainingGroupsTab.create" to "Lumikha",
        "trainingGroupsTab.delete" to "Tanggalin",
        "trainingGroupsTab.edit" to "I-edit",
        "trainingGroupsTab.editGroup" to "I-edit ang Grupo",
        "trainingGroupsTab.groupName" to "Pangalan ng Grupo",
        "trainingGroupsTab.groups" to "Pool standing",
        "trainingGroupsTab.members" to "Mga miyembro",
        "trainingGroupsTab.newGroup" to "+ Bagong Grupo",
        "trainingGroupsTab.noMembersAvailable" to "Walang available na mga kasosyong kaakibat",
        "trainingGroupsTab.remove" to "Alisin",
        "trainingStats.actions" to "Mga aksyon",
        "trainingStats.activeMembers" to "Mga aktibong miyembro",
        "trainingStats.allTrainingDays" to "Lahat ng araw ng pagsasanay",
        "trainingStats.attendingMembers" to "Mga dumalong miyembro",
        "trainingStats.averageParticipationCurrentMonth" to "Karaniwang paglahok (kasalukuyang buwan)",
        "trainingStats.averageParticipationHalfYear" to "Karaniwang paglahok (kalahating taon)",
        "trainingStats.averageParticipationLastMonth" to "Karaniwang paglahok (nakaraang buwan)",
        "trainingStats.averageParticipationQuarter" to "Karaniwang paglahok (quarter)",
        "trainingStats.averageParticipationYear" to "Karaniwang paglahok (taon)",
        "trainingStats.birthdate" to "Petsa ng kapanganakan",
        "trainingStats.date" to "Petsa",
        "trainingStats.lastTraining" to "Huling pagsasanay",
        "trainingStats.memberParticipations" to "Paglahok ng miyembro",
        "trainingStats.name" to "pangalan",
        "trainingStats.noParticipants" to "Walang kalahok",
        "trainingStats.panelAgeGroups" to "Dalo ayon sa edad",
        "trainingStats.panelBestDay" to "Pinakamataong araw ng ensayo",
        "trainingStats.panelGroupPerformance" to "Pag-unlad ayon sa grupo",
        "trainingStats.panelMemberStructure" to "Istraktura ng miyembro",
        "trainingStats.panelMonthlyTrend" to "Buwanang uso",
        "trainingStats.panelSummary" to "Pangunahing bilang (salain)",
        "trainingStats.panelWeekdayStats" to "Mga araw ng ensayo ayon sa araw ng linggo",
        "trainingStats.participants" to "Mga kalahok",
        "trainingStats.participations12Months" to "Paglahok (12 buwan)",
        "trainingStats.participations3Months" to "Paglahok (3 buwan)",
        "trainingStats.participationsTotal" to "Paglahok (kabuuan)",
        "trainingStats.qttr" to "QTTR",
        "trainingStats.showDetails" to "Ipakita ang mga detalye",
        "trainingStats.title" to "Mga istatistika ng pagsasanay",
        "trainingStats.trainingDayFilter" to "Araw ng pagsasanay",
        "trainingStats.trainingDays" to "Mga araw ng pagsasanay (huling 12 buwan)",
        "trainingStats.ttr" to "TTR",
        "trainingStats.weekday" to "Araw ng linggo",
        "trainingTimesTab.addTime" to "Magdagdag ng oras",
        "trainingTimesTab.cancel" to "Kanselahin",
        "trainingTimesTab.create" to "Lumikha",
        "trainingTimesTab.delete" to "Tanggalin",
        "trainingTimesTab.edit" to "I-edit",
        "trainingTimesTab.editTime" to "I-edit ang Oras ng Pagsasanay",
        "trainingTimesTab.excludeFromQuickDiaryCreate" to "Ibukod sa mabilisang paggawa (talaarawan)",
        "trainingTimesTab.excludeFromQuickDiarySaveError" to "Hindi ma-save ang setting.",
        "trainingTimesTab.friday" to "Biyernes",
        "trainingTimesTab.from" to "mula kay:",
        "trainingTimesTab.loading" to "Nilo-load ang mga oras ng pag-eehersisyo...",
        "trainingTimesTab.monday" to "Lunes",
        "trainingTimesTab.noTimes" to "Walang tinukoy na oras ng pagsasanay",
        "trainingTimesTab.saturday" to "Sabado",
        "trainingTimesTab.save" to "I-save",
        "trainingTimesTab.saveError" to "Error sa pag-save ng oras ng pag-eehersisyo",
        "trainingTimesTab.sunday" to "Linggo",
        "trainingTimesTab.thursday" to "Huwebes",
        "trainingTimesTab.to" to "kay:",
        "trainingTimesTab.tuesday" to "Martes",
        "trainingTimesTab.wednesday" to "Miyerkules",
        "trainingTimesTab.weekday" to "Linggo:",
        "unknown" to "Hindi alam",
    ) }

    private val zh: Map<String, String> by lazy { mapOf(
        "accident.accident" to "事故",
        "accident.accidentDescription" to "事故描述...",
        "accident.close" to "关闭",
        "accident.member" to "成员",
        "accident.pleaseSelect" to "请选择",
        "accident.reportAccident" to "报告事故",
        "accident.reportedAccidents" to "已报告的事故",
        "accident.submit" to "提交",
        "activityStats.activityStatistics" to "运动统计",
        "activityStats.last3Participations" to "最后 3 条记录",
        "activityStats.noParticipations" to "没有可用的条目",
        "activityStats.noStatistics" to "无可用统计数据",
        "activityStats.title" to "运动统计",
        "app.name" to "训练日记",
        "app.title" to "训练日记",
        "auth.accountActivated" to "帐号已激活！您现在可以登录了。",
        "auth.activate" to "激活",
        "auth.activateAccount" to "激活账户",
        "auth.activationFailed" to "激活失败。请检查链接。",
        "auth.confirmPassword" to "确认密码",
        "auth.email" to "电子邮件",
        "auth.forgotPassword" to "忘记密码？",
        "auth.forgotPasswordDescription" to "输入您的电子邮件地址。您将收到重置密码的链接。",
        "auth.hasAccount" to "已经有帐户？",
        "auth.login" to "登录",
        "auth.loginFailed" to "登录失败。请检查您的凭据。",
        "auth.loginSuccess" to "登录成功",
        "auth.logout" to "退出登录",
        "auth.logoutSuccess" to "退出成功",
        "auth.newPassword" to "新密码",
        "auth.noAccount" to "还没有账号？",
        "auth.password" to "密码",
        "auth.passwordResetSuccess" to "密码已成功更改。您现在可以使用新密码登录。",
        "auth.passwordsDoNotMatch" to "密码不匹配。",
        "auth.passwordTooShort" to "密码至少需要6个字符。",
        "auth.register" to "注册",
        "auth.registerFailed" to "注册失败。请再试一次。",
        "auth.registerSuccess" to "注册成功！请检查您的电子邮件以激活您的帐户。",
        "auth.rememberMe" to "记住我",
        "auth.resetEmailSent" to "如果该邮箱存在账号，已发送重置链接。请检查收件箱（和垃圾邮件文件夹）。",
        "auth.resetFailed" to "无法更改密码。链接可能已过期。",
        "auth.resetPassword" to "设置新密码",
        "auth.resetRequestFailed" to "请求失败。请重试。",
        "auth.saveNewPassword" to "保存密码",
        "auth.saving" to "保存中...",
        "auth.sending" to "发送中...",
        "auth.sendResetLink" to "发送链接",
        "auth.sessionExpired" to "您的会话已过期。您将被登出。",
        "auth.toLogin" to "去登录",
        "baseDialog.close" to "关闭",
        "baseDialog.minimize" to "最小化",
        "baseDialog.resize" to "调整大小",
        "billing.autoSuggestMapping" to "用车建议",
        "billing.deleteBilling" to "删除",
        "billing.deleteConfirm" to "真的删除这个生成的语句吗？",
        "billing.deleteError" to "帐单无法删除。",
        "billing.deleteSuccess" to "帐单已删除。",
        "billing.deleteTemplate" to "删除模板",
        "billing.deleteTemplateConfirm" to "真的删除这个模板吗？",
        "billing.deleteTemplateError" to "无法删除模板。",
        "billing.deleteTemplateSuccess" to "模板已被删除。",
        "billing.documentDate" to "日期",
        "billing.downloadError" to "无法下载 PDF。",
        "billing.downloadPdf" to "下载PDF",
        "billing.generateAndDownloadPdf" to "生成 + 下载 PDF",
        "billing.generateError" to "无法创建 PDF。",
        "billing.generateOwnBilling" to "生成您自己的账单",
        "billing.generatePdf" to "生成 PDF",
        "billing.generateSuccess" to "PDF 已创建。",
        "billing.generatingPdf" to "创建 PDF...",
        "billing.hourlyRate" to "时薪",
        "billing.hoursAutoHint" to "小时数根据培训天数自动计算：{hours} h（{count} 单位）。",
        "billing.hoursTotal" to "小时数",
        "billing.iban" to "IBAN",
        "billing.ibanBoxesReset" to "IBAN 框已重置。",
        "billing.ibanLearnCancel" to "取消 IBAN 学习",
        "billing.ibanLearnDone" to "IBAN 框已从所选区域分配。",
        "billing.ibanLearnStart" to "学习国际银行账号",
        "billing.ibanLearnStep1" to "IBAN学习：请点击第一个要使用的IBAN框。",
        "billing.ibanLearnStep2" to "IBAN学习：请点击最后一个要使用的IBAN框。",
        "billing.ibanWithoutCountry" to "没有国家代码",
        "billing.locationText" to "地点",
        "billing.mappingEditorHint" to "选择该字段，然后在 PDF 中单击。该职位将立即被接管。",
        "billing.mappingEditorTitle" to "单击即可分配 PDF 中的字段",
        "billing.mappingField" to "场地",
        "billing.mappingHint" to "为每个字段调整并保存一次坐标。这些位置用于“创建 PDF”。",
        "billing.mappingPreviewError" to "无法加载地图的 PDF 预览。",
        "billing.mappingSaved" to "映射已保存。",
        "billing.mappingSaveError" to "无法保存地图。",
        "billing.mappingSuggested" to "汽车建议已输入。 Please check and fine-tune.",
        "billing.mappingSuggestError" to "无法确定自动建议。",
        "billing.mappingTitle" to "位置映射",
        "billing.monthFrom" to "月",
        "billing.monthTo" to "月至",
        "billing.noRuns" to "尚无可用发票。",
        "billing.noSessionsInRange" to "在所选时间段内未找到任何培训课程。",
        "billing.noTemplates" to "尚无可用模板。",
        "billing.omitField" to "不指定",
        "billing.openMappingEditor" to "单击即可映射",
        "billing.resetIbanBoxes" to "IBAN 框重置",
        "billing.runSection" to "计费运行",
        "billing.runsTitle" to "以前的账单",
        "billing.sameAccountCheckbox" to "与上次声明相同的帐户",
        "billing.saveMapping" to "保存映射",
        "billing.selfRecipientName" to "自己的名字",
        "billing.sessionHours" to "时间",
        "billing.sessionLabel" to "标识符",
        "billing.sessionTime" to "时间",
        "billing.step1" to "第1步：商店模板",
        "billing.step2" to "第 2 步：创建计费运行",
        "billing.step3" to "第 3 步：生成并下载 PDF",
        "billing.subtitle" to "创建您自己的每月练习课账单。",
        "billing.template" to "模板",
        "billing.templateDescription" to "描述",
        "billing.templateName" to "模板名称",
        "billing.templatePdf" to "PDF模板",
        "billing.templateSection" to "上传模板",
        "billing.title" to "发票",
        "billing.uploadTemplate" to "保存模板",
        "calendar.agendaEmpty" to "本月没有活动。",
        "calendar.agendaTitle" to "本月活动",
        "calendar.cancelCancellation.confirm" to "取消停课",
        "calendar.cancelCancellation.message" to "确定要取消 {date} 的“{title}”训练停课吗？",
        "calendar.cancelCancellation.title" to "取消训练停课",
        "calendar.cancellation.date" to "日期",
        "calendar.cancellation.description" to "隐藏常规训练时间。",
        "calendar.cancellation.fallbackTitle" to "培训取消",
        "calendar.cancellation.reasonPlaceholder" to "原因（可选）",
        "calendar.cancellation.saving" to "保存...",
        "calendar.cancellation.submit" to "添加",
        "calendar.cancellation.subtitle" to "培训取消",
        "calendar.cancellation.title" to "培训取消",
        "calendar.cancellation.trainingGroups" to "培训小组",
        "calendar.cancellation.untilOptional" to "直到可选",
        "calendar.customEvent.categoryPlaceholder" to "类别（可选）",
        "calendar.customEvent.description" to "地区会议、会议、内部会议……",
        "calendar.customEvent.saving" to "保存...",
        "calendar.customEvent.submit" to "创造",
        "calendar.customEvent.subtitleFallback" to "自己的活动",
        "calendar.customEvent.title" to "自己的活动",
        "calendar.customEvent.titlePlaceholder" to "标题",
        "calendar.description" to "每月查看训练日、俱乐部锦标赛和联赛。",
        "calendar.eventTitles.match" to "联赛",
        "calendar.eventTitles.officialTournament" to "参加比赛",
        "calendar.eventTitles.tournament" to "比赛",
        "calendar.eventTitles.training" to "训练",
        "calendar.eyebrow" to "俱乐部日历",
        "calendar.holidayTypes.holiday" to "假期",
        "calendar.holidayTypes.schoolHoliday" to "学校假期",
        "calendar.legend.customEvent" to "事件",
        "calendar.legend.holiday" to "假期",
        "calendar.legend.match" to "联赛",
        "calendar.legend.officialTournament" to "参与",
        "calendar.legend.schoolHoliday" to "学校假期",
        "calendar.legend.tournament" to "比赛",
        "calendar.legend.training" to "训练",
        "calendar.legend.trainingCancellation" to "取消",
        "calendar.loadError" to "无法加载日历数据。",
        "calendar.loading" to "正在加载日历数据...",
        "calendar.match.guest" to "离开",
        "calendar.match.home" to "家",
        "calendar.noClub" to "请先选择俱乐部。",
        "calendar.options.subtitle" to "取消和自己的活动",
        "calendar.options.title" to "选项",
        "calendar.participants" to "{count} 参与者",
        "calendar.quickCancellation.confirm" to "添加取消",
        "calendar.quickCancellation.message" to "将“{title}”标记为培训取消？",
        "calendar.quickCancellation.noGroups" to "没有提供训练时间的训练组。",
        "calendar.quickCancellation.title" to "培训取消",
        "calendar.quickCancellation.trainingGroups" to "受影响的训练团体",
        "calendar.quickCancellation.useWholeRange" to "适用于整个期间（{start} 至 {end}）",
        "calendar.recurringTrainingTime" to "常规训练时间",
        "calendar.sources.customEvents" to "自己的活动",
        "calendar.sources.holidays" to "假期/学校假期",
        "calendar.sources.matches" to "联赛",
        "calendar.sources.officialTournaments" to "参加比赛",
        "calendar.sources.tournaments" to "锦标赛",
        "calendar.sources.trainingCancellations" to "培训取消",
        "calendar.sources.trainingDays" to "培训天数",
        "calendar.sources.trainingTimes" to "训练次数",
        "calendar.sourceWarning" to "{source} 无法加载",
        "calendar.starts" to "{count} 开始",
        "calendar.title" to "日历",
        "calendar.today" to "今天",
        "calendar.tournament.club" to "俱乐部锦标赛",
        "calendar.tournament.open" to "公开赛",
        "calendar.weekdays.friday" to "周五",
        "calendar.weekdays.monday" to "周一",
        "calendar.weekdays.saturday" to "周六",
        "calendar.weekdays.sunday" to "周日",
        "calendar.weekdays.thursday" to "周四",
        "calendar.weekdays.tuesday" to "周二",
        "calendar.weekdays.wednesday" to "周三",
        "club.accessDenied" to "无权访问此俱乐部。",
        "club.accessRequested" to "已提交访问申请。",
        "club.accessRequestFailed" to "无法提交访问申请。",
        "club.accessRequestPending" to "已申请访问此俱乐部。请稍候。",
        "club.create" to "创建俱乐部",
        "club.createTitle" to "创建俱乐部",
        "club.diary" to "训练日记",
        "club.errorLoadingRequests" to "加载待处理申请时出错",
        "club.load" to "加载",
        "club.members" to "成员",
        "club.mobileSelectHint" to "请先选择一个俱乐部，才能在智能手机上使用该应用。",
        "club.name" to "俱乐部名称",
        "club.new" to "新俱乐部",
        "club.noAccess" to "您尚未获得此俱乐部的访问权限。",
        "club.openAccessRequests" to "待处理的访问申请",
        "club.openRequests" to "待处理的访问申请",
        "club.requestAccess" to "申请访问权限",
        "club.select" to "选择俱乐部",
        "club.selectPlaceholder" to "选择俱乐部...",
        "club.title" to "俱乐部",
        "club.trainingDiary" to "训练日记",
        "clubSettings.associationMemberNumber" to "协会会员编号",
        "clubSettings.associationMemberNumberPlaceholder" to "例如SN-12-3456。",
        "clubSettings.autoFetchRankings" to "自动检索排名",
        "clubSettings.greetingHint" to "此文本出现在游戏报告表的“欢迎”选项卡中。",
        "clubSettings.greetingPlaceholder" to "家庭游戏的欢迎文字...",
        "clubSettings.greetingText" to "问候语文字",
        "clubSettings.guestPlayers" to "球员和双打客队",
        "clubSettings.guestTeam" to "嘉宾团队名称",
        "clubSettings.homePlayers" to "球员和主队双打",
        "clubSettings.homeTeam" to "主队名称",
        "clubSettings.loadFailed" to "无法加载设置",
        "clubSettings.memberDataQuality" to "数据质量会员",
        "clubSettings.memberDataQualityHint" to "这些字段在会员页面上被视为必要字段。所有字段仍然可以输入。",
        "clubSettings.myTischtennisFedNickname" to "协会简称",
        "clubSettings.myTischtennisFedNicknamePlaceholder" to "例如和台电视台",
        "clubSettings.myTischtennisRankings" to "myTischtennis TTR/QTTR 排名",
        "clubSettings.myTischtennisRankingsHint" to "自动检索会员TTR和QTTR更新的俱乐部排名。",
        "clubSettings.noClubSelected" to "请先选择医生。",
        "clubSettings.placeholders" to "垫片",
        "clubSettings.rankingsUsesAssociationNumber" to "排行榜检索的俱乐部编号与上述协会会员编号相对应。",
        "clubSettings.requireCity" to "需要位置",
        "clubSettings.requireEmail" to "需要电子邮件",
        "clubSettings.requirePhone" to "需要电话号码",
        "clubSettings.requirePostalCode" to "需要邮政编码",
        "clubSettings.requireStreet" to "所需道路",
        "clubSettings.save" to "节省",
        "clubSettings.saved" to "已存储",
        "clubSettings.saveFailed" to "无法保存",
        "clubSettings.settings" to "设置",
        "clubSettings.title" to "俱乐部设置",
        "clubSettings.trainingGroups" to "培训小组。",
        "clubSettings.trainingTimes" to "练习日程",
        "common.actions" to "操作",
        "common.active" to "活跃",
        "common.add" to "添加",
        "common.all" to "全部",
        "common.apply" to "应用",
        "common.back" to "返回",
        "common.cancel" to "取消",
        "common.choose" to "选择",
        "common.clear" to "清除",
        "common.close" to "关闭",
        "common.confirm" to "确认",
        "common.create" to "创建",
        "common.date" to "日期",
        "common.days" to "天",
        "common.delete" to "删除",
        "common.description" to "描述",
        "common.details" to "Details",
        "common.disabled" to "已禁用",
        "common.download" to "下载",
        "common.edit" to "编辑",
        "common.enabled" to "已启用",
        "common.filter" to "筛选",
        "common.hours" to "小时",
        "common.in" to "in",
        "common.inactive" to "非活跃",
        "common.loading" to "加载中...",
        "common.min" to "分",
        "common.minutes" to "分钟",
        "common.months" to "个月",
        "common.move" to "移动",
        "common.name" to "姓名",
        "common.new" to "新建",
        "common.next" to "下一步",
        "common.no" to "否",
        "common.ok" to "OK",
        "common.optional" to "Optional",
        "common.period" to "期间",
        "common.previous" to "上一步",
        "common.refresh" to "重新加载",
        "common.remove" to "移除",
        "common.required" to "必填",
        "common.reset" to "重置",
        "common.save" to "保存",
        "common.saved" to "已保存",
        "common.saving" to "正在保存...",
        "common.search" to "搜索",
        "common.select" to "选择",
        "common.status" to "地位",
        "common.submit" to "提交",
        "common.time" to "时间",
        "common.today" to "今天",
        "common.type" to "类型",
        "common.update" to "更新",
        "common.view" to "查看",
        "common.weeks" to "周",
        "common.years" to "年",
        "common.yes" to "是",
        "courtDrawing.cancel" to "取消",
        "courtDrawing.durationMinutes" to "持续时间（分钟）",
        "courtDrawing.durationText" to "持续时间（文字）",
        "courtDrawing.durationTextPlaceholder" to "例如2x5",
        "courtDrawing.group" to "团体",
        "courtDrawing.ok" to "OK",
        "courtDrawing.selectGroup" to "选择组...",
        "courtDrawing.title" to "配置乒乓球练习",
        "courtDrawingRender.animationRunning" to "动画制作中...",
        "courtDrawingRender.startAnimation" to "开始动画",
        "courtDrawingTool.addStroke" to "添加击球",
        "courtDrawingTool.backhand" to "反手",
        "courtDrawingTool.codeLabel" to "缩写",
        "courtDrawingTool.completeFirstStroke" to "完成第一拍",
        "courtDrawingTool.completeFirstStrokeHint" to "请选择起始位置、击球面、旋转和目标，随后会显示图示。",
        "courtDrawingTool.configureExercise" to "配置练习",
        "courtDrawingTool.counterSpin" to "逆旋转",
        "courtDrawingTool.forehand" to "正手",
        "courtDrawingTool.noAdditionalStrokes" to "尚未添加后续击球。",
        "courtDrawingTool.preview" to "预览",
        "courtDrawingTool.previewHint" to "第一拍设置完整后将显示图示。",
        "courtDrawingTool.service" to "发球:",
        "courtDrawingTool.serviceTitle" to "发球",
        "courtDrawingTool.sidespin" to "侧旋",
        "courtDrawingTool.sideUnderspin" to "侧下旋",
        "courtDrawingTool.spin" to "旋转:",
        "courtDrawingTool.startLeft" to "左",
        "courtDrawingTool.startMiddle" to "中",
        "courtDrawingTool.startRight" to "右",
        "courtDrawingTool.stepAdditionalStrokes" to "4. 后续击球",
        "courtDrawingTool.stepAdditionalStrokesHint" to "可选地将后续来球添加为列表。",
        "courtDrawingTool.stepFirstStroke" to "2. 第一拍",
        "courtDrawingTool.stepFirstStrokeHint" to "设置第一球的击球面和旋转。",
        "courtDrawingTool.stepStartPosition" to "1. 起始位置",
        "courtDrawingTool.stepStartPositionHint" to "练习从哪个发球位置开始？",
        "courtDrawingTool.stepTarget" to "3. 目标",
        "courtDrawingTool.stepTargetHint" to "选择第一拍的目标区域。",
        "courtDrawingTool.strokeSide" to "击球面",
        "courtDrawingTool.strokeTypeBlock" to "Block",
        "courtDrawingTool.strokeTypeChopDefense" to "削球防守",
        "courtDrawingTool.strokeTypeCounter" to "反击",
        "courtDrawingTool.strokeTypeFlip" to "翻动",
        "courtDrawingTool.strokeTypeLabel" to "击球方式",
        "courtDrawingTool.strokeTypeLobDefense" to "高吊防守",
        "courtDrawingTool.strokeTypePush" to "搓球",
        "courtDrawingTool.strokeTypeSmash" to "扣杀",
        "courtDrawingTool.strokeTypeTopspin" to "上旋",
        "courtDrawingTool.targetBackhandHalfLong" to "反手半长",
        "courtDrawingTool.targetBackhandLong" to "反手长",
        "courtDrawingTool.targetBackhandShort" to "反手短",
        "courtDrawingTool.targetForehandHalfLong" to "正手半长",
        "courtDrawingTool.targetForehandLong" to "正手长",
        "courtDrawingTool.targetForehandShort" to "正手短",
        "courtDrawingTool.targetMiddleHalfLong" to "中路半长",
        "courtDrawingTool.targetMiddleLong" to "中路长",
        "courtDrawingTool.targetMiddleShort" to "中路短",
        "courtDrawingTool.targetPosition" to "目标位置:",
        "courtDrawingTool.targetPositionLabel" to "目标位置",
        "courtDrawingTool.title" to "乒乓球练习示意图",
        "courtDrawingTool.titleLabel" to "标题",
        "courtDrawingTool.topspin" to "上旋",
        "courtDrawingTool.toTarget" to "到",
        "courtDrawingTool.underspin" to "下旋",
        "createClub.clubExists" to "该协会已经存在。",
        "createClub.clubName" to "俱乐部名称",
        "createClub.create" to "创建俱乐部",
        "createClub.nameRequired" to "请给协会起一个有意义的名字。",
        "createClub.title" to "创建俱乐部",
        "createClub.unknownError" to "发生未知错误，请重试",
        "csvImport.cancel" to "取消",
        "csvImport.import" to "输入",
        "csvImport.title" to "进口时间表",
        "csvImport.uploadCsvFile" to "上传 CSV 文件",
        "dialogExamples.composableConfirmDetails" to "这是 useConfirm 可组合项的示例。",
        "dialogExamples.composableConfirmMessage" to "您想继续吗？",
        "dialogExamples.composableConfirmTitle" to "使用确认示例",
        "dialogExamples.composableDialogText" to "该对话框使用 useDialog Composable。",
        "dialogExamples.composableDialogText2" to "这样更容易管理！",
        "dialogExamples.composableDialogTitle" to "使用 useDialog Composable 进行对话",
        "dialogExamples.composableUsage" to "可组合使用",
        "dialogExamples.confirmDeleteMessage" to "您确定要删除此礼品卡吗？",
        "dialogExamples.confirmDeleteTitle" to "确认删除",
        "dialogExamples.confirmDialogs" to "确认对话框",
        "dialogExamples.confirmWarningDetails" to "此操作无法撤消。",
        "dialogExamples.confirmWarningMessage" to "您确定要继续吗？",
        "dialogExamples.error" to "错误",
        "dialogExamples.errorDetails" to "请稍后重试。",
        "dialogExamples.errorMessage" to "发生错误。",
        "dialogExamples.fullscreenModal" to "全屏模式",
        "dialogExamples.fullscreenModalText" to "这是一个全屏对话框。",
        "dialogExamples.fullscreenModalText2" to "它几乎占据了整个屏幕（90vw x 90vh）。",
        "dialogExamples.fullscreenModalTitle" to "全屏模式对话框",
        "dialogExamples.info" to "信息",
        "dialogExamples.infoDialogs" to "信息对话",
        "dialogExamples.infoMessage" to "这是一条信息消息。",
        "dialogExamples.information" to "信息",
        "dialogExamples.largeModal" to "大莫代尔",
        "dialogExamples.largeModalText" to "这是一个很棒的模态对话。",
        "dialogExamples.largeModalText2" to "它为内容提供了更多空间。",
        "dialogExamples.largeModalTitle" to "大模态对话",
        "dialogExamples.minimizedDialogs" to "最小化对话框：",
        "dialogExamples.modalDialogs" to "模态对话",
        "dialogExamples.multipleDialogs" to "多个对话框",
        "dialogExamples.nonModalDialog" to "非模态对话",
        "dialogExamples.nonModalDialogs" to "非模态对话",
        "dialogExamples.nonModalText" to "这是一个非模态对话。",
        "dialogExamples.nonModalText2" to "您可以移动它并同时打开多个！",
        "dialogExamples.nonModalTitle" to "非模态对话",
        "dialogExamples.scrollArea" to "滚动区域可查看大量内容...",
        "dialogExamples.secondNonModalText" to "又一个非模态对话！",
        "dialogExamples.secondNonModalTitle" to "第二次非模态对话",
        "dialogExamples.simpleModal" to "简单模态",
        "dialogExamples.simpleModalText" to "这是一个中等大小的简单模式对话框。",
        "dialogExamples.simpleModalText2" to "单击外部或 X 以关闭。",
        "dialogExamples.simpleModalTitle" to "简单的模态对话",
        "dialogExamples.success" to "成就",
        "dialogExamples.successDetails" to "所有更改均已保存。",
        "dialogExamples.successMessage" to "操作已成功完成！",
        "dialogExamples.title" to "对话框示例",
        "dialogExamples.useConfirmExample" to "使用确认示例",
        "dialogExamples.useDialogExample" to "使用对话框示例",
        "dialogExamples.warning" to "注意事项",
        "dialogExamples.warningDetails" to "某些字段可能未完整填写。",
        "dialogExamples.warningMessage" to "以下链接可能对您有帮助：",
        "dialogManager.close" to "关闭",
        "dialogManager.minimize" to "最小化",
        "dialogManager.noMinimizedDialogs" to "没有最小化对话框",
        "dialogs.confirm.cancel" to "取消",
        "dialogs.confirm.ok" to "OK",
        "dialogs.confirm.title" to "确认",
        "dialogs.info.ok" to "OK",
        "dialogs.info.title" to "信息",
        "diary.activeTrainingDay" to "当前训练日",
        "diary.activities" to "活动",
        "diary.activity" to "活动",
        "diary.activityDrawing" to "活动图示",
        "diary.activityImage" to "活动图片",
        "diary.activityNotFound" to "未找到活动。请从列表中选择。",
        "diary.activityOrTimeblock" to "活动 / 时间块",
        "diary.activityPlaceholder" to "活动",
        "diary.activityRequired" to "请输入活动。",
        "diary.addActivity" to "添加活动",
        "diary.addGroup" to "添加分组",
        "diary.addGroupActivity" to "添加分组活动",
        "diary.addGroupButton" to "+ 分组",
        "diary.addTimeblock" to "时间块",
        "diary.all" to "全部",
        "diary.applySuggestion" to "应用建议",
        "diary.assignParticipants" to "分配参与者",
        "diary.assignParticipantsForGroupActivity" to "为分组活动分配参与者",
        "diary.assignShort" to "分配",
        "diary.bookAccident" to "记录事故",
        "diary.confirmDelete" to "确认删除",
        "diary.confirmDeleteDate" to "确定要删除此日期吗？",
        "diary.confirmDeleteDateDetails" to "所有相关数据也将一并删除。",
        "diary.confirmDeleteGroup" to "确定要删除分组“{name}”吗？",
        "diary.createDate" to "创建日期",
        "diary.createDrawing" to "创建练习图",
        "diary.createGroups" to "创建分组",
        "diary.createNew" to "新建",
        "diary.createNewDate" to "创建新日期",
        "diary.date" to "日期",
        "diary.dateCannotBeDeleted" to "无法删除该日期",
        "diary.dateCannotBeDeletedDetails" to "仍有内容存在（训练计划、参与者、活动、事故或备注）。",
        "diary.dateNoLongerCurrent" to "所选日期已不是最新状态。请重试。",
        "diary.delete" to "删除",
        "diary.deleteDate" to "删除日期",
        "diary.deleteGroup" to "删除分组",
        "diary.duration" to "时长",
        "diary.durationExampleLong" to "例如：2x7 或 3*5",
        "diary.durationExampleShort" to "例如：2x7",
        "diary.durationMinutes" to "时长（分）",
        "diary.editActivity" to "编辑活动",
        "diary.editGroupActivity" to "编辑分组活动",
        "diary.editTrainingTimes" to "编辑训练时间",
        "diary.errorCreatingActivity" to "创建活动时出错",
        "diary.errorCreatingGroups" to "创建分组时出错",
        "diary.errorDeletingGroup" to "删除分组时出错",
        "diary.errorLoadingPredefinedActivities" to "加载预定义活动时出错",
        "diary.errorMarkingForm" to "标记会员表格时出错",
        "diary.errorOccurred" to "发生错误。请重试。",
        "diary.existingGroups" to "现有分组",
        "diary.filterAbsent" to "缺席",
        "diary.filterAll" to "全部",
        "diary.filterExcused" to "已请假",
        "diary.filterPresent" to "出席",
        "diary.filterTest" to "试用",
        "diary.formHandedOver" to "会员表格已交付",
        "diary.formMarkedAsHandedOver" to "已将会员表格标记为已交付",
        "diary.freeActivities" to "自由活动",
        "diary.gallery" to "成员图库",
        "diary.galleryCreating" to "正在生成图库…",
        "diary.group" to "分组...",
        "diary.groupDeletedSuccessfully" to "分组已成功删除。",
        "diary.groupManagement" to "分组管理",
        "diary.groupsCreated" to "已成功创建 {count} 个分组。",
        "diary.groupsLabel" to "分组",
        "diary.groupsSection" to "分组",
        "diary.leader" to "负责人",
        "diary.min" to "Min",
        "diary.minutes" to "分钟",
        "diary.mustCreateAtLeastTwoGroups" to "首次创建时至少需要 2 个分组。",
        "diary.nextAppointment" to "下一个时间",
        "diary.noActiveTrainingDay" to "未选择训练日。",
        "diary.noEntries" to "没有条目",
        "diary.noFreeActivitiesYet" to "尚未记录自由活动。",
        "diary.noParticipants" to "该训练日没有参与者。",
        "diary.numberOfGroups" to "分组数量",
        "diary.oneGroupAdded" to "已成功添加 1 个分组。",
        "diary.openPlanItems" to "{count} 项未完成",
        "diary.openPlanItemsLabel" to "计划状态",
        "diary.overallActivity" to "整体活动",
        "diary.participants" to "参与者",
        "diary.participantStatusCancelled" to "已取消",
        "diary.participantStatusExcused" to "已请假",
        "diary.participantStatusNone" to "无状态",
        "diary.planActivitiesCount" to "计划活动",
        "diary.planAddHint" to "可通过上方操作添加新的计划项目。",
        "diary.planEmptyState" to "训练计划中还没有任何内容。",
        "diary.quickAdd" to "+ 快速添加",
        "diary.quickCreate" to "快速创建",
        "diary.quickCreateFailed" to "无法创建训练日。",
        "diary.quickCreateNoSlot" to "未找到空闲训练日（按小组时间表，向前查找一年）。",
        "diary.searchParticipants" to "搜索参与者",
        "diary.selectGroup" to "选择分组...",
        "diary.selectGroupAndActivity" to "请选择一个分组并输入活动。",
        "diary.selectParticipantAndNote" to "请选择一位参与者并输入备注文本。",
        "diary.selectTags" to "选择标签",
        "diary.selectTrainingGroup" to "选择训练组",
        "diary.selectTrainingGroupPlaceholder" to "请选择...",
        "diary.showImage" to "显示图片/图示",
        "diary.skipSuggestion" to "不使用建议继续",
        "diary.standardActivities" to "标准活动",
        "diary.standardActivityAddError" to "无法添加标准活动。",
        "diary.standardDurationShort" to "Min",
        "diary.startTime" to "开始时间",
        "diary.statusEmpty" to "该训练日仍为空。",
        "diary.statusInProgress" to "该训练日已部分准备。",
        "diary.statusOpenShort" to "未完成",
        "diary.statusReady" to "时间和训练计划已维护完成。",
        "diary.statusReadyShort" to "已就绪",
        "diary.suggestion" to "建议",
        "diary.timeblock" to "时间块",
        "diary.timeblocksCount" to "时间块",
        "diary.title" to "训练日记",
        "diary.today" to "今天",
        "diary.trainingDayAsPDF" to "将训练日下载为 PDF",
        "diary.trainingDayAsPDFShort" to "训练日 PDF",
        "diary.trainingDayChecklist" to "完成检查",
        "diary.trainingDaySection" to "训练日",
        "diary.trainingDaySummaryPdfShort" to "参与者概览 PDF",
        "diary.trainingEnd" to "训练结束",
        "diary.trainingPlan" to "训练计划",
        "diary.trainingPlanAsPDF" to "将训练计划导出为 PDF",
        "diary.trainingPlanPdfShort" to "流程计划 PDF",
        "diary.trainingStart" to "训练开始",
        "diary.trainingTimesUpdated" to "训练时间已成功更新。",
        "diary.trainingWindow" to "训练时间段",
        "diary.trainingWindowUnset" to "尚未设置",
        "diary.unassignedPlanItems" to "{count} 项未分配",
        "diary.updateTimes" to "更新时间",
        "errors.ERROR_ACTIVITY_IMAGE_DELETE_FAILED" to "删除图像时出错。",
        "errors.ERROR_BAD_REQUEST" to "无效请求。",
        "errors.ERROR_CLUB_ALREADY_EXISTS" to "该协会已经存在。",
        "errors.ERROR_CLUB_NAME_REQUIRED" to "请给协会起一个有意义的名字。",
        "errors.ERROR_CLUB_NAME_TOO_SHORT" to "请给协会起一个有意义的名字。",
        "errors.ERROR_CLUB_NOT_FOUND" to "未找到俱乐部。",
        "errors.ERROR_DIARY_ACTIVITY_PARTICIPANTS_UPDATE_FAILED" to "更新活动参与者时出错",
        "errors.ERROR_DIARY_ASSIGN_ALL_PARTICIPANTS_FAILED" to "分配所有参与者时出错",
        "errors.ERROR_DIARY_ASSIGN_GROUP_FAILED" to "错误映射组",
        "errors.ERROR_DIARY_DATE_NOT_FOUND" to "未找到日期",
        "errors.ERROR_DIARY_DATE_UPDATED" to "日期不可用（不再可用）。日期选择器已更新。请再试一次。",
        "errors.ERROR_DIARY_GROUP_ASSIGNMENT_UPDATE_FAILED" to "更新组分配时出错",
        "errors.ERROR_DIARY_IMAGE_LOAD_FAILED" to "图片加载失败",
        "errors.ERROR_DIARY_MEMBER_CREATE_FAILED" to "创建成员时出错",
        "errors.ERROR_DIARY_NO_EXERCISE_DATA" to "未收到运动数据",
        "errors.ERROR_DIARY_NO_PARTICIPANTS" to "本次培训日没有参加者。",
        "errors.ERROR_DIARY_PARTICIPANT_ASSIGN_FAILED" to "无法分配参与者。",
        "errors.ERROR_DIARY_PARTICIPANT_GROUP_ASSIGNMENT_UPDATE_FAILED" to "更新参与者组分配时出错",
        "errors.ERROR_DIARY_PDF_GENERATION_FAILED" to "生成 PDF 时出错。",
        "errors.ERROR_DIARY_STATS_LOAD_FAILED" to "无法加载统计信息。",
        "errors.ERROR_FORBIDDEN" to "没有权限。",
        "errors.ERROR_GROUP_ALREADY_EXISTS" to "已存在同名的组。",
        "errors.ERROR_GROUP_CANNOT_RENAME_PRESET" to "默认组无法重命名。",
        "errors.ERROR_GROUP_INVALID_PRESET_TYPE" to "预设类型无效。",
        "errors.ERROR_GROUP_NAME_REQUIRED" to "请输入群组名称。",
        "errors.ERROR_GROUP_NOT_FOUND" to "未找到组。",
        "errors.ERROR_INTERNAL_SERVER_ERROR" to "发生内部服务器错误。",
        "errors.ERROR_INVALID_PASSWORD" to "密码不正确。",
        "errors.ERROR_LOG_NOT_FOUND" to "未找到日志条目",
        "errors.ERROR_LOGIN_FAILED" to "登录失败。",
        "errors.ERROR_MEMBER_ALREADY_EXISTS" to "该会员已存在",
        "errors.ERROR_MEMBER_FIRSTNAME_REQUIRED" to "名字为必填项。",
        "errors.ERROR_MEMBER_LASTNAME_REQUIRED" to "姓氏为必填项。",
        "errors.ERROR_MEMBER_NOT_FOUND" to "未找到会员",
        "errors.ERROR_MEMBER_TRANSFER_BULK_FAILED" to "批量传输错误：{message}",
        "errors.ERROR_MYTISCHTENNIS_ACCOUNT_NOT_LINKED" to "没有链接 myTischtennis 帐户。",
        "errors.ERROR_MYTISCHTENNIS_CAPTCHA_REQUIRED" to "需要验证码。 MyTischtennis 现在在登录时使用验证码。请直接登录 mytischtennis.de 来解决验证码，或联系支持人员。",
        "errors.ERROR_MYTISCHTENNIS_INVALID_PASSWORD" to "myTischtennis 密码无效。",
        "errors.ERROR_MYTISCHTENNIS_LOGIN_FAILED" to "登录失败。请检查您的凭据。",
        "errors.ERROR_MYTISCHTENNIS_NO_PASSWORD_SAVED" to "未保存密码且会话已过期。请输入您的密码。",
        "errors.ERROR_MYTISCHTENNIS_PASSWORD_NOT_SAVED" to "没有保存密码。请输入您的密码。",
        "errors.ERROR_MYTISCHTENNIS_SESSION_EXPIRED" to "会话已过期。请重新登录。",
        "errors.ERROR_MYTISCHTENNIS_USER_NOT_FOUND" to "未找到 myTischtennis 用户。",
        "errors.ERROR_NOT_FOUND" to "未找到。",
        "errors.ERROR_OFFICIAL_TOURNAMENT_PDF_UPLOAD" to "上传 PDF 时出错。",
        "errors.ERROR_SESSION_EXPIRED" to "会话已过期。",
        "errors.ERROR_TEAM_LINK_TO_LEAGUE_REQUIRED" to "请先为球队分配联赛，以便处理文件。",
        "errors.ERROR_TEAM_NOT_LINKED_TO_LEAGUE" to "这支球队没有分配到任何联赛。",
        "errors.ERROR_TEAM_PDF_LOAD_FAILED" to "无法加载 PDF",
        "errors.ERROR_TEAM_STATS_LOAD_FAILED" to "无法加载统计数据",
        "errors.ERROR_TOURNAMENT_CLASS_NAME_REQUIRED" to "请输入班级名称！",
        "errors.ERROR_TOURNAMENT_NO_DATE" to "没有可用的比赛日期！",
        "errors.ERROR_TOURNAMENT_NO_PARTICIPANTS" to "在该日期的培训日中没有找到参与者！",
        "errors.ERROR_TOURNAMENT_NO_TRAINING_DAY" to "找不到 {date} 的训练日！",
        "errors.ERROR_TOURNAMENT_NO_VALID_PARTICIPANTS" to "在该日期的培训日中未找到有效的参与者！",
        "errors.ERROR_TOURNAMENT_NOT_FOUND" to "未找到锦标赛",
        "errors.ERROR_TOURNAMENT_PDF_GENERATION_FAILED" to "生成 PDF 时出错",
        "errors.ERROR_TOURNAMENT_SELECT_FIRST" to "请先选择比赛。",
        "errors.ERROR_TRAINING_STATS_LOAD_FAILED" to "加载训练统计数据时出错",
        "errors.ERROR_UNAUTHORIZED" to "未授权。",
        "errors.ERROR_UNKNOWN_ERROR" to "发生未知错误。",
        "errors.ERROR_USER_NOT_FOUND" to "未找到用户。",
        "errors.ERROR_VALIDATION_FAILED" to "验证失败",
        "errors.SUCCESS_DIARY_GROUP_ASSIGNMENT_UPDATED" to "组映射已更新",
        "errors.SUCCESS_DIARY_MEMBER_CREATED" to "会员“{name}”已成功创建并添加！",
        "errors.SUCCESS_OFFICIAL_TOURNAMENT_PDF_UPLOAD" to "上传成功。",
        "home.authenticatedFeatures.keepDiary" to "记训练日记",
        "home.authenticatedFeatures.keepDiaryDesc" to "记录每个培训日的培训活动、参与者、活动和注释。",
        "home.authenticatedFeatures.manageMembers" to "管理会员",
        "home.authenticatedFeatures.manageMembersDesc" to "管理您的俱乐部成员、创建培训小组并跟踪所有参与者。",
        "home.authenticatedFeatures.manageTournaments" to "管理锦标赛",
        "home.authenticatedFeatures.manageTournamentsDesc" to "创建内部和公开锦标赛、导入官方锦标赛并管理参赛作品。",
        "home.authenticatedFeatures.myTischtennisIntegration" to "我的乒乓球集成",
        "home.authenticatedFeatures.myTischtennisIntegrationDesc" to "自动与 MyTischtennis.de 同步比赛结果和统计数据。",
        "home.authenticatedFeatures.pdfExport" to "PDF导出",
        "home.authenticatedFeatures.pdfExportDesc" to "将培训日导出为 PDF 格式，其中包含参与者、活动和统计数据。",
        "home.authenticatedFeatures.statistics" to "统计与评估",
        "home.authenticatedFeatures.statisticsDesc" to "获取详细的培训和参与概述以及活动统计数据。",
        "home.authenticatedFeatures.teamManagement" to "团队管理",
        "home.authenticatedFeatures.teamManagementDesc" to "管理您俱乐部的球队、联赛、赛程和赛果。",
        "home.authenticatedFeatures.trainingGroups" to "训练组别及时间",
        "home.authenticatedFeatures.trainingGroupsDesc" to "组织培训小组、定义培训时间并管理小组作业。",
        "home.faq" to "常见问题",
        "home.faqFree.answer" to "是的，您可以免费开始。稍后可以进行扩展。",
        "home.faqFree.question" to "可以免费使用吗？",
        "home.faqInstallation.answer" to "不，它是一个网络应用程序。您可以直接在台式机、平板电脑和智能手机上的浏览器中使用它。",
        "home.faqInstallation.question" to "我需要安装吗？",
        "home.faqMyTischtennis.answer" to "是的，设置后，应用程序会自动与 MyTischtennis.de 同步并导入比赛结果和统计数据。",
        "home.faqMyTischtennis.question" to "MyTischtennis 集成会自动运行吗？",
        "home.faqPermissions.answer" to "有四种角色：管理员、教练、团队领导和成员。每个角色都有可以自定义的特定权限。",
        "home.faqPermissions.question" to "授权系统如何运作？",
        "home.faqPrivacy.answer" to "我们依赖数据经济、透明的审批、基于角色的访问和完整的活动日志。该应用程序符合 GDPR 规定。",
        "home.faqPrivacy.question" to "数据保护怎么样？",
        "home.faqTournaments.answer" to "您可以管理内部锦标赛、公开锦标赛和官方锦标赛（例如来自协会的锦标赛）。可以导入官方锦标赛。",
        "home.faqTournaments.question" to "支持哪些锦标赛类型？",
        "home.faqTrainingGroups.answer" to "是的，您可以创建培训组、定义培训时间并将成员分配到组中。训练日记会自动建议合适的组别和时间。",
        "home.faqTrainingGroups.question" to "我可以管理培训组别和时间吗？",
        "home.features.activityLog" to "活动日志",
        "home.features.activityLogDesc" to "完整记录所有操作，以实现透明度和可追溯性。",
        "home.features.keepDiary" to "记训练日记",
        "home.features.keepDiaryDesc" to "全面且结构化地记录每个单元的内容、范围和出席情况。",
        "home.features.manageMembers" to "管理会员",
        "home.features.manageMembersDesc" to "创建成员个人资料、形成群组并保持最新的联系方式和批准状态。",
        "home.features.myTischtennisIntegration" to "我的乒乓球集成",
        "home.features.myTischtennisIntegrationDesc" to "自动与 MyTischtennis.de 同步比赛结果和统计数据。",
        "home.features.officialTournaments" to "官方锦标赛",
        "home.features.officialTournamentsDesc" to "导入和管理官方锦标赛、管理参赛作品和结果。",
        "home.features.organizeSchedules" to "整理比赛计划",
        "home.features.organizeSchedulesDesc" to "规划比赛、锦标赛和活动，包括小组、回合和结果。",
        "home.features.pdfExport" to "PDF导出",
        "home.features.pdfExportDesc" to "将培训日导出为 PDF 格式，其中包含参与者、活动和统计数据。",
        "home.features.permissionSystem" to "授权系统",
        "home.features.permissionSystemDesc" to "基于角色的访问（管理员、教练、队长、成员）以及个人权限。",
        "home.features.predefinedActivities" to "预定义活动",
        "home.features.predefinedActivitiesDesc" to "使用模板进行重复练习并加快文档编制速度。",
        "home.features.security" to "安全与 GDPR",
        "home.features.securityDesc" to "数据保护友好的架构、成员批准和透明访问。",
        "home.features.statistics" to "统计与评估",
        "home.features.statisticsDesc" to "接受培训和参与概述，认识发展并具体规划。",
        "home.features.teamManagement" to "团队管理",
        "home.features.teamManagementDesc" to "管理您俱乐部的球队、联赛、赛程和赛果。",
        "home.features.trainingGroups" to "训练组别及时间",
        "home.features.trainingGroupsDesc" to "组织培训小组、定义培训时间并管理小组作业。",
        "home.forWhom" to "训练日记适合谁？",
        "home.forWhomText" to "训练日记是俱乐部、部门和教练团队的综合平台。它将会员管理与训练组和时间、详细的训练日记、全面的锦标赛组织（内部、公开和官方锦标赛）、与联赛集成的团队管理、MyTischtennis 同步、有意义的统计和评估以及现代 Web 应用程序中的灵活授权系统结合在一起。通过明确的角色（管理员、培训师、团队领导、成员）和个人授权，负责人保留控制权，而成员可以以自我决定的方式参与。非常适合团队、球拍和个人运动——从初级到高级水平。符合 GDPR 要求，具有透明的批准和完整的活动日志。",
        "home.haveAccount" to "我已经有一个帐户",
        "home.heroFeatures.memberManagement" to "会员及群组管理",
        "home.heroFeatures.myTischtennis" to "我的乒乓球集成",
        "home.heroFeatures.statistics" to "统计与评估",
        "home.heroFeatures.teamManagement" to "球队管理和联赛",
        "home.heroFeatures.tournaments" to "锦标赛（内部、公开、官方）",
        "home.heroFeatures.trainingDiary" to "培训日记和文档",
        "home.heroFeatures.trainingGroups" to "训练组别及训练时间",
        "home.heroSubtitle" to "TrainingDiary 是俱乐部的综合解决方案：会员管理、训练小组、训练时间、训练日记、比赛组织、球队管理、MyTable Tennis 集成、统计等 - 符合 GDPR 且易于使用。",
        "home.heroTitle" to "俱乐部管理、训练规划和比赛——全部集中在一处",
        "home.howItWorks" to "这就是它的工作原理",
        "home.registerNow" to "立即免费注册",
        "home.rolesAndPrivacy" to "角色、权限和 GDPR",
        "home.startFree" to "免费开始",
        "home.step1.description" to "免费创建一个帐户并通过电子邮件激活它。",
        "home.step1.title" to "登记",
        "home.step2.description" to "创建您的俱乐部、邀请成员并建立群组。",
        "home.step2.title" to "创建俱乐部",
        "home.step3.description" to "计划预约、记录培训并跟踪进度。",
        "home.step3.title" to "计划和文件",
        "home.welcome" to "欢迎来到训练日记",
        "home.welcomeBack" to "欢迎回来！您已成功登录。",
        "home.whatCanYouDo" to "你可以用训练日记做什么？",
        "imageDialog.close" to "关闭",
        "imageDialog.noImageAvailable" to "无可用图片",
        "imageDialog.title" to "屏幕",
        "imageViewer.camera" to "相机",
        "imageViewer.delete" to "删除",
        "imageViewer.deleteImage" to "删除图像",
        "imageViewer.nextImage" to "下一张图片",
        "imageViewer.noImageAvailable" to "无可用图片",
        "imageViewer.previousImage" to "上一张图片",
        "imageViewer.rotateLeft" to "向左旋转 90°",
        "imageViewer.rotateRight" to "向右旋转 90°",
        "imageViewer.selectFiles" to "选择文件",
        "imageViewer.setAsPrimary" to "设置为主图像",
        "imageViewer.setAsPrimaryButton" to "设置特色图像",
        "imprint.contact" to "接触",
        "imprint.serviceProvider" to "服务提供商名称",
        "imprint.title" to "法律声明",
        "languages.de" to "Deutsch (德语)",
        "languages.de-CH" to "Schwiizerdütsch (瑞士德语)",
        "languages.en-AU" to "English (英语（AU）)",
        "languages.en-GB" to "English (英语（GB）)",
        "languages.en-US" to "English (英语（US）)",
        "languages.es" to "Español (西班牙语)",
        "languages.fil" to "Filipino (菲律宾语)",
        "languages.fr" to "Français (法语)",
        "languages.it" to "Italiano (意大利语)",
        "languages.ja" to "日本語 (日语)",
        "languages.pl" to "Polski (波兰语)",
        "languages.th" to "ไทย (泰语)",
        "languages.tl" to "Tagalog (他加禄语)",
        "languages.zh" to "中文",
        "legal.backToHome" to "返回首页",
        "legal.imprint" to "法律声明",
        "legal.privacyPolicy" to "隐私政策",
        "logs.actions" to "行动",
        "logs.all" to "全部",
        "logs.apiRequests" to "API请求",
        "logs.applyFilters" to "应用过滤器",
        "logs.backend" to "后端设置",
        "logs.clearFilters" to "恢复",
        "logs.cronJobs" to "计划任务",
        "logs.details" to "Details",
        "logs.displayed" to "显示的",
        "logs.displayedLabel" to "已查看",
        "logs.error" to "错误",
        "logs.errorLabel" to "错误",
        "logs.errorLoading" to "加载日志时出错",
        "logs.executionTime" to "执行时间",
        "logs.from" to "从",
        "logs.httpMethod" to "HTTP方法",
        "logs.justNow" to "现在",
        "logs.loadingLogs" to "正在加载日志...",
        "logs.logDetails" to "日志详细信息",
        "logs.logDetailsLabels.error" to "错误",
        "logs.logDetailsLabels.executionTime" to "执行时间",
        "logs.logDetailsLabels.ip" to "IP",
        "logs.logDetailsLabels.method" to "方法",
        "logs.logDetailsLabels.path" to "小路",
        "logs.logDetailsLabels.requestBody" to "请求正文",
        "logs.logDetailsLabels.responseBody" to "响应体",
        "logs.logDetailsLabels.schedulerJob" to "调度员工作",
        "logs.logDetailsLabels.status" to "地位",
        "logs.logDetailsLabels.time" to "时间",
        "logs.logDetailsLabels.type" to "类型",
        "logs.logType" to "日志类型",
        "logs.logTypeLabels.api_request" to "API请求",
        "logs.logTypeLabels.cron_job" to "计划任务",
        "logs.logTypeLabels.manual" to "手动的",
        "logs.logTypeLabels.scheduler" to "调度程序",
        "logs.manual" to "手动执行",
        "logs.method" to "方法",
        "logs.minutesAgo" to "{n} 分钟前",
        "logs.mytischtennis" to "我的乒乓球",
        "logs.next" to "下一个",
        "logs.of" to "经过",
        "logs.ownBackend" to "自己的后端",
        "logs.page" to "页",
        "logs.path" to "小路",
        "logs.pathPlaceholder" to "例如/api/日记",
        "logs.previous" to "以前的",
        "logs.recordsFound" to "找到记录",
        "logs.scheduler" to "调度程序",
        "logs.secondsAgo" to "{n} 秒前",
        "logs.status" to "地位",
        "logs.subtitle" to "所有 API 请求、响应和执行的概述",
        "logs.successfullyLoaded" to "加载成功",
        "logs.time" to "时间",
        "logs.title" to "系统日志",
        "logs.to" to "到",
        "logs.total" to "全部的",
        "logs.type" to "类型",
        "matchReport.analyzeNuscore" to "核分析",
        "matchReport.createLocalCopy" to "创建本地副本",
        "matchReport.hideAnalyzer" to "隐藏分析器",
        "matchReportApi.availablePlayers" to "可用球员",
        "matchReportApi.bothTeamsAppeared" to "两队均进行了比赛",
        "matchReportApi.clickToRemove" to "点击删除",
        "matchReportApi.completed" to "关闭",
        "matchReportApi.completion" to "完成",
        "matchReportApi.endTime" to "结束时间",
        "matchReportApi.errorLoading" to "加载数据时出错",
        "matchReportApi.general" to "一般的",
        "matchReportApi.greeting" to "欢迎",
        "matchReportApi.guestLineup" to "访客设置",
        "matchReportApi.guestPin" to "PIN 宾客俱乐部",
        "matchReportApi.guestTeamNotAppeared" to "客队 {team} 未参加比赛",
        "matchReportApi.homeLineup" to "在家安装",
        "matchReportApi.homePin" to "PIN家庭俱乐部",
        "matchReportApi.homeTeamNotAppeared" to "主队 {team} 未参加比赛",
        "matchReportApi.loading" to "正在加载比赛报告数据...",
        "matchReportApi.noLineupData" to "没有可用的安装数据",
        "matchReportApi.notAppeared" to "没有全部参加",
        "matchReportApi.pending" to "待办的",
        "matchReportApi.pinInput" to "密码输入",
        "matchReportApi.playSystem" to "游戏系统",
        "matchReportApi.rank" to "圆圈",
        "matchReportApi.result" to "输入结果",
        "matchReportApi.retry" to "再试一次",
        "matchReportApi.selectedPlayers" to "选定的球员",
        "matchReportApi.setCurrentTime" to "设置当前时间",
        "matchReportApi.signLineup" to "标牌安装",
        "matchReportApi.startTime" to "开始时间",
        "matchReportApi.status" to "地位",
        "matchReportApi.vs" to "vs",
        "matchReportHeaderActions.copied" to "复制了！",
        "matchReportHeaderActions.copyError" to "复制 pin 时出错",
        "matchReportHeaderActions.copyPin" to "复制 PIN 码",
        "matchReportHeaderActions.copyPinTitle" to "复制到剪贴板",
        "matchReportHeaderActions.insertPin" to "插入您的 PIN 码",
        "matchReportHeaderActions.insertPinTitle" to "自动插入",
        "matchReportHeaderActions.noPinAvailable" to "没有可用的 PIN 码",
        "memberActivities.activity" to "锻炼",
        "memberActivities.all" to "全部",
        "memberActivities.close" to "关闭",
        "memberActivities.dates" to "数据",
        "memberActivities.frequency" to "频率",
        "memberActivities.last3Months" to "过去 3 个月",
        "memberActivities.last4Weeks" to "过去 2 个月",
        "memberActivities.last6Months" to "过去半年",
        "memberActivities.lastYear" to "去年",
        "memberActivities.loading" to "正在加载练习...",
        "memberActivities.more" to "其他",
        "memberActivities.noActivities" to "在所选时间段内未找到任何练习。",
        "memberActivities.period" to "时间段",
        "memberActivities.showLess" to "显示较少",
        "memberActivities.title" to "练习者",
        "memberGallery.imageSize" to "图像尺寸",
        "memberGallery.loading" to "正在加载图库...",
        "memberGallery.noImage" to "无图像",
        "memberGallery.noMembersWithImages" to "未找到带有图像的成员。",
        "memberGallery.title" to "会员画廊",
        "memberGallery.titleWithDate" to "会员图库 - 单击图像即可添加为参与者",
        "memberNotes.add" to "添加",
        "memberNotes.memberImage" to "形象会员",
        "memberNotes.newNote" to "新笔记",
        "memberNotes.notes" to "笔记",
        "memberNotes.phone" to "电话号码",
        "memberNotes.selectTags" to "选择标签",
        "memberNotes.tags" to "Tags",
        "memberNotes.title" to "注意事项",
        "members.actions" to "操作",
        "members.active" to "活跃",
        "members.activeMembers" to "活跃成员",
        "members.addEmail" to "添加电子邮箱地址",
        "members.addGroup" to "添加分组...",
        "members.addPhone" to "添加电话号码",
        "members.address" to "地址",
        "members.adultReleaseApproved" to "已批准参加成人组",
        "members.adultReserveApproved" to "成人组替补",
        "members.adults" to "成人（20岁以上）",
        "members.age" to "年龄",
        "members.ageFromPlaceholder" to "从",
        "members.ageGroup" to "年龄组",
        "members.ageRange" to "年龄范围",
        "members.ageToPlaceholder" to "到",
        "members.batchFormsMarkedEmpty" to "当前选择中没有未经验证的表单。",
        "members.batchFormsMarkedSuccess" to "将 {count} 表格标记为已验证。",
        "members.batchMarkedRegularEmpty" to "当前选拔中没有试用成员。",
        "members.batchMarkedRegularSuccess" to "将 {count} 试用会员标记为常规会员。",
        "members.batchPartialFailure" to "{success} 成功，{failed} 失败。",
        "members.birthdate" to "出生日期",
        "members.bulkActions" to "批量操作",
        "members.camera" to "相机",
        "members.change" to "更改",
        "members.city" to "城市",
        "members.clearFields" to "清空字段",
        "members.clearFilters" to "重置筛选",
        "members.clickTtRequestAction" to "请求 click-TT 资格",
        "members.clickTtRequestConfirm" to "启动针对 {name} 的自动 Click-TT 请求？",
        "members.clickTtRequestError" to "无法提交 Click-TT 请求。",
        "members.clickTtRequestFailedLog" to "Click-TT 请求失败",
        "members.clickTtRequestHint" to "该请求由后端 Click-TT 工作流程自动处理。",
        "members.clickTtRequestPending" to "Click-TT 请求正在进行中",
        "members.clickTtRequestPendingShort" to "待办的 ...",
        "members.clickTtRequestShort" to "点击TT",
        "members.clickTtRequestSuccess" to "请登录 click-tt 并在那里提交请求。",
        "members.clickTtRequestTitle" to "开始 Click-TT 请求",
        "members.clickTtSubmitted" to "点击 TT 提交",
        "members.closeEditor" to "关闭编辑器",
        "members.composeEmail" to "撰写电子邮件",
        "members.contact" to "接触",
        "members.copyContactSummary" to "复制联系人摘要",
        "members.copyContactSummarySuccess" to "联系人摘要已复制到剪贴板。",
        "members.copyEmails" to "复制电子邮件",
        "members.copyEmailsEmpty" to "当前选择中没有电子邮件地址。",
        "members.copyEmailsSuccess" to "电子邮件列表已复制到剪贴板。",
        "members.copyPhones" to "复制电话",
        "members.copyPhonesEmpty" to "当前选择中没有电话号码。",
        "members.copyPhonesSuccess" to "电话列表已复制到剪贴板。",
        "members.create" to "创建",
        "members.createNewMember" to "创建新成员",
        "members.dataIssueAddress" to "缺少地址",
        "members.dataIssueBirthdate" to "缺少出生日期",
        "members.dataIssueCity" to "缺少城市",
        "members.dataIssueEmail" to "缺少电子邮箱地址",
        "members.dataIssueGender" to "性别未明确",
        "members.dataIssuePhone" to "缺少电话号码",
        "members.dataIssuePostalCode" to "缺少邮政编码",
        "members.dataIssueStreet" to "缺少街道",
        "members.dataIssueTrainingGroup" to "缺少训练组",
        "members.dataQuality" to "数据质量",
        "members.dataQualityComplete" to "数据完整",
        "members.deactivateMember" to "停用成员",
        "members.deactivateMemberConfirm" to "确定要停用“{name}”吗？",
        "members.deactivateMemberTitle" to "停用成员",
        "members.deleteImageConfirm" to "您真的要删除该图像吗？",
        "members.deleteImageTitle" to "删除图像",
        "members.editHint" to "单击一行打开编辑器。",
        "members.editMember" to "编辑成员",
        "members.editorAssignTrainingGroupHint" to "请至少分配一个训练组。",
        "members.editorCreateHint" to "创建新成员并直接获取联系方式。",
        "members.editorEditHint" to "编辑 {name} 的详细信息。",
        "members.editorRecommendedEntry" to "建议填写",
        "members.emailAddress" to "电子邮箱地址",
        "members.emailAddressShort" to "邮箱",
        "members.emails" to "电子邮箱地址",
        "members.errorAddingToGroup" to "添加到分组时出错",
        "members.errorDeactivatingMember" to "停用成员时出错",
        "members.errorDeletingImage" to "无法删除图片",
        "members.errorLoadingImage" to "加载图片时出错",
        "members.errorLoadingMembers" to "加载会员列表失败。",
        "members.errorLoadingTrainingParticipations" to "加载训练参与记录时出错",
        "members.errorMarkingForm" to "标记表格时出错。",
        "members.errorRemovingFromGroup" to "从分组移除时出错",
        "members.errorRemovingTestMembership" to "移除试用会员资格时出错。",
        "members.errorRotatingImage" to "旋转图片时出错",
        "members.errorSavingMember" to "保存成员时出错",
        "members.errorSettingPrimaryImage" to "无法设置主图片",
        "members.errorTransfer" to "转移时出错",
        "members.errorUpdatingRatings" to "更新 TTR/QTTR 时出错",
        "members.errorUploadingImage" to "无法上传图片",
        "members.exercises" to "练习",
        "members.exportCsv" to "导出 CSV",
        "members.exportCsvFile" to "成员选择.csv",
        "members.exportEmails" to "电子邮件",
        "members.exportMembersSelected" to "当前选定的成员",
        "members.exportPhones" to "电话",
        "members.exportPreview" to "导出预览",
        "members.exportPreviewEmpty" to "当前选择中没有成员",
        "members.exportPreviewNames" to "预览",
        "members.exportReachableByEmail" to "有电子邮件地址",
        "members.exportReachableByPhone" to "有电话号码",
        "members.firstName" to "名",
        "members.formHandedOver" to "会员表格已交付",
        "members.formMarkedAsHandedOver" to "已将会员表格标记为已交付。",
        "members.gender" to "性别",
        "members.genderDiverse" to "其他",
        "members.genderFemale" to "女",
        "members.genderMale" to "男",
        "members.genderUnknown" to "未知",
        "members.generatePhoneList" to "生成电话列表",
        "members.groupPhotoCrop" to "处理集体照",
        "members.groupPhotoCropSaved" to "已从集体照保存会员照片。",
        "members.image" to "图片",
        "members.imageDeleted" to "图片已删除。",
        "members.imageInternet" to "图片（网络）",
        "members.imagePreview" to "成员图片预览",
        "members.imageUpdated" to "图片已更新",
        "members.inactive" to "非活跃",
        "members.inactiveMembers" to "非活跃成员",
        "members.j11" to "U11",
        "members.j13" to "U13",
        "members.j15" to "U15",
        "members.j17" to "J17（17岁及以下）",
        "members.j19" to "U19",
        "members.j9" to "U9",
        "members.lastName" to "姓",
        "members.lastTrainingFilter" to "最近训练",
        "members.lastTrainingFilterHasDate" to "有记录日期",
        "members.lastTrainingFilterHint" to "表格：年龄组列显示当前赛季。悬停行可查看两赛季、最近训练及参与次数（若有）。",
        "members.lastTrainingFilterNoDate" to "无最近训练",
        "members.lastTrainingFilterNotInTraining" to "标记「不再参加训练」",
        "members.loadingMembers" to "正在加载会员...",
        "members.m11" to "G11",
        "members.m13" to "G13",
        "members.m15" to "G15",
        "members.m19" to "G19",
        "members.m9" to "G9",
        "members.markFormReceived" to "标记表格已验证",
        "members.markFormsForSelection" to "验证选择表格",
        "members.markRegular" to "标记为常规",
        "members.markRegularForSelection" to "标记选择常规",
        "members.memberDeactivated" to "成员已停用",
        "members.memberDetails" to "会员详情",
        "members.memberFormHandedOver" to "会员表格已交付",
        "members.memberImage" to "成员图片",
        "members.memberImages" to "成员图片",
        "members.memberInfo" to "成员信息",
        "members.memberScope" to "会员范围",
        "members.missingTtrHistoryId" to "未保存 myTischtennis ID",
        "members.name" to "姓名",
        "members.newMember" to "新成员",
        "members.noAddressShort" to "无地址",
        "members.noEmailShort" to "没有电子邮件",
        "members.noGroupsAssigned" to "未分配任何分组",
        "members.noGroupsAvailable" to "没有可用分组",
        "members.noOpenTasks" to "没有未完成的任务",
        "members.noPhoneShort" to "没有电话",
        "members.notes" to "备注",
        "members.noTestMembership" to "不再是试用会员",
        "members.notInTrainingTooltip" to "没有参加 {weeks} 培训周",
        "members.onlyActiveMembers" to "仅导出活跃成员",
        "members.openTasks" to "开放任务",
        "members.parent" to "家长",
        "members.parentFallback" to "家长",
        "members.parentName" to "姓名（例如：母亲、父亲）",
        "members.phoneList" to "电话列表.pdf",
        "members.phoneListForSelection" to "可供选择的电话列表",
        "members.phoneListSelectionFile" to "电话列表选择.pdf",
        "members.phoneNumber" to "电话号码",
        "members.phoneNumberShort" to "电话",
        "members.phones" to "电话号码",
        "members.picsInInternetAllowed" to "允许在互联网上发布照片",
        "members.postalCode" to "邮政编码",
        "members.previewLastTraining" to "最后一次训练",
        "members.previewNoLastTraining" to "还没有参与",
        "members.primary" to "主要",
        "members.primaryImageUpdated" to "主图片已更新。",
        "members.remove" to "移除",
        "members.resultsVisible" to "成员可见",
        "members.rowTooltipSeparator" to "·",
        "members.scopeActive" to "积极的",
        "members.scopeActiveDataIncomplete" to "活跃 + 数据不完整",
        "members.scopeActiveTest" to "活跃+试用",
        "members.scopeAll" to "全部",
        "members.scopeDataIncomplete" to "数据不完整",
        "members.scopeInactive" to "不活跃",
        "members.scopeNeedsForm" to "表格未经验证",
        "members.scopeNotTraining" to "不再训练",
        "members.scopeTest" to "审判",
        "members.search" to "搜索",
        "members.searchAndFilter" to "搜索和筛选",
        "members.searchPlaceholder" to "按姓名、城市、电话或电子邮件搜索",
        "members.selectFile" to "选择文件",
        "members.showInactiveMembers" to "显示非活跃成员",
        "members.showTrainingParticipationsColumn" to "显示「训练参与」列",
        "members.showTtrHistory" to "显示 TTR 历史",
        "members.sixOrMoreParticipations" to "训练参与 6 次或以上",
        "members.sortAge" to "年龄",
        "members.sortBirthday" to "生日",
        "members.sortBy" to "排序方式",
        "members.sortFirstName" to "名",
        "members.sortLastName" to "姓",
        "members.sortLastTraining" to "最后一次训练",
        "members.sortOpenTasks" to "开放任务",
        "members.sortQttr" to "QTTR值",
        "members.status" to "地位",
        "members.street" to "街道",
        "members.subtitle" to "直接搜索、过滤和编辑成员。",
        "members.taskActionMarkRegular" to "标记为常规",
        "members.taskActionRequest" to "要求",
        "members.taskActionReview" to "打开",
        "members.taskActionVerify" to "核实",
        "members.taskAssignTrainingGroup" to "分配训练组",
        "members.taskCheckClickTt" to "查看 Click-TT 资格",
        "members.taskCheckDataQuality" to "检查数据质量",
        "members.taskCheckTrainingStatus" to "查看培训状态",
        "members.taskReviewTrialStatus" to "查看试用状态",
        "members.taskVerifyForm" to "验证表格",
        "members.testMember" to "试用",
        "members.testMembers" to "试用成员",
        "members.testMembership" to "试用会员",
        "members.testMembershipRemoved" to "试用会员资格已移除。",
        "members.threeOrMoreParticipations" to "训练参与 3 次或以上",
        "members.title" to "成员",
        "members.toggleSortDirection" to "切换排序方向",
        "members.trainingGroups" to "训练组",
        "members.trainingParticipations" to "训练参与次数",
        "members.transferErrorTitle" to "传输错误",
        "members.transferMembers" to "转移成员",
        "members.transferSuccessTitle" to "转账成功",
        "members.ttAdult" to "成人（按截止日非青年）",
        "members.ttAgeClassCol" to "年龄组（TT）",
        "members.ttFilterGroupJ" to "男女孩（混合）",
        "members.ttFilterGroupM" to "仅女孩",
        "members.ttrQttr" to "TTR/QTTR",
        "members.ttSeasonCurrentTag" to "当前",
        "members.ttSeasonFilter" to "赛季（截止日）",
        "members.ttSeasonNextTag" to "下一",
        "members.ttStichtagHint" to "截止日1月1日（DTTB）。男孩：仅 J 组。女孩：J 与 M。",
        "members.updateRatings" to "从 myTischtennis 更新 TTR/QTTR",
        "members.updating" to "更新中...",
        "members.visibleMembers" to "可见会员",
        "members.wantsToPlay" to "想参加比赛",
        "memberSelection.close" to "关闭",
        "memberSelection.deselectAll" to "取消全选",
        "memberSelection.generatePdf" to "生成 PDF",
        "memberSelection.members" to "会员",
        "memberSelection.noRecommendations" to "未找到匹配的推荐。",
        "memberSelection.recommendations" to "建议",
        "memberSelection.selectAll" to "选择全部",
        "memberSelection.title" to "选择会员",
        "memberTransfer.additionalField" to "额外字段",
        "memberTransfer.additionalFieldExample1" to "附加字段（例如 client_id）",
        "memberTransfer.additionalFieldExample2" to "附加字段（例如 client_secret）",
        "memberTransfer.analyzeAndImport" to "分析并导入模板",
        "memberTransfer.availablePlaceholders" to "可用占位符",
        "memberTransfer.bulkMode" to "批量导入模式（一次性导入所有成员）",
        "memberTransfer.bulkModeActive" to "模式激活",
        "memberTransfer.bulkModeActiveDescription" to "该模板定义单个成员的格式。成员自动包装在数组中。您可以选择在“批量包装模板”中定义外部结构（见下文）。",
        "memberTransfer.bulkModeHint" to "如果启用，请求中的所有成员都将作为数组传输。",
        "memberTransfer.bulkWrapperDescription" to "或者，您可以定义将插入成员数组的外部结构。使用 PLACEHOLDER_MEMBERS 作为成员数组的占位符。",
        "memberTransfer.bulkWrapperNote" to "注意：如果未指定包装模板，则会自动使用成员数组。",
        "memberTransfer.bulkWrapperTemplate" to "散装包装模板（可选）",
        "memberTransfer.bulkWrapperWhat" to "什么是散装包装模板？",
        "memberTransfer.configDeleted" to "配置删除成功！",
        "memberTransfer.configInfo" to "在此配置将成员转移到外部系统的设置。这些设置是根据俱乐部特定情况保存的。",
        "memberTransfer.configSaved" to "配置保存成功",
        "memberTransfer.confirmDelete" to "删除配置",
        "memberTransfer.confirmDeleteMessage" to "您确定要退款吗？",
        "memberTransfer.deleteConfig" to "删除配置",
        "memberTransfer.deleting" to "清理...",
        "memberTransfer.errorDeleting" to "错误清除",
        "memberTransfer.errorLoading" to "加载配置时出错",
        "memberTransfer.errorParsingTemplate" to "解析模板时出错",
        "memberTransfer.errorSaving" to "保存时出错",
        "memberTransfer.example" to "例子",
        "memberTransfer.exampleFormData" to "表单数据格式示例",
        "memberTransfer.exampleJson" to "JSON格式示例（推荐）",
        "memberTransfer.exampleXml" to "XML 格式示例",
        "memberTransfer.formDataHint" to "对于表单数据，请使用简单的文本模板，其中的行格式为 feldname=placeholder：",
        "memberTransfer.httpMethod" to "HTTP方法",
        "memberTransfer.importTemplate" to "从完整示例导入模板",
        "memberTransfer.importTemplateHint" to "包括完整的示例模板（带有示例成员）。系统会自动检测会员模板和批量包装模板。",
        "memberTransfer.importTemplatePlaceholder" to "在此处插入完整的示例模板，例如：\nLBRACE\n  十二月：[\n    LBRACE\n      D .firstNameD.: D .MaxD.,\n      D. 姓氏 D.: D. MustermannD.,\n      DMail: DMaxATexample.comMail: DMaxATexample.com\n    右臂支撑\n  ]\n右臂支撑",
        "memberTransfer.invalidJson" to "请确保使用有效的 JSON。",
        "memberTransfer.invalidTemplateFormat" to "模板格式无效",
        "memberTransfer.loadingConfig" to "正在加载配置...",
        "memberTransfer.loginConfiguration" to "登录配置",
        "memberTransfer.loginData" to "登录数据",
        "memberTransfer.loginEndpointHint" to "可选：登录端点的相对路径（例如/api/auth/login）",
        "memberTransfer.loginEndpointPath" to "登录端点路径",
        "memberTransfer.loginEndpointPlaceholder" to "/api/auth/登录",
        "memberTransfer.loginFormat" to "登录格式",
        "memberTransfer.membersArray" to "成员数组",
        "memberTransfer.password" to "密码",
        "memberTransfer.passwordEncrypted" to "密码以加密方式存储。",
        "memberTransfer.placeholderHint" to "单击占位符将其插入到当前光标位置：",
        "memberTransfer.placeholders.address" to "合并地址",
        "memberTransfer.placeholders.addressDesc" to "街道与城镇相结合",
        "memberTransfer.placeholders.birthDate" to "出生日期",
        "memberTransfer.placeholders.birthDateAlt" to "出生日期（旧）",
        "memberTransfer.placeholders.birthDateAltDesc" to "出生日期，格式为 YYYY-MM-DD（别名）",
        "memberTransfer.placeholders.birthDateDesc" to "格式为 YYYY-MM-DD",
        "memberTransfer.placeholders.city" to "地点",
        "memberTransfer.placeholders.cityDesc" to "居住地",
        "memberTransfer.placeholders.email" to "电子邮件",
        "memberTransfer.placeholders.emailDesc" to "会员的电子邮件地址",
        "memberTransfer.placeholders.firstName" to "名",
        "memberTransfer.placeholders.firstNameDesc" to "会员名字",
        "memberTransfer.placeholders.fullName" to "姓名",
        "memberTransfer.placeholders.fullNameDesc" to "名字和姓氏组合",
        "memberTransfer.placeholders.gender" to "性别",
        "memberTransfer.placeholders.genderDesc" to "会员性别",
        "memberTransfer.placeholders.lastName" to "姓",
        "memberTransfer.placeholders.lastNameDesc" to "会员姓氏",
        "memberTransfer.placeholders.phone" to "电话号码",
        "memberTransfer.placeholders.phoneDesc" to "工作人员电话",
        "memberTransfer.placeholders.qttr" to "QTTR值",
        "memberTransfer.placeholders.qttrDesc" to "会员QTTR价值",
        "memberTransfer.placeholders.street" to "街道",
        "memberTransfer.placeholders.streetDesc" to "街道和门牌号码",
        "memberTransfer.placeholders.ttr" to "TTR值",
        "memberTransfer.placeholders.ttrDesc" to "会员TTR值",
        "memberTransfer.save" to "节省",
        "memberTransfer.saving" to "保存...",
        "memberTransfer.serverBaseUrl" to "服务器基本 URL",
        "memberTransfer.serverBaseUrlHint" to "服务器的基本 URL（例如 https://example.com）",
        "memberTransfer.serverBaseUrlPlaceholder" to "https://example.com",
        "memberTransfer.serverConfiguration" to "服务器配置",
        "memberTransfer.templateDescription" to "模板定义了会员数据传输到外部系统的格式。使用占位符（例如 PLACEHOLDER_FIRSTNAME）自动替换数据。",
        "memberTransfer.templateImported" to "模板导入成功。",
        "memberTransfer.templateImportedBulk" to "检测到成员模板，启用批量模式。",
        "memberTransfer.templateImportedDetails" to "已检测并完成成员和批量包装模板。",
        "memberTransfer.templateImportedSingle" to "检测到单个成员模板。",
        "memberTransfer.templateTip" to "提示：将光标放在模板中所需的位置，然后单击占位符将其插入。传输时，占位符会自动替换为实际的成员数据。",
        "memberTransfer.templateWhat" to "什么是模板？",
        "memberTransfer.title" to "会员转移 - 设置",
        "memberTransfer.transferConfiguration" to "传输配置",
        "memberTransfer.transferConfigurationTitle" to "传输配置",
        "memberTransfer.transferEndpointHint" to "传输端点的相对路径（例如/api/members/bulk）",
        "memberTransfer.transferEndpointPath" to "传输端点路径",
        "memberTransfer.transferEndpointPlaceholder" to "/api/成员/批量",
        "memberTransfer.transferFormat" to "传输格式",
        "memberTransfer.transferTemplate" to "转让模板",
        "memberTransfer.usernameEmail" to "用户名/电子邮件",
        "memberTransferDialog.additionalErrors" to "额外的故障",
        "memberTransferDialog.additionalFieldPlaceholder" to "附加字段（例如 client_id）",
        "memberTransferDialog.additionalFieldPlaceholderForm" to "字段名称：值（例如 client_id：abc123）",
        "memberTransferDialog.bulkImport" to "批量导入",
        "memberTransferDialog.cancel" to "取消",
        "memberTransferDialog.editConfig" to "编辑配置。",
        "memberTransferDialog.endpoint" to "Endpoint",
        "memberTransferDialog.excludedMembers" to "排除成员（缺少必填字段）",
        "memberTransferDialog.format" to "Format",
        "memberTransferDialog.goToSettings" to "设置去哪里？",
        "memberTransferDialog.loadingConfig" to "加载保存的配置",
        "memberTransferDialog.loginData" to "登录数据",
        "memberTransferDialog.loginDataHint" to "登录详细信息从设置中使用。如有必要，您可以在此处覆盖它们。",
        "memberTransferDialog.loginDataOverride" to "登录详细信息（可选覆盖）",
        "memberTransferDialog.loginDataOverrideHint" to "仅当您想覆盖已保存的登录数据时才填写。空字段使用存储的值。",
        "memberTransferDialog.method" to "方法",
        "memberTransferDialog.mode" to "模式",
        "memberTransferDialog.noConfigFound" to "没有找到配置",
        "memberTransferDialog.noConfigMessage" to "请先在设置中配置会员转账。",
        "memberTransferDialog.passwordPlaceholder" to "密码（留空保存）",
        "memberTransferDialog.server" to "Server",
        "memberTransferDialog.single" to "单身的",
        "memberTransferDialog.title" to "转会会员",
        "memberTransferDialog.transfer" to "已转入",
        "memberTransferDialog.transferConfiguration" to "传输配置",
        "memberTransferDialog.transferError" to "传输过程中出错",
        "memberTransferDialog.transferFailed" to "转账失败",
        "memberTransferDialog.transferring" to "沟通中...",
        "memberTransferDialog.transferSuccess" to "{transferred} 已由 {total} 成员成功转移。",
        "memberTransferDialog.usernameEmail" to "用户名/电子邮件",
        "messages.cancel" to "取消",
        "messages.confirm" to "确认",
        "messages.error" to "错误",
        "messages.fileTooLarge" to "文件太大",
        "messages.imageMaxSize" to "图像的大小不得超过 5 MB。",
        "messages.info" to "信息",
        "messages.invalidFile" to "文件无效",
        "messages.note" to "注意",
        "messages.pleaseSelectImageFile" to "请选择一个图像文件。",
        "messages.recordsDisplayed" to "显示的",
        "messages.recordsFound" to "找到记录",
        "messages.success" to "成功",
        "messages.successfullyLoaded" to "加载成功",
        "messages.warning" to "警告",
        "mobile.active" to "Aktiv",
        "mobile.add" to "Hinzufügen",
        "mobile.appLoading" to "App wird geladen",
        "mobile.calendarAgendaEmpty" to "本月没有日程。",
        "mobile.calendarAgendaTitle" to "本月日程",
        "mobile.calendarAllSourcesFailed" to "无法加载日历数据。",
        "mobile.calendarCancellationEnd" to "结束（可选）",
        "mobile.calendarCancellationHint" to "在这些日期隐藏定期训练时间。",
        "mobile.calendarCancellationInMonth" to "本月取消",
        "mobile.calendarCancellationReason" to "原因",
        "mobile.calendarCancellationSave" to "保存",
        "mobile.calendarCancellationStart" to "日期 (YYYY-MM-DD)",
        "mobile.calendarCancellationTitle" to "训练取消",
        "mobile.calendarGridTitle" to "月份",
        "mobile.calendarLegend" to "显示",
        "mobile.calendarLegendCancellation" to "取消",
        "mobile.calendarLegendHoliday" to "节日",
        "mobile.calendarLegendMatch" to "联赛",
        "mobile.calendarLegendOfficial" to "参赛",
        "mobile.calendarLegendSchool" to "学校假期",
        "mobile.calendarLegendTournament" to "锦标赛",
        "mobile.calendarLegendTraining" to "训练",
        "mobile.calendarSourceCancellations" to "训练取消",
        "mobile.calendarSourceDiary" to "日记",
        "mobile.calendarSourceFailed" to "未加载",
        "mobile.calendarSourceHolidays" to "假期/节日",
        "mobile.calendarSourceMatches" to "联赛",
        "mobile.calendarSourceOfficial" to "官方参赛",
        "mobile.calendarSourceTournaments" to "比赛",
        "mobile.calendarSourceTrainingTimes" to "训练时间",
        "mobile.calendarSubtitle" to "本月训练、比赛与假期一览。",
        "mobile.calendarTitle" to "日历",
        "mobile.calendarToday" to "今天",
        "mobile.cancel" to "Abbrechen",
        "mobile.clubRequest" to "Zugriff anfragen",
        "mobile.clubRequested" to "Angefragt",
        "mobile.createDiaryEntry" to "Eintrag erstellen",
        "mobile.deleteNote" to "Notiz löschen",
        "mobile.deleteTag" to "Tag entfernen",
        "mobile.editTimes" to "Zeiten bearbeiten",
        "mobile.emailAndPasswordRequired" to "E-Mail und Passwort sind erforderlich",
        "mobile.entry" to "Eintrag",
        "mobile.inactive" to "Inaktiv",
        "mobile.language" to "Sprache",
        "mobile.lastTraining" to "Letztes Training",
        "mobile.loginFailed" to "Login fehlgeschlagen",
        "mobile.loginInProgress" to "Anmelden...",
        "mobile.more" to "Mehr",
        "mobile.new" to "Neu",
        "mobile.newNote" to "Neue Notiz",
        "mobile.newTag" to "Neuer Tag",
        "mobile.noDiaryEntries" to "Noch keine Tagebuch-Einträge",
        "mobile.noMembers" to "Keine Mitglieder gefunden",
        "mobile.noResults" to "Keine Treffer",
        "mobile.noTimes" to "Keine Zeiten",
        "mobile.offlineCacheHint" to "无网络连接，显示上次加载的数据。",
        "mobile.participationTop" to "Top Teilnahmen",
        "mobile.refresh" to "Aktualisieren",
        "mobile.requestedAccess" to "Angefragt",
        "mobile.role" to "Rolle",
        "mobile.saveEntry" to "Speichern",
        "mobile.search" to "Suche",
        "mobile.select" to "Auswählen",
        "mobile.sessionCheck" to "Session prüfen",
        "mobile.sessionCheckFailed" to "Session check fehlgeschlagen",
        "mobile.sessionInvalid" to "Session ungültig",
        "mobile.sessionValid" to "Session gültig",
        "mobile.status" to "Status",
        "mobile.user" to "Benutzer",
        "myTischtennis.about" to "关于 myTischtennis",
        "myTischtennis.aboutFeatures.fetch" to "直接检索比赛数据",
        "myTischtennis.aboutFeatures.import" to "自动导入锦标赛数据",
        "myTischtennis.aboutFeatures.sync" to "同步播放器结果",
        "myTischtennis.aboutText" to "通过链接您的 myTischtennis 帐户，您可以：",
        "myTischtennis.autoUpdates" to "自动更新",
        "myTischtennis.club" to "协会 (myTischtennis)",
        "myTischtennis.deleteAccount" to "断开帐户连接",
        "myTischtennis.disabled" to "未选中",
        "myTischtennis.editAccount" to "编辑帐户",
        "myTischtennis.enabled" to "在",
        "myTischtennis.fetchStatistics" to "数据检索统计",
        "myTischtennis.lastFetch" to "最后获取：",
        "myTischtennis.lastLoginAttempt" to "上次登录尝试",
        "myTischtennis.lastSuccessfulLogin" to "上次成功登录",
        "myTischtennis.leagueTables" to "JoomSport 积分榜",
        "myTischtennis.linkAccount" to "关联账户",
        "myTischtennis.linkedAccount" to "关联账户",
        "myTischtennis.loadingStats" to "加载统计数据",
        "myTischtennis.matchResults" to "活动结果",
        "myTischtennis.neverFetched" to "从未找回",
        "myTischtennis.no" to "不",
        "myTischtennis.noAccount" to "没有链接 myTischtennis 帐户。",
        "myTischtennis.passwordNote" to "注意：保存密码是可选的。如果不保存，每次同步时都会要求您输入密码。",
        "myTischtennis.passwordSaved" to "密码已保存",
        "myTischtennis.passwordsEncrypted" to "密码以加密方式存储。",
        "myTischtennis.playerRatings" to "玩家评分",
        "myTischtennis.refreshStats" to "重新加载统计数据",
        "myTischtennis.testLogin" to "重新登录",
        "myTischtennis.title" to "myTischtennis-Account",
        "myTischtennis.updateHistory" to "更新历史",
        "myTischtennis.yes" to "是的",
        "myTischtennisAccount.aboutDescription" to "通过链接您的 myTischtennis 帐户，您可以：",
        "myTischtennisAccount.aboutFeature1" to "自动导入锦标赛数据",
        "myTischtennisAccount.aboutFeature2" to "同步播放器结果",
        "myTischtennisAccount.aboutFeature3" to "直接检索比赛数据",
        "myTischtennisAccount.aboutHint" to "保存密码是可选的。如果不保存，每次同步时都会要求您输入密码。",
        "myTischtennisAccount.aboutMyTischtennis" to "关于 myTischtennis",
        "myTischtennisAccount.accountSaved" to "myTischtennis-帐户已成功保存",
        "myTischtennisAccount.accountUnlinked" to "myTischtennis 帐户已成功断开连接",
        "myTischtennisAccount.autoUpdates" to "自动更新：",
        "myTischtennisAccount.club" to "协会（myTischtennis）：",
        "myTischtennisAccount.daysAgo" to "{count} 天前",
        "myTischtennisAccount.disabled" to "未选中",
        "myTischtennisAccount.editAccount" to "编辑帐户",
        "myTischtennisAccount.email" to "电子邮件：",
        "myTischtennisAccount.enabled" to "在",
        "myTischtennisAccount.errorLoadingAccount" to "加载 myTischtennis 帐户时出错",
        "myTischtennisAccount.errorLoadingStatistics" to "加载获取统计信息时出错",
        "myTischtennisAccount.errorUnlinking" to "断开帐户时出错",
        "myTischtennisAccount.fetchStatistics" to "数据检索统计",
        "myTischtennisAccount.hoursAgo" to "{count} 小时前",
        "myTischtennisAccount.justNow" to "现在",
        "myTischtennisAccount.lastFetch" to "最后获取：",
        "myTischtennisAccount.lastLoginAttempt" to "上次登录尝试：",
        "myTischtennisAccount.lastSuccessfulLogin" to "上次成功登录：",
        "myTischtennisAccount.leagueTables" to "JoomSport 积分榜",
        "myTischtennisAccount.linkAccount" to "关联账户",
        "myTischtennisAccount.linkedAccount" to "关联账户",
        "myTischtennisAccount.loading" to "加载中...",
        "myTischtennisAccount.loadingStatistics" to "加载统计数据",
        "myTischtennisAccount.loginAgain" to "重新登录",
        "myTischtennisAccount.loginFailed" to "登录失败",
        "myTischtennisAccount.loginSuccessful" to "登录成功！连接详细信息已更新。",
        "myTischtennisAccount.matchResults" to "活动结果",
        "myTischtennisAccount.minutesAgo" to "{count} 分钟前",
        "myTischtennisAccount.never" to "绝不",
        "myTischtennisAccount.neverFetched" to "从未找回",
        "myTischtennisAccount.no" to "不",
        "myTischtennisAccount.noAccountLinked" to "没有链接 myTischtennis 帐户。",
        "myTischtennisAccount.passwordRequired" to "需要密码",
        "myTischtennisAccount.passwordSaved" to "密码已保存",
        "myTischtennisAccount.playerRatings" to "玩家评分",
        "myTischtennisAccount.playersUpdated" to "球员更新",
        "myTischtennisAccount.refreshStatistics" to "重新加载统计数据",
        "myTischtennisAccount.results" to "结果",
        "myTischtennisAccount.teams" to "Teams",
        "myTischtennisAccount.title" to "我的Tischtennis 帐户",
        "myTischtennisAccount.unlinkAccount" to "断开帐户连接",
        "myTischtennisAccount.unlinkAccountConfirm" to "您确定要取消 myTischtennis 帐户的链接吗？",
        "myTischtennisAccount.unlinkAccountTitle" to "断开帐户连接",
        "myTischtennisAccount.updateHistory" to "更新历史",
        "myTischtennisAccount.yes" to "是的",
        "myTischtennisAccount.yesterday" to "昨天",
        "myTischtennisDialog.appPassword" to "您的应用程序密码需要确认",
        "myTischtennisDialog.appPasswordHint" to "出于安全原因，我们需要您的应用程序密码来保存 myTischtennis 密码。",
        "myTischtennisDialog.appPasswordPlaceholder" to "您此应用程序的密码",
        "myTischtennisDialog.autoUpdateRatings" to "启用自动更新评级",
        "myTischtennisDialog.autoUpdateRatingsHint" to "myTischtennis 的最新评级每天早上 6:00 自动检索。需要保存密码。",
        "myTischtennisDialog.autoUpdateWarning" to "对于自动更新，必须保存 myTischtennis 密码。",
        "myTischtennisDialog.cancel" to "取消",
        "myTischtennisDialog.editAccount" to "编辑我的 Tischtennis 帐户",
        "myTischtennisDialog.email" to "myTischtennis-电子邮件",
        "myTischtennisDialog.emailPlaceholder" to "您的 myTischtennis 电子邮件地址",
        "myTischtennisDialog.errorLogin" to "登录错误。",
        "myTischtennisDialog.errorSaving" to "保存帐户时出错",
        "myTischtennisDialog.linkAccount" to "链接我的Tischtennis 帐户",
        "myTischtennisDialog.loadingLoginForm" to "正在加载登录表格...",
        "myTischtennisDialog.loggingIn" to "登录...",
        "myTischtennisDialog.login" to "登录",
        "myTischtennisDialog.password" to "myTischtennis-密码",
        "myTischtennisDialog.passwordPlaceholder" to "您的 myTischtennis 密码",
        "myTischtennisDialog.passwordPlaceholderKeep" to "留空以保留",
        "myTischtennisDialog.save" to "节省",
        "myTischtennisDialog.savePassword" to "保存我的乒乓球密码",
        "myTischtennisDialog.savePasswordHint" to "如果启用，您的 myTischtennis 密码将加密存储，以便可以自动同步。",
        "myTischtennisDialog.saving" to "保存...",
        "myTischtennisHistory.close" to "关闭",
        "myTischtennisHistory.failed" to "那不起作用。",
        "myTischtennisHistory.loading" to "加载历史记录...",
        "myTischtennisHistory.noHistory" to "尚未执行自动更新。",
        "myTischtennisHistory.ratingsUpdated" to "评级已更新",
        "myTischtennisHistory.successful" to "成功的",
        "myTischtennisHistory.title" to "更新评级历史记录",
        "navigation.approvals" to "审批",
        "navigation.backToHome" to "返回首页",
        "navigation.billing" to "账单",
        "navigation.clickTtAccount" to "HTTV / click-TT 账户",
        "navigation.clickTtBrowser" to "HTTV / click-TT",
        "navigation.clubSettings" to "俱乐部设置",
        "navigation.clubTournaments" to "俱乐部锦标赛",
        "navigation.competitions" to "比赛",
        "navigation.dailyBusiness" to "日常事务",
        "navigation.diary" to "日记",
        "navigation.home" to "首页",
        "navigation.login" to "登录",
        "navigation.logout" to "退出登录",
        "navigation.logs" to "系统日志",
        "navigation.members" to "成员",
        "navigation.memberTransfer" to "成员转移",
        "navigation.myTischtennisAccount" to "myTischtennis账户",
        "navigation.orders" to "订单",
        "navigation.permissions" to "权限",
        "navigation.personalSettings" to "个人设置",
        "navigation.predefinedActivities" to "预定义活动",
        "navigation.register" to "注册",
        "navigation.schedule" to "赛程",
        "navigation.settings" to "设置",
        "navigation.statistics" to "训练统计",
        "navigation.teamManagement" to "团队管理",
        "navigation.tournamentParticipations" to "锦标赛参赛记录",
        "navigation.tournaments" to "锦标赛",
        "nuscoreAnalyzer.analysisComplete" to "✅ 分析完成：找到 {count} 资源",
        "nuscoreAnalyzer.analyze" to "🔍nuscore分析",
        "nuscoreAnalyzer.analyzing" to "正在分析...",
        "nuscoreAnalyzer.createLocalCopy" to "创建🏗️本地副本",
        "nuscoreAnalyzer.creating" to "🏗️ 创造...",
        "nuscoreAnalyzer.description" to "分析并下载nuscore资源供本地使用",
        "nuscoreAnalyzer.downloading" to "⬇️ 正在下载...",
        "nuscoreAnalyzer.downloadResources" to "下载资源",
        "nuscoreAnalyzer.foundResources" to "📋发现资源：",
        "nuscoreAnalyzer.log" to "日志",
        "nuscoreAnalyzer.pageLoaded" to "✅ nuscore 页面已加载",
        "nuscoreAnalyzer.startAnalysis" to "🔍开始nuscore分析...",
        "nuscoreAnalyzer.title" to "🔍 nuscore Analyzer",
        "officialTournaments.action" to "行动",
        "officialTournaments.age" to "年龄",
        "officialTournaments.ageClassCompetition" to "年龄组/比赛",
        "officialTournaments.ageClasses" to "年龄段",
        "officialTournaments.all" to "全部",
        "officialTournaments.birthDate" to "出生日期",
        "officialTournaments.checkBoxToActivate" to "启用复选框",
        "officialTournaments.competition" to "竞争者",
        "officialTournaments.competitions" to "比赛",
        "officialTournaments.competitionTypes" to "竞赛类型：",
        "officialTournaments.cutoffDate" to "生效日期：",
        "officialTournaments.date" to "日期",
        "officialTournaments.dateTime" to "日期：",
        "officialTournaments.deadlineDate" to "报名截止日期（日期）：",
        "officialTournaments.deadlineOnline" to "报名截止日期（在线）：",
        "officialTournaments.deadlines" to "报名截止日期：",
        "officialTournaments.deadlinesByAgeClass" to "每个 AK 的注册截止日期：",
        "officialTournaments.delete" to "删除",
        "officialTournaments.editTitle" to "编辑标题",
        "officialTournaments.eligible" to "有资格参加",
        "officialTournaments.entryFee" to "起始现金",
        "officialTournaments.entryFees" to "出席费：",
        "officialTournaments.events" to "发生的事情",
        "officialTournaments.finalRound" to "决赛比赛",
        "officialTournaments.hasPlayed" to "{0} 轮到他们了。",
        "officialTournaments.last12Months" to "过去 12 个月",
        "officialTournaments.last2Years" to "过去2年",
        "officialTournaments.last3Months" to "过去 3 个月",
        "officialTournaments.last6Months" to "过去 6 个月",
        "officialTournaments.markAsParticipated" to "标记为已参加",
        "officialTournaments.markAsRegistered" to "标记为已登录",
        "officialTournaments.member" to "成员",
        "officialTournaments.name" to "姓名",
        "officialTournaments.noEvents" to "尚无活动。上传 PDF 以开始使用。",
        "officialTournaments.notInterested" to "不感兴趣",
        "officialTournaments.openTo" to "开放至",
        "officialTournaments.participants" to "参加者",
        "officialTournaments.participantsPdf" to "参与者 PDF",
        "officialTournaments.participated" to "参加过",
        "officialTournaments.participations" to "参加比赛",
        "officialTournaments.pdfForSelectedMembers" to "已标记会员的 PDF",
        "officialTournaments.placement" to "放置",
        "officialTournaments.preliminaryRound" to "第一阶段：",
        "officialTournaments.previousSeason" to "上一季",
        "officialTournaments.registered" to "已登录",
        "officialTournaments.resetStatus" to "重置状态",
        "officialTournaments.results" to "结果",
        "officialTournaments.savedEvents" to "已保存的活动",
        "officialTournaments.selectMembers" to "选择会员",
        "officialTournaments.showCompetitions" to "查看比赛",
        "officialTournaments.showEvents" to "查看已保存的事件",
        "officialTournaments.showParticipants" to "查看参与者",
        "officialTournaments.showParticipations" to "查看锦标赛份额",
        "officialTournaments.showResults" to "查看结果",
        "officialTournaments.startTime" to "开始时间",
        "officialTournaments.startTimes" to "开始时间：",
        "officialTournaments.status" to "地位",
        "officialTournaments.timeRange" to "时期：",
        "officialTournaments.title" to "标题：",
        "officialTournaments.tournament" to "比赛",
        "officialTournaments.updatePlacementError" to "更新展示位置时出错",
        "officialTournaments.updateStatusError" to "更新状态失败",
        "officialTournaments.updateTitleError" to "这已无法挽救。",
        "officialTournaments.uploadError" to "上传 PDF 时出错。",
        "officialTournaments.uploadPdf" to "上传 PDF",
        "officialTournaments.venues" to "场地",
        "officialTournaments.wantsToParticipate" to "想加入",
        "orders.addOrder" to "新建订单",
        "orders.budget" to "预算",
        "orders.club" to "俱乐部",
        "orders.cost" to "费用",
        "orders.dateAutoHint" to "日期会自动设置，并且每次变更都会连同日期一起记录。",
        "orders.errorLoading" to "无法加载订单。",
        "orders.errorSaving" to "无法保存订单。",
        "orders.filterAllClubs" to "所有俱乐部",
        "orders.filterAllCompletionStates" to "所有学位",
        "orders.filterAllStatuses" to "所有状态",
        "orders.filterHandedOver" to "物品已发出",
        "orders.filterPaid" to "有薪酬的",
        "orders.globalSubtitle" to "可在此跨俱乐部查看和管理所有订单。",
        "orders.globalTitle" to "所有俱乐部的订单",
        "orders.history" to "历史",
        "orders.item" to "商品",
        "orders.itemPlaceholder" to "例如：球衣、卫衣或球拍套",
        "orders.loading" to "正在加载订单...",
        "orders.member" to "成员",
        "orders.memberTitle" to "订单：{name}",
        "orders.noOrdersGlobal" to "当前没有订单。",
        "orders.noOrdersMember" to "该成员目前还没有订单。",
        "orders.open" to "未结清",
        "orders.orderDate" to "创建时间",
        "orders.paid" to "已支付",
        "orders.paidConfirmed" to "有薪酬的",
        "orders.searchPlaceholder" to "按俱乐部、成员或商品搜索",
        "orders.showCompleted" to "显示已完成的",
        "orders.status" to "状态",
        "orders.statusArrived" to "商品已到",
        "orders.statusDate" to "最后变更",
        "orders.statusHandedOver" to "商品已发放",
        "orders.statusOrdered" to "已订购",
        "orders.statusRequested" to "希望购买",
        "orders.title" to "订单",
        "pdfGenerator.activityTimeBlock" to "活动/时间块",
        "pdfGenerator.allGames" to "所有城市",
        "pdfGenerator.alsoPlayable" to "还可以玩",
        "pdfGenerator.birthDate" to "出生日期",
        "pdfGenerator.clubLabel" to "俱乐部：",
        "pdfGenerator.competition" to "事件",
        "pdfGenerator.competitionName" to "竞争者",
        "pdfGenerator.date" to "日期：",
        "pdfGenerator.diff" to "Diff",
        "pdfGenerator.duration" to "停工前几分钟",
        "pdfGenerator.fee" to "费用",
        "pdfGenerator.generatedAt" to "生成时间：",
        "pdfGenerator.group" to "团体",
        "pdfGenerator.groupLabel" to "团体",
        "pdfGenerator.groupMatrices" to "群矩阵",
        "pdfGenerator.hallShoes" to "室内鞋（不得在地板上磨掉）",
        "pdfGenerator.hints" to "笔记：",
        "pdfGenerator.informTrainer" to "由于俱乐部希望接管报名，因此至少在比赛前一周通知教练有关参赛事宜",
        "pdfGenerator.leagueLabel" to "联赛：",
        "pdfGenerator.lineupQttr" to "(Q)TTR",
        "pdfGenerator.member" to "成员：",
        "pdfGenerator.nameFirstName" to "姓氏、名字",
        "pdfGenerator.noActivities" to "本训练日没有记录任何活动。",
        "pdfGenerator.noWhiteJersey" to "没有白色球衣",
        "pdfGenerator.officialTournament" to "官方比赛",
        "pdfGenerator.oneHourBefore" to "比赛开始前一小时到达大厅",
        "pdfGenerator.overallRanking" to "总排名（淘汰赛）",
        "pdfGenerator.periodLabel" to "报名阶段：",
        "pdfGenerator.phoneList" to "电话列表 - 活跃成员",
        "pdfGenerator.phoneNumber" to "电话号码",
        "pdfGenerator.place" to "广场",
        "pdfGenerator.placement" to "放置",
        "pdfGenerator.plannedLeagueLabel" to "计划联赛：",
        "pdfGenerator.player" to "溜冰者",
        "pdfGenerator.player1" to "玩家1",
        "pdfGenerator.player2" to "4 1/2 分钟",
        "pdfGenerator.points" to "积分",
        "pdfGenerator.recommendations" to "建议",
        "pdfGenerator.result" to "结果",
        "pdfGenerator.round" to "圆形的",
        "pdfGenerator.seasonLabel" to "赛季：",
        "pdfGenerator.sets" to "短语",
        "pdfGenerator.sportShorts" to "运动短裤（或运动裙子），最好也不是白色的",
        "pdfGenerator.startTime" to "开始时间",
        "pdfGenerator.status" to "地位",
        "pdfGenerator.teamAgeGroupLabel" to "球队年龄组：",
        "pdfGenerator.teamGenderLabel" to "球队性别：",
        "pdfGenerator.teamLineupTitle" to "球队阵容",
        "pdfGenerator.teamNameLabel" to "球队：",
        "pdfGenerator.time" to "时间：",
        "pdfGenerator.timeBlock" to "时间块",
        "pdfGenerator.tournament" to "比赛",
        "pdfGenerator.trainersPresent" to "教练们努力参加所有比赛。",
        "pdfGenerator.trainingPlan" to "培训计划",
        "pdfGenerator.venue" to "地点",
        "pdfGenerator.venues" to "场地",
        "pdfGenerator.waterBottle" to "随身携带一瓶水",
        "pendingApprovals.actions" to "行动",
        "pendingApprovals.approve" to "批准",
        "pendingApprovals.email" to "Email",
        "pendingApprovals.errorApproving" to "批准用户时出错",
        "pendingApprovals.errorLoadingRequests" to "无法加载 %<%E%s%E%> 的待处理内容",
        "pendingApprovals.errorRejecting" to "拒绝用户时出错",
        "pendingApprovals.firstName" to "名",
        "pendingApprovals.lastName" to "姓",
        "pendingApprovals.noPendingRequests" to "没有待处理的用户请求。",
        "pendingApprovals.noPermission" to "没有许可",
        "pendingApprovals.noPermissionDetails" to "只有管​​理员可以编辑会员请求。",
        "pendingApprovals.noPermissionMessage" to "您没有管理共享的权限。",
        "pendingApprovals.reject" to "解雇",
        "pendingApprovals.title" to "待处理的用户请求",
        "permissions.actions" to "行动",
        "permissions.active" to "积极的",
        "permissions.availableRoles" to "可用角色",
        "permissions.baseRole" to "基础角色",
        "permissions.cancel" to "取消",
        "permissions.clickToActivate" to "单击以激活。",
        "permissions.clickToDeactivate" to "单击以禁用",
        "permissions.clubMembers" to "俱乐部会员",
        "permissions.creator" to "创作者",
        "permissions.customize" to "定制",
        "permissions.customizeInfo" to "在这里您可以进行单独的调整。",
        "permissions.email" to "Email",
        "permissions.errorLoadingData" to "加载数据时出错",
        "permissions.errorSavingPermissions" to "保存权限时出错",
        "permissions.errorUpdatingRole" to "更新角色失败",
        "permissions.inactive" to "未选中",
        "permissions.loadingMembers" to "诚邀会员...",
        "permissions.permissionsFor" to "权限",
        "permissions.reset" to "恢复",
        "permissions.resetAll" to "全部重置",
        "permissions.role" to "角色",
        "permissions.save" to "节省",
        "permissions.status" to "地位",
        "permissions.subtitle" to "管理俱乐部会员的访问权限",
        "permissions.title" to "凭证管理",
        "predefinedActivities.addImage" to "添加图片",
        "predefinedActivities.cancel" to "取消",
        "predefinedActivities.code" to "缩写",
        "predefinedActivities.createDrawing" to "创建练习图",
        "predefinedActivities.deduplicate" to "合并重复项",
        "predefinedActivities.delete" to "删除",
        "predefinedActivities.description" to "描述",
        "predefinedActivities.duration" to "持续时间分钟",
        "predefinedActivities.durationText" to "持续时间（文本）",
        "predefinedActivities.durationTextPlaceholder" to "例如2x7",
        "predefinedActivities.editActivity" to "编辑活动",
        "predefinedActivities.editDrawing" to "编辑练习图",
        "predefinedActivities.excludeFromStats" to "从统计中排除",
        "predefinedActivities.filterAll" to "全部",
        "predefinedActivities.filterCustom" to "风俗",
        "predefinedActivities.filterStandard" to "标准活动",
        "predefinedActivities.imageHelp" to "您可以输入图像链接或上传图像：",
        "predefinedActivities.imageLink" to "图片链接（可选）",
        "predefinedActivities.imageLinkPlaceholder" to "例如https://example.com/bild.jpg 或 /api/predefined-activities/:id/image/:imageId",
        "predefinedActivities.merge" to "合并",
        "predefinedActivities.min" to "min",
        "predefinedActivities.name" to "姓名",
        "predefinedActivities.new" to "新的",
        "predefinedActivities.newActivity" to "新活动",
        "predefinedActivities.orUploadImage" to "或上传图片：",
        "predefinedActivities.reload" to "重新加载",
        "predefinedActivities.searchPlaceholder" to "搜索缩写（例如“as vh us”或“vh as us”）...",
        "predefinedActivities.selectSource" to "选择来源",
        "predefinedActivities.selectTarget" to "选择目的地",
        "predefinedActivities.title" to "预定义活动",
        "predefinedActivities.upload" to "上传",
        "predefinedActivities.uploadAfterSave" to "保存后上传",
        "predefinedActivities.uploadedImages" to "上传的视频：",
        "predefinedActivities.uploadNote" to "注意：在保存活动之前，不会上传图像。",
        "privacy.clubData" to "俱乐部/活动数据",
        "privacy.consent" to "基于同意的操作",
        "privacy.cookies" to "Cookie/本地存储",
        "privacy.dataCategories" to "个人数据的类别",
        "privacy.logData" to "日志文件",
        "privacy.memberData" to "会员详情",
        "privacy.myTischtennisData" to "我的网球数据",
        "privacy.purposes" to "处理的目的和法律依据",
        "privacy.recipients" to "接受者",
        "privacy.registrationData" to "注册/个人资料数据",
        "privacy.responsible" to "数据控制者",
        "privacy.title" to "隐私政策",
        "privacy.tournamentData" to "赛事数据",
        "privacy.trainingData" to "训练数据",
        "privacy.usage" to "训练日记的使用",
        "privacy.usageData" to "使用数据",
        "privacy.website" to "网站的准备",
        "quickAddMember.birthDate" to "出生日期（可选）",
        "quickAddMember.cancel" to "取消",
        "quickAddMember.createAndAdd" to "创建和添加新的",
        "quickAddMember.firstName" to "名",
        "quickAddMember.gender" to "性别",
        "quickAddMember.lastName" to "姓氏（可选）",
        "quickAddMember.pleaseSelect" to "请选择",
        "quickAddMember.title" to "添加新成员",
        "schedule.activeSelection" to "主动选择",
        "schedule.addressLabel" to "地址",
        "schedule.adultSchedule" to "成人时间表",
        "schedule.ageClass" to "年龄组",
        "schedule.allLeagueMatches" to "所有比赛",
        "schedule.balls" to "球",
        "schedule.cancel" to "取消",
        "schedule.cityLabel" to "邮政编码/城市",
        "schedule.code" to "Code",
        "schedule.completedShort" to "完全的",
        "schedule.copyCode" to "复制代码",
        "schedule.copyGuestPin" to "复制 PIN 码",
        "schedule.copyHomePin" to "复制家庭 PIN 码",
        "schedule.date" to "日期",
        "schedule.downloadPDF" to "下载PDF",
        "schedule.errorCopying" to "复制时出错",
        "schedule.errorImportingCSV" to "导入 CSV 文件失败",
        "schedule.errorLoadingAdultSchedule" to "无法加载成人时间表",
        "schedule.errorLoadingGallery" to "无法加载图库。",
        "schedule.errorLoadingMatches" to "无法加载匹配项",
        "schedule.errorLoadingMembers" to "加载会员列表失败。",
        "schedule.errorLoadingOverallSchedule" to "无法加载总体时间表",
        "schedule.errorLoadingTable" to "无法从 myTischtennis 加载联赛表数据",
        "schedule.errorLoadingTeams" to "无法加载团队",
        "schedule.errorSavingPlayerSelection" to "无法保存玩家选择",
        "schedule.fetchDataFailed" to "无法获取团队数据。",
        "schedule.fetchingTeamData" to "正在获取…",
        "schedule.fetchStartFailed" to "无法开始提取。",
        "schedule.fetchTeamData" to "获取时间表和结果",
        "schedule.fetchTimedOut" to "获取数据时超时。",
        "schedule.gallery" to "会员图库",
        "schedule.galleryLoading" to "正在加载图库...",
        "schedule.galleryTitle" to "会员图库 - 单击图像以标记为就绪",
        "schedule.gamesFor" to "匹配于",
        "schedule.guestPin" to "离开密码",
        "schedule.guestTeam" to "客队",
        "schedule.homePin" to "家庭密码",
        "schedule.homeTeam" to "主队",
        "schedule.imageSize" to "图片尺寸",
        "schedule.importSchedule" to "导入时间表",
        "schedule.leagueTable" to "联赛表",
        "schedule.loadingMembers" to "正在加载会员...",
        "schedule.locationDialogTitle" to "游戏室",
        "schedule.locationInfo" to "地点",
        "schedule.locationName" to "游戏室",
        "schedule.matches" to "比赛",
        "schedule.matchLabel" to "游戏",
        "schedule.matchOverviewDescription" to "控制当前所选联赛的哪些比赛显示在赛程表中。",
        "schedule.matchOverviewTitle" to "比赛概览",
        "schedule.nextMatch" to "下一场比赛",
        "schedule.noActiveMembers" to "未找到活跃会员",
        "schedule.noGames" to "没有可用的匹配项",
        "schedule.noLeagueForTeam" to "没有为该球队分配联赛。请先分配一个联赛。",
        "schedule.noMatchesForPDF" to "找不到生成 PDF 的匹配项。",
        "schedule.noMatchingTeams" to "没有与当前搜索匹配的球队。",
        "schedule.noMembersWithImages" to "未找到有图片的会员。",
        "schedule.noSelectionMessage" to "从左侧选择总体赛程表、成人赛程表或团队赛程表。",
        "schedule.noSelectionTitle" to "还没有主动选择",
        "schedule.noTableData" to "无可用表格数据",
        "schedule.noTeamsFound" to "没有找到本赛季的球队",
        "schedule.openMatchReport" to "打开比赛报告",
        "schedule.otherTeamMatches" to "其他团队",
        "schedule.overallSchedule" to "总体日程",
        "schedule.ownTeamMatches" to "自己的团队",
        "schedule.pendingShort" to "打开",
        "schedule.planned" to "计划",
        "schedule.played" to "玩过",
        "schedule.player" to "玩家",
        "schedule.playerSelection" to "球员选择",
        "schedule.playerSelectionSaved" to "已保存玩家选择",
        "schedule.pleaseSelectGame" to "请先选择一个匹配项",
        "schedule.points" to "分",
        "schedule.position" to "位置",
        "schedule.ready" to "准备好",
        "schedule.refreshTable" to "刷新表",
        "schedule.result" to "结果",
        "schedule.save" to "节省",
        "schedule.scheduleImportSuccess" to "计划导入成功。",
        "schedule.schedulePDF" to "时间表.pdf",
        "schedule.scheduleTab" to "日程",
        "schedule.searchTeams" to "搜索球队或联赛",
        "schedule.selection" to "选择",
        "schedule.selectOtherTeam" to "选择其他队伍",
        "schedule.selectSpecificLeague" to "请选择一个特定的联赛来加载表格。",
        "schedule.sets" to "套",
        "schedule.showLocation" to "查看比赛场地",
        "schedule.subtitle" to "选择球队、查看赛程并随时查看联赛表。",
        "schedule.tableDataLoaded" to "从 myTischtennis 成功加载联赛表数据。",
        "schedule.tableLoading" to "正在加载表...",
        "schedule.tableTab" to "桌子",
        "schedule.team" to "Team",
        "schedule.teamDataFetched" to "团队数据更新成功。",
        "schedule.teamDataFetchedDetails" to "团队：{team}\n已处理的记录：{count}",
        "schedule.teams" to "Teams",
        "schedule.time" to "时间",
        "schedule.title" to "时间表",
        "schedule.vs" to "vs",
        "schedule.workspaceScheduleDescription" to "{matches} 匹配，{completed} 已完成，{pending} 开放。",
        "schedule.workspaceTableDescription" to "当前加载的 {count} 表行。",
        "seasonSelector.addSeason" to "添加新季节",
        "seasonSelector.alreadyExists" to "这个季节已经存在了！",
        "seasonSelector.cancel" to "取消",
        "seasonSelector.create" to "创造",
        "seasonSelector.errorCreating" to "创建季节时出错",
        "seasonSelector.errorLoading" to "加载季节时出错",
        "seasonSelector.hint" to "注意",
        "seasonSelector.label" to "季节：",
        "seasonSelector.loading" to "加载中...",
        "seasonSelector.newSeason" to "创造新赛季",
        "seasonSelector.placeholder" to "例如2023/2024",
        "seasonSelector.selectSeason" to "选择季节",
        "settings.language" to "语言",
        "settings.languageChanged" to "语言已成功更改",
        "settings.languageDescription" to "选择您偏好的应用程序语言",
        "settings.personalSettings" to "个人设置",
        "settings.selectLanguage" to "选择语言",
        "settings.title" to "设置",
        "tagHistory.noHistory" to "没有可用的标签历史记录",
        "tagHistory.selectTags" to "选择标签",
        "tagHistory.title" to "标签：打字板",
        "teamManagement.activeTeam" to "活跃的团队",
        "teamManagement.addPlanningTeam" to "添加策划团队",
        "teamManagement.allMembersAssigned" to "目前所有成员均已分配完毕。",
        "teamManagement.assignLeagueBeforeDocuments" to "请先为球队分配联赛，以便处理文件。",
        "teamManagement.assignLeagueBeforeParsing" to "请先为球队分配联赛以解析PDF文件。",
        "teamManagement.assignMemberToTeam" to "添加到团队",
        "teamManagement.association" to "协会",
        "teamManagement.asyncJobStartFailed" to "无法启动异步作业。",
        "teamManagement.autoFetchEnabled" to "启用自动数据检索",
        "teamManagement.automaticJobs" to "自动作业",
        "teamManagement.autoSaved" to "自动保存",
        "teamManagement.autoSaveError" to "自动保存失败",
        "teamManagement.availableLineupMembers" to "可用球员",
        "teamManagement.basicSettings" to "基本设置",
        "teamManagement.basicSettingsIntro" to "以更平静的方式审视和调整球队名称和联赛。",
        "teamManagement.change" to "改变",
        "teamManagement.clearFields" to "清除字段",
        "teamManagement.codeList" to "代码表",
        "teamManagement.configurationStatus" to "配置状态",
        "teamManagement.configureLeagueDetails" to "协会：{association}\n季节：{season}\n联赛：{league}\n群组 ID：{groupId}\n\n您想在数据库中配置该联赛吗？这使得自动表数据检索成为可能。",
        "teamManagement.configureLeagueTitle" to "配置联赛？",
        "teamManagement.createAndEdit" to "创建和编辑",
        "teamManagement.created" to "已创建",
        "teamManagement.createNewTeam" to "创建新团队",
        "teamManagement.dataFetchFailed" to "无法获取数据。",
        "teamManagement.delete" to "删除",
        "teamManagement.deleteTeamConfirm" to "您确实要删除俱乐部队伍“{name}”吗？",
        "teamManagement.deleteTeamTitle" to "删除俱乐部球队",
        "teamManagement.documentAvailable" to "可用的",
        "teamManagement.documentMissing" to "丢失的",
        "teamManagement.documentNotFound" to "无法找到所选文档。",
        "teamManagement.documentParsedSummary" to "{label} 上传并解析成功。\n\n找到匹配项：{matchesFound}\n创建的新匹配：{created}\n比赛更新：{updated}",
        "teamManagement.documents" to "文件",
        "teamManagement.documentsIntro" to "需要时上传、审查和重新解析代码列表和 PIN 列表。",
        "teamManagement.documentUploaded" to "{label}“{fileName}”已成功上传。",
        "teamManagement.edit" to "编辑",
        "teamManagement.editTeam" to "编辑团队",
        "teamManagement.eligibility" to "参赛资格",
        "teamManagement.eligibilityAdultRelease" to "允许参加成人组",
        "teamManagement.eligibilityAdultReleaseAndReserve" to "允许参加成人组 + 替补",
        "teamManagement.eligibilityAdultReserve" to "成人组替补",
        "teamManagement.eligibilityRegular" to "常规",
        "teamManagement.enterUrlForAutoConfig" to "输入 myTischtennis URL 以进行自动配置",
        "teamManagement.error" to "错误",
        "teamManagement.errorConfiguringLeague" to "无法配置联赛。",
        "teamManagement.errorConfiguringTeam" to "无法配置团队。",
        "teamManagement.errorDeletingTeam" to "删除俱乐部队伍失败。",
        "teamManagement.errorLoadingPdf" to "无法加载 PDF。",
        "teamManagement.errorLoadingStats" to "无法加载统计信息。",
        "teamManagement.errorParsingPdf" to "无法解析 PDF 文件",
        "teamManagement.errorParsingUrl" to "The URL could not be parsed.请检查格式。",
        "teamManagement.errorsCount" to "错误：{count}",
        "teamManagement.errorUploadingDocument" to "无法上传和解析文件。",
        "teamManagement.exportLineupPdf" to "导出阵容为 PDF",
        "teamManagement.fetched" to "取来的",
        "teamManagement.fetchTimedOut" to "获取数据时超时（异步作业花费的时间太长）。",
        "teamManagement.fetchTimeoutShort" to "获取数据时超时。",
        "teamManagement.fileTooLarge" to "{label} 不得超过 10 MB。",
        "teamManagement.fileTooLargeTitle" to "文件太大",
        "teamManagement.filterAll" to "全部",
        "teamManagement.filterConfigured" to "已配置",
        "teamManagement.filterNeedsAttention" to "需要审查",
        "teamManagement.filterNoLeague" to "没有联赛",
        "teamManagement.firstHalf" to "上半程",
        "teamManagement.firstHalfFull" to "上半程（7月 - 12月）",
        "teamManagement.fullyConfigured" to "配置齐全",
        "teamManagement.groupId" to "组号",
        "teamManagement.groupName" to "团体名称",
        "teamManagement.invalidFileExtension" to "{label} 必须具有以下扩展名之一：{extensions}。",
        "teamManagement.invalidFileTypeTitle" to "文件类型无效",
        "teamManagement.invalidMimeType" to "{label} 具有意外的 MIME 类型：{type}。",
        "teamManagement.lastRun" to "最后一次运行",
        "teamManagement.lastUpdated" to "最后更新",
        "teamManagement.latestUpload" to "最后上传：{date}",
        "teamManagement.league" to "联盟",
        "teamManagement.leagueConfiguredDetails" to "联赛：{league}\n季节：{season}\n协会：{association}\n群组 ID：{groupId}\n\n现在可以自动检索表数据。",
        "teamManagement.leagueConfiguredSuccess" to "联赛配置成功。现在可以自动检索表数据。",
        "teamManagement.leagueFieldRequired" to "请选择联赛级别并保存。",
        "teamManagement.lineupEmpty" to "这支队伍还没有报名任何球员。",
        "teamManagement.lineupPdfEmpty" to "阵容中没有球员，无法生成 PDF。",
        "teamManagement.lineupPdfFilePrefix" to "阵容",
        "teamManagement.lineupProposal" to "按 QTTR 的队伍报名",
        "teamManagement.lineupSaved" to "球队阵容已保存。",
        "teamManagement.lineupSaveError" to "无法保存队伍报名。",
        "teamManagement.lineupUnsavedChanges" to "球队阵容有未保存的变化。",
        "teamManagement.lineupValidationTooLargeGap" to "{higher} 比 {lower} 高出超过 30 个 QTTR 积分。请更正这个顺序。",
        "teamManagement.loadingStats" to "正在加载统计数据...",
        "teamManagement.manualFetch" to "拿来",
        "teamManagement.markAsInterested" to "标记为感兴趣",
        "teamManagement.matchesSummary" to "找到匹配项：{matchesFound}\n创建的新匹配：{created}\n比赛更新：{updated}",
        "teamManagement.matchResults" to "比赛结果",
        "teamManagement.missingConfigSummary" to "缺少的信息：",
        "teamManagement.missingItems" to "缺失：{items}",
        "teamManagement.missingLeagueForTeam" to "没有为所选球队提供联赛。",
        "teamManagement.moreErrors" to "...以及 {count} 更多",
        "teamManagement.myTischtennis" to "我的网球",
        "teamManagement.myTischtennisIntro" to "粘贴 URL、检查配置并在需要时手动获取数据。",
        "teamManagement.mytischtennisLoginRequired" to "需要登录 myTischtennis",
        "teamManagement.myTischtennisUrlPlaceholder" to "我的Tischtennis 网址...",
        "teamManagement.myTischtennisUrlRequired" to "粘贴并解析 MyTischtennis 链接以获取球队 ID 和联赛数据。",
        "teamManagement.never" to "绝不",
        "teamManagement.newTeam" to "新团队",
        "teamManagement.noAssignment" to "没有作业",
        "teamManagement.noAutomaticUpdate" to "还没有自动更新",
        "teamManagement.noDocumentUploadYet" to "尚未上传任何文档。",
        "teamManagement.noIssues" to "没有开放的配置问题。",
        "teamManagement.noLeague" to "无联赛",
        "teamManagement.noMatchesFoundDetails" to "注意：未检测到匹配项。\n文档中的行：{lines}",
        "teamManagement.noMatchesFoundTitle" to "未找到匹配项",
        "teamManagement.noMatchingTeams" to "没有团队与当前搜索或过滤器匹配。",
        "teamManagement.noMembersInPool" to "未找到匹配的成员。",
        "teamManagement.noPlannedLeague" to "没有预定的联赛",
        "teamManagement.noPlayerStats" to "没有出场记录。",
        "teamManagement.notConfigured" to "未配置",
        "teamManagement.notCreated" to "未创建",
        "teamManagement.noTeamsYet" to "还没有队伍。创建你的第一个团队。",
        "teamManagement.openDocument" to "打开",
        "teamManagement.openInWorkspace" to "打开即可编辑",
        "teamManagement.parseDocument" to "再次解析",
        "teamManagement.parseUrlAction" to "检查网址",
        "teamManagement.partiallyConfigured" to "部分配置",
        "teamManagement.pdfFileNotFound" to "找不到 PDF 文件。",
        "teamManagement.pinList" to "密码列表",
        "teamManagement.plannedLeague" to "计划联赛",
        "teamManagement.plannedLeagueHint" to "选填。与已报名联赛（MyTischtennis）无关。",
        "teamManagement.plannedLeaguePlaceholder" to "例如：地区联赛，下次报名后 …",
        "teamManagement.planningSubtitle" to "将成员分配给预定的团队、设置顺序并查看未完成的任务。",
        "teamManagement.planningTitle" to "团队规划",
        "teamManagement.player" to "玩家",
        "teamManagement.playersPoolSubtitle" to "所有对游戏感兴趣的活跃会员",
        "teamManagement.playerStats" to "出场次数",
        "teamManagement.playerStatsIntro" to "快速概述该球队在本赛季的表现。",
        "teamManagement.playersWantToPlay" to "我们想玩。",
        "teamManagement.qttr" to "(Q)TTR 评级",
        "teamManagement.ratingUpdates" to "评级更新",
        "teamManagement.refreshStats" to "刷新",
        "teamManagement.reuploadFile" to "请重新上传文件并重试。",
        "teamManagement.searchMembers" to "搜索会员",
        "teamManagement.searchTeams" to "搜寻队",
        "teamManagement.season" to "季节",
        "teamManagement.seasonFull" to "全赛季（7 月 1 日起）",
        "teamManagement.seasonUnknown" to "未知",
        "teamManagement.secondHalf" to "下半程",
        "teamManagement.secondHalfFull" to "下半程（1月1日起）",
        "teamManagement.selectedLineup" to "已报名球员",
        "teamManagement.selectMember" to "选择会员",
        "teamManagement.selectTeam" to "选择团队",
        "teamManagement.selectTeamFirst" to "请先选择队伍",
        "teamManagement.selectTeamForConfiguration" to "要激活 myTischtennis 配置，您必须首先从列表中选择一个团队。",
        "teamManagement.selectTeamTitle" to "选择团队",
        "teamManagement.showCodeList" to "显示代码列表",
        "teamManagement.showPinList" to "显示 PIN 列表",
        "teamManagement.sortFirstLast" to "排序： 名字 姓氏",
        "teamManagement.sortLastFirst" to "排序： 姓 名",
        "teamManagement.status" to "地位",
        "teamManagement.subtitle" to "在一个地方选择球队、查看配置并维护联赛数据。",
        "teamManagement.successful" to "成功的",
        "teamManagement.tableUpdateLabel" to "表更新：",
        "teamManagement.tableUrlDetected" to "检测到表 URL",
        "teamManagement.team" to "Team",
        "teamManagement.teamAgeGroup" to "年龄组",
        "teamManagement.teamConfiguredDetails" to "联赛：{league}\n季节：{season}\n自动数据检索现已激活。",
        "teamManagement.teamConfiguredSuccess" to "团队配置成功。自动数据检索现已激活。",
        "teamManagement.teamDataFetched" to "团队数据已成功获取。",
        "teamManagement.teamDataFetchedDetails" to "团队：{team}\n获取的记录：{count}",
        "teamManagement.teamGender" to "性别",
        "teamManagement.teamGenderFemale" to "女性",
        "teamManagement.teamGenderOpen" to "打开",
        "teamManagement.teamHasNoLeague" to "该球队未分配到联赛。",
        "teamManagement.teamId" to "团队ID",
        "teamManagement.teamName" to "队名",
        "teamManagement.teamNamePlaceholder" to "例如男 1、女 2",
        "teamManagement.teams" to "Teams",
        "teamManagement.title" to "团队管理",
        "teamManagement.unassignedMembers" to "尚未分配",
        "teamManagement.unassignedMembersSubtitle" to "没有团队分配的成员",
        "teamManagement.unknown" to "未知",
        "teamManagement.unknownTeam" to "未知团队",
        "teamManagement.updated" to "已更新",
        "teamManagement.uploadNewVersion" to "上传新版本",
        "tournament.apply" to "应用更改",
        "tournaments.action" to "行动",
        "tournaments.add" to "添加",
        "tournaments.addClass" to "添加班级",
        "tournaments.addClubMember" to "添加俱乐部会员",
        "tournaments.addExternalParticipant" to "添加外部参与者",
        "tournaments.addPairing" to "添加配对",
        "tournaments.addPoolRule" to "添加分组规则",
        "tournaments.address" to "地址",
        "tournaments.adjustTournamentSearch" to "调整搜索词或创建新的锦标赛。",
        "tournaments.advancersPerGroup" to "每组发起人",
        "tournaments.allClasses" to "所有课程",
        "tournaments.allDataComplete" to "所有参赛者数据已完整。",
        "tournaments.allDataCompleteTop3" to "前3名的所有数据已完整。",
        "tournaments.apply" to "应用更改",
        "tournaments.assignmentReviewTitle" to "{count} 参与者需要一个选择：",
        "tournaments.atLeastOnePoolRule" to "请至少为 {label} 添加一条分组规则（例如名次 1,2）。",
        "tournaments.autoAssignableParticipantsHint" to "其中 {count} 可以自动分配。",
        "tournaments.autoAssignEligible" to "自动分配",
        "tournaments.autoAssignEligibleDone" to "{count} 参与者被自动分配。",
        "tournaments.autoAssignEligibleNone" to "目前没有参与者具有单一的自动班级分配。",
        "tournaments.autoAssignEligiblePartial" to "{successCount} 参与者被自动分配，{errorCount} 失败。",
        "tournaments.birthdate" to "出生日期",
        "tournaments.cancel" to "取消",
        "tournaments.class" to "班级",
        "tournaments.classes" to "课程",
        "tournaments.className" to "班级名称",
        "tournaments.cleanupOrphanedMatches" to "清理孤立游戏",
        "tournaments.club" to "协会",
        "tournaments.clubMember" to "（俱乐部会员）",
        "tournaments.conflictSuggestionLabel" to "建议：",
        "tournaments.correctMatch" to "更正",
        "tournaments.create" to "创造",
        "tournaments.createFinalFromIntermediate" to "从中间轮创建决赛轮",
        "tournaments.createFinalFromPreliminary" to "从预赛创建决赛轮",
        "tournaments.createGroupMatches" to "创建小组赛",
        "tournaments.createGroups" to "谁可以创建群组",
        "tournaments.createIntermediateFromPreliminary" to "从预赛创建中间轮",
        "tournaments.createMatches" to "设置匹配项",
        "tournaments.createSuggestedPairings" to "创建配对",
        "tournaments.currentClass" to "活跃班",
        "tournaments.dataNotRecorded" to "尚未录入",
        "tournaments.date" to "日期",
        "tournaments.delete" to "删除",
        "tournaments.deleteClassConfirm" to "确定要删除组别“{name}”吗？",
        "tournaments.deleteClassParticipantsDetached" to "所有参赛者将从该组别中移除。",
        "tournaments.deleteClassTitle" to "删除组别",
        "tournaments.deleteExistingPairingsConfirm" to "现有配对将被删除。是否继续？",
        "tournaments.deleteKORound" to "昏死",
        "tournaments.diff" to "Diff",
        "tournaments.distributeTables" to "分配空闲球台",
        "tournaments.distributeTablesResult" to "球台分配",
        "tournaments.doubles" to "双倍的",
        "tournaments.doublesPairingHint" to "{count} 本双打班的参赛者仍需要一名搭档。",
        "tournaments.doublesTournament" to "双打比赛",
        "tournaments.doublesTournamentHint" to "默认情况下，将所有现有类切换为双打并创建新类作为双打。",
        "tournaments.edit" to "编辑",
        "tournaments.eligibleClassesHint" to "适合: {classes}",
        "tournaments.email" to "电子邮件",
        "tournaments.encounter" to "会议",
        "tournaments.enterClassName" to "请输入组别名称。",
        "tournaments.enterExternalParticipantName" to "请至少输入名字和姓氏。",
        "tournaments.enterMiniLocation" to "请输入地点。",
        "tournaments.errorCreatingGroups" to "创建组时出错。",
        "tournaments.errorCreatingTournament" to "创建锦标赛时出错。",
        "tournaments.errorDistributingTables" to "分配球台时出错。",
        "tournaments.errorGeneratingPdf" to "生成 PDF 时出错。",
        "tournaments.errorMergingClasses" to "合并类失败。",
        "tournaments.errorMoreSeededThanUnseeded" to "下注的人数多于非种子选手。无法创建随机配对。",
        "tournaments.errorResettingKORound" to "重置淘汰赛时出错。",
        "tournaments.errorUpdatingTournament" to "更新锦标赛时出错。",
        "tournaments.exportPDF" to "导出PDF",
        "tournaments.external" to "外部的",
        "tournaments.finalPlacements" to "最终安置",
        "tournaments.finalRound" to "决赛轮",
        "tournaments.finishMatch" to "结束比赛",
        "tournaments.firstName" to "名",
        "tournaments.forForwarding" to "用于转发",
        "tournaments.gaveUp" to "已放置",
        "tournaments.gaveUpHint" to "玩家已投降 – 所有比赛均计为对手 (11:0) 或双方均为 0:0。",
        "tournaments.genderAll" to "全部",
        "tournaments.genderMixed" to "Mixed",
        "tournaments.generatingPDF" to "正在生成PDF...",
        "tournaments.group" to "团体",
        "tournaments.groupMatches" to "小组间比赛",
        "tournaments.groupNumber" to "团体",
        "tournaments.groupPlacements" to "团体安置",
        "tournaments.groupsLabel" to "分组",
        "tournaments.groupsOverview" to "团体概览",
        "tournaments.groupsPerClass" to "泳池积分榜",
        "tournaments.groupsPerClassHint" to "对于每个班级，输入组数（0 = 该班级没有组）：",
        "tournaments.index" to "Index",
        "tournaments.intermediateRound" to "中间轮（第2轮）",
        "tournaments.internalStatsAbsoluteRank" to "总分排名",
        "tournaments.internalStatsAgeFilter" to "年龄与性别（单打）",
        "tournaments.internalStatsAgeFilterAll" to "全部年龄组",
        "tournaments.internalStatsAgeFilterNone" to "未选择年龄组",
        "tournaments.internalStatsAgeNoClass" to "未分配级别",
        "tournaments.internalStatsAgeSelectAll" to "全选",
        "tournaments.internalStatsAgeSelectNone" to "全不选",
        "tournaments.internalStatsAverageRank" to "平均排名（每场锦标赛）",
        "tournaments.internalStatsAvgPoints" to "平均",
        "tournaments.internalStatsEmpty" to "所选期间没有可统计的数据。",
        "tournaments.internalStatsExportPdf" to "导出 PDF",
        "tournaments.internalStatsFilterAgeBands" to "年龄段",
        "tournaments.internalStatsFilterGenderColumn" to "性别",
        "tournaments.internalStatsGenderScopeAll" to "全部",
        "tournaments.internalStatsGenderScopeGirls" to "仅限女孩",
        "tournaments.internalStatsLast12Months" to "过去 12 个月",
        "tournaments.internalStatsLast3Months" to "过去 3 个月",
        "tournaments.internalStatsLast6Months" to "过去 6 个月",
        "tournaments.internalStatsOpenButton" to "打开单打统计数据",
        "tournaments.internalStatsPeriod" to "时间范围",
        "tournaments.internalStatsPoints" to "合计",
        "tournaments.internalStatsPointsExplain" to "计分：每组用百分比表示名次（有 N 人排名：第 1 名 100%，最后一名 0%，中间线性；同名次同分）。N 为该组所有有排名者（含嘉宾）。仅 1 人时记 100%。进入淘汰赛者获得该级别最高小组值加 1，之后每赢一场淘汰赛再加 1。仅统计俱乐部成员单打。",
        "tournaments.internalStatsTitle" to "内部锦标赛统计（单打）",
        "tournaments.internalStatsTournamentsInPeriod" to "该期间共 {count} 场锦标赛（不含迷你锦标赛）。",
        "tournaments.internalStatsTtAdult" to "成人组",
        "tournaments.internalTournaments" to "内部锦标赛",
        "tournaments.knockoutLabel" to "KO",
        "tournaments.koRound" to "淘汰赛",
        "tournaments.lastName" to "姓",
        "tournaments.livePosition" to "现场座位",
        "tournaments.loadFromTraining" to "训练日负荷",
        "tournaments.markMatchLive" to "标记为进行中",
        "tournaments.maxGroupSize" to "最大聚会人数",
        "tournaments.mergeClasses" to "合并班级（共同小组阶段）",
        "tournaments.mergeDistribute" to "将球员从 A 分配到所有组（从 B 开始）",
        "tournaments.mergeSingleGroup" to "A组中的所有玩家（B组）",
        "tournaments.minBirthYear" to "年或以后出生",
        "tournaments.miniChampionshipLocation" to "地点",
        "tournaments.miniChampionships" to "迷你锦标赛",
        "tournaments.miniChampionshipYear" to "年",
        "tournaments.miniChampionshipYearHint" to "12 = 今年 12 或 13 岁，10 = 10 或 11，8 = 9 岁及以下",
        "tournaments.minimumParticipantsForPairings" to "配对至少需要 2 名参赛者。",
        "tournaments.missingDataPDF" to "缺失数据导出为PDF",
        "tournaments.missingDataPDFSubtitle" to "请向参赛者收集缺失数据（标记为____）并在此记录。",
        "tournaments.missingDataPDFSubtitleTop3" to "请收集前3名的缺失数据（标记为____）并在此记录。",
        "tournaments.missingDataPDFTitle" to "参赛者缺失数据 – 迷你锦标赛",
        "tournaments.missingDataPDFTitleTop3" to "缺失数据 – 前3名迷你锦标赛",
        "tournaments.name" to "姓名",
        "tournaments.newMiniChampionship" to "新迷你锦标赛",
        "tournaments.setShort" to "局",
        "tournaments.newTournament" to "添加新锦标赛",
        "tournaments.noAssignableMatches" to "没有两位选手都空闲的比赛。",
        "tournaments.noClassesYet" to "还没有可用的课程。添加一个新类。",
        "tournaments.noEligibleClass" to "未找到合适的组别。",
        "tournaments.noFreeTables" to "没有可用的空闲球台。",
        "tournaments.noMatchingTournamentsTitle" to "没有匹配的锦标赛",
        "tournaments.noOrphanedMatchesFound" to "未找到孤立比赛。",
        "tournaments.noPlacementsYet" to "尚无可用的展示位置。",
        "tournaments.noPlayerDataAvailable" to "没有可用的球员数据",
        "tournaments.noPoolRulesYet12" to "还没有规则。示例：第1和第2名 -> 第2轮上层小组。",
        "tournaments.noPoolRulesYetFinal" to "还没有规则。示例：第1和第2名 -> 决赛轮。",
        "tournaments.noTop3Yet" to "前3名尚未确定。",
        "tournaments.noTournamentDate" to "没有赛事日期。",
        "tournaments.noTournamentsCreatedYet" to "尚未创建任何锦标赛。",
        "tournaments.noTrainingOnDate" to "未找到 {date} 的训练。",
        "tournaments.noTrainingParticipants" to "在该日期的训练中未找到参赛者。",
        "tournaments.noValidTrainingParticipants" to "在该日期的训练中未找到有效参赛者。",
        "tournaments.numberOfGroups" to "组数",
        "tournaments.numberOfTables" to "球台数量",
        "tournaments.openTournaments" to "公开赛",
        "tournaments.optional" to "optional",
        "tournaments.orphanedMatchesRemoved" to "已移除 {count} 场孤立比赛。",
        "tournaments.outOfCompetition" to "A 选手未参加比赛",
        "tournaments.page" to "页",
        "tournaments.pairingAlreadyExists" to "该配对已存在。",
        "tournaments.pairings" to "双重配对",
        "tournaments.pairingsCreatedWithErrors" to "已创建 {successCount} 个配对，错误 {errorCount} 个。",
        "tournaments.participantConflicts" to "冲突",
        "tournaments.participantNotFound" to "未找到参赛者。",
        "tournaments.participants" to "参加者",
        "tournaments.participantsNeedClassAssignment" to "{count} 参与者尚未分配到班级。这些应该首先分配。",
        "tournaments.phone" to "电话",
        "tournaments.placementsPendingFinals" to "一旦存在多个小组或最后一轮，就会出现最终排名。",
        "tournaments.placementsPendingGroups" to "一旦存在小组比赛，就会出现小组排名。",
        "tournaments.placementsPendingNoGroups" to "一旦小组赛或决赛结束，排名就会出现在此处。",
        "tournaments.placementsPendingSelectedClass" to "当前所选班级还没有排名。",
        "tournaments.placementsPendingTitle" to "尚未提供位置",
        "tournaments.placesFromEachGroup" to "每组名次（例如 1,2）",
        "tournaments.player" to "溜冰者",
        "tournaments.playerOne" to "选手 1",
        "tournaments.playerTwo" to "选手 2",
        "tournaments.playInGroups" to "分组玩耍",
        "tournaments.playThirdPlace" to "进行三四名决赛",
        "tournaments.pleaseEnterDate" to "请输入日期",
        "tournaments.pleaseSelectParticipant" to "请选择一名学生。",
        "tournaments.points" to "积分",
        "tournaments.pointsRatio" to "游戏点数",
        "tournaments.poolRuleLabel" to "规则 {number}",
        "tournaments.poolRulePlacesHelp" to "示例：1 或 1,2",
        "tournaments.poolRulePlacesLabel" to "哪些名额提前？",
        "tournaments.poolRulePreview" to "从每组中，将 {places} 提前到 {target}。",
        "tournaments.poolRuleQuickExamples" to "简单示例：",
        "tournaments.poolRuleSummary" to "地点 {places} 前往 {target}",
        "tournaments.poolRuleTargetGroupsDetailed" to "{count} 目标群体",
        "tournaments.poolRuleTargetKnockout" to "淘汰支架",
        "tournaments.poolRuleTargetLabel" to "这些地方都去哪儿了？",
        "tournaments.position" to "广场",
        "tournaments.problemConfigDescription" to "检查日期、姓名和获胜组数。",
        "tournaments.problemConfigTitle" to "配置不完整",
        "tournaments.problemConflictsDescription" to "检查无效的类、缺失的数据或不明确的作业。",
        "tournaments.problemConflictsTitle" to "{count} 有冲突的参与者",
        "tournaments.problemDoublesAutoDescription" to "公开双打组可以立即自动配对。",
        "tournaments.problemDoublesDescription" to "一个或多个双打班级仍需要搭档作业。",
        "tournaments.problemDoublesTitle" to "{count} 公开双打搭档",
        "tournaments.problemGroupMatchesDescription" to "小组已准备就绪，但比赛尚未创建。",
        "tournaments.problemGroupMatchesTitle" to "小组赛尚未产生",
        "tournaments.problemGroupsMissingDescription" to "小组赛需要先创建小组。",
        "tournaments.problemGroupsMissingTitle" to "尚未创建群组",
        "tournaments.problemKnockoutReadyDescription" to "小组赛已经结束，现在可以产生最后一轮比赛了。",
        "tournaments.problemKnockoutReadyTitle" to "淘汰赛可以开始了",
        "tournaments.problemUnassignedAutoDescription" to "其中 {count} 可以立即自动分配。",
        "tournaments.problemUnassignedDescription" to "这些参与者仍然需要手动课堂作业。",
        "tournaments.problemUnassignedTitle" to "{count} 没有上课的参与者",
        "tournaments.promotionRule12" to "晋级：预赛 → 中间轮 (1→2)",
        "tournaments.promotionRuleDescription12" to "确定每个预赛组的哪些名额晋级到中间轮。",
        "tournaments.promotionRuleDescriptionFinalGroups" to "定义上一轮的哪些名次晋级到决赛组。",
        "tournaments.promotionRuleDescriptionFinalKnockout" to "定义上一轮的哪些名次晋级淘汰赛。",
        "tournaments.promotionRuleFinal" to "晋级：第 {from} 轮 → 第 {to} 轮",
        "tournaments.randomizeGroups" to "随机化",
        "tournaments.randomPairings" to "随机双对",
        "tournaments.randomPairingsCreated" to "随机配对已创建。",
        "tournaments.resetGroupMatches" to "小组间比赛",
        "tournaments.resetGroups" to "重置组",
        "tournaments.result" to "结果",
        "tournaments.resultsRanking" to "排名",
        "tournaments.round" to "圆形的",
        "tournaments.roundGroupCount" to "小组数量",
        "tournaments.roundMode" to "模式",
        "tournaments.ruleStatusBlocked" to "被阻止",
        "tournaments.ruleStatusOk" to "看起来不错",
        "tournaments.ruleStatusOkDescription" to "该规则与当前目标回合匹配，可以按原样使用。",
        "tournaments.ruleStatusReview" to "审查",
        "tournaments.save" to "节省",
        "tournaments.saveRounds" to "保存轮次",
        "tournaments.seeded" to "种子",
        "tournaments.selectClass" to "选择班级",
        "tournaments.selectClassPrompt" to "请选择一个班级。",
        "tournaments.selectedTournament" to "活跃锦标赛",
        "tournaments.selectParticipant" to "选择用户",
        "tournaments.selectPlayer" to "选择球员",
        "tournaments.selectTournamentFirst" to "请先选择一个赛事。",
        "tournaments.selectTwoDifferentPlayers" to "请选择两位不同的选手。",
        "tournaments.setDiff" to "句子差异",
        "tournaments.sets" to "短语",
        "tournaments.showClass" to "查看班级",
        "tournaments.showingTournamentCount" to "{total} 的 {visible}",
        "tournaments.showPlayerDetails" to "查看玩家详细信息",
        "tournaments.singles" to "单身的",
        "tournaments.sourceClass" to "来源",
        "tournaments.stageActionMissingRulesHint" to "在让玩家进入下一轮之前，首先创建至少一个晋级规则。",
        "tournaments.stageActionRun" to "立即运行",
        "tournaments.stageActionsDescription" to "这些步骤使合格的玩家进入下一轮。",
        "tournaments.stageActionsTitle" to "下一步行动",
        "tournaments.stageConfigBadServerResponse" to "服务器响应无效。",
        "tournaments.stageConfigCurrentSetup" to "目前的结构",
        "tournaments.stageConfigIntro" to "中间轮是可选的。如果启用，之后总会有一个决赛轮。淘汰赛决赛轮会生成为单一对阵表。",
        "tournaments.stageConfigLoadError" to "加载轮次配置时出错。",
        "tournaments.stageConfigLoading" to "正在加载轮次配置…",
        "tournaments.stageConfigMissingIds" to "无法保存：缺少俱乐部或赛事 ID。",
        "tournaments.stageConfigTitle" to "中间轮与决赛轮",
        "tournaments.stageCreated" to "第 {round} 轮已创建。",
        "tournaments.stageFinalDescription" to "决定最后一轮是小组赛还是直接淘汰赛。",
        "tournaments.stageFlowBreakdownActionAddRule" to "添加规则",
        "tournaments.stageFlowBreakdownActionOpen" to "开放规则",
        "tournaments.stageFlowBreakdownActionReview" to "审查问题",
        "tournaments.stageFlowBreakdownErrors" to "{count} 阻塞错误",
        "tournaments.stageFlowBreakdownMissingRule" to "尚未添加完整规则",
        "tournaments.stageFlowBreakdownOk" to "配置看起来不错",
        "tournaments.stageFlowBreakdownWarnings" to "{count} 警告打开",
        "tournaments.stageFlowDirectFinal" to "预赛 -> 决赛 ({final})",
        "tournaments.stageFlowHealthBlocked" to "循环逻辑是矛盾的",
        "tournaments.stageFlowHealthBlockedDescription" to "当前至少有一条规则与目标回合不匹配或包含阻止配置错误。",
        "tournaments.stageFlowHealthIncomplete" to "回合逻辑不完整",
        "tournaments.stageFlowHealthMissingRules" to "至少有一个转变还没有完整的进展规则。",
        "tournaments.stageFlowHealthOk" to "圆形逻辑看起来不错",
        "tournaments.stageFlowHealthOkDescription" to "轮次之间的转换已完全配置并且当前是连贯的。",
        "tournaments.stageFlowHealthReviewDescription" to "回合逻辑基本上可用，但由于开放提示，仍应审查。",
        "tournaments.stageFlowPreviewMissing" to "尚未配置任何规则。",
        "tournaments.stageFlowPreviewRule" to "地点 {places} 前往 {target}",
        "tournaments.stageFlowPreviewRuleWithCount" to "{base}（预期限定符：{count}）",
        "tournaments.stageFlowQualifiedPreviewEntry" to "G{group} · 地点 {position} · {name}",
        "tournaments.stageFlowQualifiedPreviewTitle" to "目前合格",
        "tournaments.stageFlowReadinessIncompleteGroups" to "{count} 组尚未完全确定",
        "tournaments.stageFlowReadinessNoGroups" to "尚不存在匹配组",
        "tournaments.stageFlowReadinessReady" to "过渡已准备好开始",
        "tournaments.stageFlowRecommendationError" to "首先检查回合逻辑中的第一个阻塞错误。",
        "tournaments.stageFlowRecommendationFixes" to "典型的配置问题可以立即自动清除。",
        "tournaments.stageFlowRecommendationMissingRule" to "{label} 仍然缺少完整的规则。这是继续的最佳地点。",
        "tournaments.stageFlowRecommendationSave" to "整体逻辑是连贯的。您现在可以保存配置。",
        "tournaments.stageFlowRecommendationTitle" to "建议下一步",
        "tournaments.stageFlowRecommendationWarnings" to "保存前仍应查看一些警告。",
        "tournaments.stageFlowWithIntermediate" to "初赛 -> 中赛（{stage2}） -> 决赛（{final}）",
        "tournaments.stageParticipantsTransferred" to "符合资格的玩家被移入 {round}。",
        "tournaments.stageStep1" to "步骤1",
        "tournaments.stageStep1Description" to "首先决定预赛结束后是否进行附加赛。",
        "tournaments.stageStep1Title" to "决定中间回合",
        "tournaments.stageStep2" to "步骤2",
        "tournaments.stageStep2Description" to "定义中间回合应该是什么样子以及需要多少组。",
        "tournaments.stageStep3" to "步骤3",
        "tournaments.stageValidationApplyAllFixes" to "应用 {count} 快速修复",
        "tournaments.stageValidationApplyFix" to "申请",
        "tournaments.stageValidationApplyTargetGroupFix" to "设置为 {count} 目标组",
        "tournaments.stageValidationApplyTargetTypeFix" to "切换到 {target}",
        "tournaments.stageValidationDescription" to "在保存或将玩家移入下一轮之前解决这些问题。",
        "tournaments.stageValidationGroupCountRequired" to "请设置至少一个有效的组计数。",
        "tournaments.stageValidationKnockoutByesLikely" to "在预计的 {count} 预选赛中，淘汰赛很可能会包括轮空。",
        "tournaments.stageValidationKnockoutNeedsTwoPlayers" to "淘汰赛至少需要 2 名合格的球员。",
        "tournaments.stageValidationKnockoutTargetOnly" to "对于淘汰赛决赛，这里只允许以淘汰赛为目标。",
        "tournaments.stageValidationNoRules" to "{stage} 尚无晋级规则。",
        "tournaments.stageValidationNotEnoughQualifiersForGroups" to "如果 {groups} 目标组仅具有 {count} 限定符，则会创建空组。",
        "tournaments.stageValidationRulePlacesDuplicate" to "单个规则不得多次包含同一位置。",
        "tournaments.stageValidationRulePlacesGap" to "地点定义存在空白。通常采用连续顺序，例如 1,2 或 1,2,3。",
        "tournaments.stageValidationRulePlacesInvalid" to "地点定义无效。只允许使用正整数，例如 1 或 1,2。",
        "tournaments.stageValidationRulePlacesRequired" to "至少进入一处应该晋级的地方。",
        "tournaments.stageValidationRulesOverlap" to "位置 {place} 在规则 {first} 和规则 {second} 中被分配两次。",
        "tournaments.stageValidationSaveBlocked" to "请首先修复突出显示的配置错误。",
        "tournaments.stageValidationSuggestion" to "建议：{value}",
        "tournaments.stageValidationTargetGroupCountMismatch" to "目标组的数量必须与目标轮次相匹配。预期：{expected}。",
        "tournaments.stageValidationTargetGroupsRequired" to "请输入有效的目标组数量。",
        "tournaments.stageValidationTargetTypeMismatch" to "该规则的目标必须与目标回合匹配。预期：{target}。",
        "tournaments.stageValidationThinGroupsLikely" to "由于 {count} 限定符跨越 {groups} 目标群体，这些群体可能会非常小。",
        "tournaments.stageValidationTitle" to "检查配置",
        "tournaments.startKORound" to "开始淘汰赛",
        "tournaments.statusActionAssign" to "分配",
        "tournaments.statusActionCreate" to "创造",
        "tournaments.statusActionGenerate" to "产生",
        "tournaments.statusActionPair" to "一对",
        "tournaments.statusActionReview" to "审查",
        "tournaments.statusActionStart" to "开始",
        "tournaments.statusConfigIncomplete" to "配置不完整",
        "tournaments.statusConfigReady" to "配置就绪",
        "tournaments.statusFinished" to "已完成",
        "tournaments.statusGroupsMissing" to "尚未创建群组",
        "tournaments.statusGroupsReady" to "团体准备就绪",
        "tournaments.statusGroupsRunning" to "小组赛正在进行中",
        "tournaments.statusKnockoutReady" to "淘汰赛准备开始",
        "tournaments.statusKnockoutRunning" to "淘汰赛进行中",
        "tournaments.statusLive" to "进行中",
        "tournaments.statusOpen" to "未开始",
        "tournaments.statusParticipantsConflicts" to "{count} 有冲突的参与者",
        "tournaments.statusParticipantsReady" to "{count} 参与者无冲突",
        "tournaments.statusParticipantsUnassigned" to "{count} 不上课",
        "tournaments.statusTournamentCompleted" to "比赛结束",
        "tournaments.statusUnpairedDoubles" to "{count} 无搭档双打",
        "tournaments.strategy" to "战略",
        "tournaments.tabConfig" to "配置",
        "tournaments.tabGroups" to "泳池积分榜",
        "tournaments.table" to "球台",
        "tournaments.tablesDistributed" to "球台已分配。",
        "tournaments.tabParticipants" to "参加者",
        "tournaments.tabPlacements" to "配售",
        "tournaments.tabResults" to "结果",
        "tournaments.target" to "目标",
        "tournaments.targetClass" to "目标",
        "tournaments.targetGroupCount" to "目标小组数量",
        "tournaments.targetGroupsLabel" to "{count} 组",
        "tournaments.tournamentClassGenderFemale" to "女子",
        "tournaments.tournamentClassGenderOpen" to "公开组（全体）",
        "tournaments.tournamentName" to "赛事名称",
        "tournaments.tournamentParticipations" to "官方锦标赛和参赛作品",
        "tournaments.transferQualifiedToFinalFromIntermediate" to "将合格的选手送入决赛",
        "tournaments.transferQualifiedToFinalFromIntermediateDesc" to "采用中间轮到决赛的规则，将合格的选手转移。",
        "tournaments.transferQualifiedToFinalFromPreliminary" to "将合格的球员直接进入最后一轮",
        "tournaments.transferQualifiedToFinalFromPreliminaryDesc" to "使用预赛到决赛的规则并直接在那里创建合格的球员。",
        "tournaments.transferQualifiedToIntermediate" to "将合格的球员转入中期轮",
        "tournaments.transferQualifiedToIntermediateDesc" to "采用初赛到中赛的规则，将合格的选手进行轮换。",
        "tournaments.unknown" to "未知",
        "tournaments.unknownDate" to "日期未知",
        "tournaments.unmarkMatchLive" to "移除进行中标记",
        "tournaments.unpairedDoubles" to "双打未配对",
        "tournaments.useIntermediateStage" to "使用中间轮",
        "tournaments.warningBirthDateMissing" to "该组别缺少出生日期",
        "tournaments.warningClassMissing" to "未找到组别",
        "tournaments.warningGenderMismatch" to "性别与组别不匹配",
        "tournaments.warningGenderMissing" to "该组别缺少性别信息",
        "tournaments.warningMissingPairing" to "缺少双打搭档",
        "tournaments.warningTooOldForClass" to "对该组别来说年龄过大",
        "tournaments.warningTooYoungForClass" to "对该组别来说年龄过小",
        "tournaments.winningSets" to "胜率",
        "tournaments.withoutClass" to "无课",
        "tournaments.workspaceProblemsTitle" to "{count} 未决问题",
        "trainingDetails.birthdate" to "出生日期",
        "trainingDetails.birthYear" to "出生年份",
        "trainingDetails.last12Months" to "过去 12 个月",
        "trainingDetails.last3Months" to "过去 3 个月",
        "trainingDetails.maxBirthYear" to "出生≤年份",
        "trainingDetails.noTrainings" to "没有参加培训",
        "trainingDetails.title" to "培训详情",
        "trainingDetails.total" to "全部的",
        "trainingDetails.trainingParticipations" to "培训参与情况（按降序排列）",
        "trainingGroupsTab.addMember" to "添加会员...",
        "trainingGroupsTab.cancel" to "取消",
        "trainingGroupsTab.create" to "创造",
        "trainingGroupsTab.delete" to "删除",
        "trainingGroupsTab.edit" to "编辑",
        "trainingGroupsTab.editGroup" to "编辑组",
        "trainingGroupsTab.groupName" to "群组名称",
        "trainingGroupsTab.groups" to "泳池积分榜",
        "trainingGroupsTab.members" to "会员",
        "trainingGroupsTab.newGroup" to "+ 新组",
        "trainingGroupsTab.noMembersAvailable" to "没有可用的附属合作伙伴",
        "trainingGroupsTab.remove" to "消除",
        "trainingStats.actions" to "操作",
        "trainingStats.activeMembers" to "活跃成员",
        "trainingStats.allTrainingDays" to "所有训练日",
        "trainingStats.attendingMembers" to "出席成员",
        "trainingStats.averageParticipationCurrentMonth" to "平均参与人数（本月）",
        "trainingStats.averageParticipationHalfYear" to "平均参与人数（半年）",
        "trainingStats.averageParticipationLastMonth" to "平均参与人数（上月）",
        "trainingStats.averageParticipationQuarter" to "平均参与人数（季度）",
        "trainingStats.averageParticipationYear" to "平均参与人数（全年）",
        "trainingStats.birthdate" to "出生日期",
        "trainingStats.date" to "日期",
        "trainingStats.lastTraining" to "最近训练",
        "trainingStats.memberParticipations" to "成员参与次数",
        "trainingStats.name" to "姓名",
        "trainingStats.noParticipants" to "无参与者",
        "trainingStats.panelAgeGroups" to "按年龄组的出勤",
        "trainingStats.panelBestDay" to "参与人数最多的训练日",
        "trainingStats.panelGroupPerformance" to "各组进展",
        "trainingStats.panelMemberStructure" to "成员结构",
        "trainingStats.panelMonthlyTrend" to "月度趋势",
        "trainingStats.panelSummary" to "关键数据（筛选）",
        "trainingStats.panelWeekdayStats" to "按星期几的训练日",
        "trainingStats.participants" to "参与者",
        "trainingStats.participations12Months" to "参与次数（12 个月）",
        "trainingStats.participations3Months" to "参与次数（3 个月）",
        "trainingStats.participationsTotal" to "参与次数（总计）",
        "trainingStats.qttr" to "QTTR",
        "trainingStats.showDetails" to "显示详情",
        "trainingStats.title" to "训练统计",
        "trainingStats.trainingDayFilter" to "训练日",
        "trainingStats.trainingDays" to "训练日（近 12 个月）",
        "trainingStats.ttr" to "TTR",
        "trainingStats.weekday" to "星期",
        "trainingTimesTab.addTime" to "添加时间",
        "trainingTimesTab.cancel" to "取消",
        "trainingTimesTab.create" to "创造",
        "trainingTimesTab.delete" to "删除",
        "trainingTimesTab.edit" to "编辑",
        "trainingTimesTab.editTime" to "编辑训练时间",
        "trainingTimesTab.excludeFromQuickDiaryCreate" to "从快速创建中排除（日记）",
        "trainingTimesTab.excludeFromQuickDiarySaveError" to "无法保存设置。",
        "trainingTimesTab.friday" to "星期五",
        "trainingTimesTab.from" to "从：",
        "trainingTimesTab.loading" to "正在加载锻炼时间...",
        "trainingTimesTab.monday" to "周一",
        "trainingTimesTab.noTimes" to "没有规定训练时间",
        "trainingTimesTab.saturday" to "周六",
        "trainingTimesTab.save" to "节省",
        "trainingTimesTab.saveError" to "节省锻炼时间时出错",
        "trainingTimesTab.sunday" to "星期日",
        "trainingTimesTab.thursday" to "周四",
        "trainingTimesTab.to" to "到：",
        "trainingTimesTab.tuesday" to "周二",
        "trainingTimesTab.wednesday" to "周三",
        "trainingTimesTab.weekday" to "工作日：",
        "unknown" to "未知",
    ) }

    private val fallback: Map<String, String> get() = de

    fun get(languageCode: String, key: String, fallbackValue: String): String =
        mapFor(languageCode)[key] ?: fallback[key] ?: fallbackValue

    private fun mapFor(languageCode: String): Map<String, String> = when (languageCode) {
        "de-CH" -> de_CH
        "de-extended" -> de_extended
        "de" -> de
        "en-AU" -> en_AU
        "en-GB" -> en_GB
        "en-US" -> en_US
        "es" -> es
        "fil" -> fil
        "fr" -> fr
        "it" -> it
        "ja" -> ja
        "pl" -> pl
        "th" -> th
        "tl" -> tl
        "zh" -> zh
        else -> fallback
    }
}
