-- ChatTranslateDictionary_Vocab8.lua
--
-- Achtes EN-DE Wortschatz-Modul: Recht/Regierung, Bildungsverwaltung,
-- Sport-Schiedsrichter, Backzutaten, Fleisch, Fast Food, Einkaufen,
-- Bankkarten, Gaming/Esports, Bergbau, Energiewirtschaft, Immobilien u.a.
-- Enthält NUR Wörter, die in keinem vorherigen Modul vorkommen.
-- Muss NACH allen vorherigen Dateien geladen werden.

CT_Dictionary = CT_Dictionary or {}
CT_Dictionary.words = CT_Dictionary.words or {}

local vocab8 = {
    -- Rechtsdurchsetzung und Regierung
    { en = "law enforcement", de = "Strafverfolgung" },
    { en = "patrol", de = "Streife" },
    { en = "interrogation", de = "Verhör" },
    { en = "warrant", de = "Haftbefehl" },
    { en = "legislature", de = "Gesetzgebung" },
    { en = "executive branch", de = "Exekutive" },
    { en = "judicial branch", de = "Judikative" },
    { en = "senator", de = "Senator" },
    { en = "mayor", de = "Bürgermeister" },
    { en = "governor", de = "Gouverneur" },
    { en = "diplomat", de = "Diplomat" },
    { en = "treaty", de = "Vertrag (Staaten)" },
    { en = "alliance", de = "Allianz" },
    { en = "sanction", de = "Sanktion" },
    { en = "embargo", de = "Embargo" },
    { en = "tariff", de = "Zoll (Abgabe)" },
    { en = "import", de = "Import" },
    { en = "export", de = "Export" },

    -- Bildungsverwaltung
    { en = "principal", de = "Schulleiter" },
    { en = "counselor", de = "Berater (Schule)" },
    { en = "syllabus", de = "Lehrplan (Kurs)" },
    { en = "attendance", de = "Anwesenheit" },
    { en = "suspension", de = "Suspendierung" },
    { en = "scholarship fund", de = "Stipendienfonds" },
    { en = "accreditation", de = "Akkreditierung" },
    { en = "enrollment", de = "Einschreibung" },

    -- Sportschiedsrichter und Wettkampf
    { en = "referee", de = "Schiedsrichter" },
    { en = "umpire", de = "Schiedsrichter (Ball)" },
    { en = "penalty", de = "Strafe (Sport)" },
    { en = "foul", de = "Foul" },
    { en = "offside", de = "Abseits" },
    { en = "scoreboard", de = "Anzeigetafel" },
    { en = "tournament", de = "Turnier" },
    { en = "qualifier", de = "Qualifikationsspiel" },
    { en = "playoff", de = "Play-off" },

    -- Backzutaten und Milchprodukte
    { en = "baking powder", de = "Backpulver" },
    { en = "baking soda", de = "Natron" },
    { en = "dough", de = "Teig" },
    { en = "batter", de = "Teigmasse" },
    { en = "cream cheese", de = "Frischkäse" },
    { en = "sour cream", de = "Saure Sahne" },
    { en = "buttermilk", de = "Buttermilch" },
    { en = "condensed milk", de = "Kondensmilch" },
    { en = "whipped cream", de = "Schlagsahne" },
    { en = "margarine", de = "Margarine" },

    -- Fleischsorten und Zubereitung
    { en = "steak", de = "Steak" },
    { en = "sausage", de = "Wurst" },
    { en = "bacon", de = "Speck" },
    { en = "ham", de = "Schinken" },
    { en = "ground beef", de = "Hackfleisch" },
    { en = "ribs", de = "Rippchen" },
    { en = "fillet", de = "Filet" },
    { en = "drumstick", de = "Keule (Huhn)" },

    -- Frühstück und Fast Food
    { en = "cereal", de = "Cerealien" },
    { en = "oatmeal", de = "Haferbrei" },
    { en = "toast", de = "Toast" },
    { en = "french fries", de = "Pommes frites" },
    { en = "hot dog", de = "Hot Dog" },
    { en = "fried chicken", de = "gebratenes Hühnchen" },
    { en = "milkshake", de = "Milchshake" },
    { en = "nachos", de = "Nachos" },
    { en = "popcorn", de = "Popcorn" },

    -- Einkaufen und Ladentypen
    { en = "checkout", de = "Kasse" },
    { en = "cart (shopping)", de = "Einkaufswagen" },
    { en = "basket (shopping)", de = "Einkaufskorb" },
    { en = "aisle", de = "Gang (Laden)" },
    { en = "bakery (shop)", de = "Bäckerei (Laden)" },
    { en = "boutique", de = "Boutique" },
    { en = "mall", de = "Einkaufszentrum" },
    { en = "warehouse store", de = "Großmarkt" },
    { en = "fitting room", de = "Umkleidekabine" },

    -- Pflegehinweise und Materialien
    { en = "dry clean", de = "chemisch reinigen" },
    { en = "machine wash", de = "Maschinenwäsche" },
    { en = "hand wash", de = "Handwäsche" },
    { en = "fabric softener", de = "Weichspüler" },
    { en = "stain", de = "Fleck" },
    { en = "lint", de = "Fussel" },
    { en = "wrinkle", de = "Falte (Stoff)" },

    -- Bankkarten und Zahlungen
    { en = "debit card", de = "Debitkarte" },
    { en = "ATM", de = "Geldautomat" },
    { en = "PIN", de = "PIN-Code" },
    { en = "mobile payment", de = "mobiles Zahlen" },
    { en = "wire transfer", de = "Überweisung (Bank)" },
    { en = "statement (bank)", de = "Kontoauszug" },
    { en = "fee (bank)", de = "Gebühr" },

    -- Gaming und Esports
    { en = "multiplayer", de = "Mehrspieler" },
    { en = "single player", de = "Einzelspieler" },
    { en = "leaderboard", de = "Bestenliste" },
    { en = "level up", de = "aufsteigen (Level)" },
    { en = "save game", de = "Spielstand speichern" },
    { en = "checkpoint", de = "Kontrollpunkt" },
    { en = "respawn", de = "Respawn" },
    { en = "controller", de = "Controller" },
    { en = "console (gaming)", de = "Konsole" },
    { en = "esports", de = "E-Sport" },
    { en = "matchmaking", de = "Matchmaking" },
    { en = "lag", de = "Verzögerung (Gaming)" },

    -- Casino und Glücksspiel
    { en = "casino", de = "Kasino" },
    { en = "slot machine", de = "Spielautomat" },
    { en = "lottery", de = "Lotterie" },
    { en = "jackpot", de = "Jackpot" },
    { en = "roulette", de = "Roulette" },
    { en = "bet", de = "Wette" },
    { en = "odds", de = "Gewinnchancen" },
    { en = "wager", de = "Einsatz" },

    -- Rohstoffe und Bergbau
    { en = "mining", de = "Bergbau" },
    { en = "mine (mining)", de = "Bergwerk" },
    { en = "ore", de = "Erz" },
    { en = "coal", de = "Kohle" },
    { en = "quarry", de = "Steinbruch" },
    { en = "drilling", de = "Bohren" },
    { en = "natural resource", de = "Rohstoff" },
    { en = "extraction", de = "Gewinnung (Rohstoff)" },
    { en = "forestry", de = "Forstwirtschaft" },
    { en = "logging", de = "Holzeinschlag" },

    -- Öl, Gas und Energiewirtschaft
    { en = "oil rig", de = "Ölplattform" },
    { en = "refinery", de = "Raffinerie" },
    { en = "natural gas", de = "Erdgas" },
    { en = "power plant", de = "Kraftwerk" },
    { en = "power grid", de = "Stromnetz" },
    { en = "blackout", de = "Stromausfall" },
    { en = "power outage", de = "Stromausfall (allgemein)" },

    -- Stadtplanung und Nachbarschaft
    { en = "urban planning", de = "Stadtplanung" },
    { en = "zoning", de = "Flächennutzung" },
    { en = "neighborhood", de = "Nachbarschaft" },
    { en = "suburb", de = "Vorort" },
    { en = "downtown", de = "Stadtzentrum" },
    { en = "infrastructure", de = "Infrastruktur" },
    { en = "public transport", de = "öffentlicher Verkehr" },
    { en = "sidewalk", de = "Gehweg" },

    -- Motorsport und Radsport
    { en = "racing (motorsport)", de = "Rennsport" },
    { en = "racetrack", de = "Rennstrecke" },
    { en = "lap", de = "Runde (Rennen)" },
    { en = "pit stop", de = "Boxenstopp" },
    { en = "gear shift", de = "Gangschaltung" },
    { en = "mountain bike", de = "Mountainbike" },
    { en = "road bike", de = "Rennrad" },

    -- Virtuelle Realität und 3D-Druck
    { en = "virtual reality", de = "virtuelle Realität" },
    { en = "augmented reality", de = "erweiterte Realität" },
    { en = "3D printer", de = "3D-Drucker" },
    { en = "3D model", de = "3D-Modell" },
    { en = "simulation", de = "Simulation" },
    { en = "headset (VR)", de = "VR-Headset" },

    -- Software und Lizenzen
    { en = "subscription", de = "Abonnement (Software)" },
    { en = "terms of service", de = "Nutzungsbedingungen" },
    { en = "privacy policy", de = "Datenschutzrichtlinie" },
    { en = "beta version", de = "Betaversion" },
    { en = "release notes", de = "Versionshinweise" },

    -- Aktienmarkt und Immobilien
    { en = "stock market", de = "Aktienmarkt" },
    { en = "broker", de = "Makler" },
    { en = "real estate", de = "Immobilien" },
    { en = "property", de = "Grundstück" },
    { en = "lease", de = "Mietvertrag" },
    { en = "tenant", de = "Mieter" },
    { en = "appraisal", de = "Wertgutachten" },

    -- Innen- und Außendesign
    { en = "interior design", de = "Innenarchitektur" },
    { en = "exterior design", de = "Außengestaltung" },
    { en = "floor plan", de = "Grundriss" },
    { en = "decor", de = "Dekoration" },
    { en = "paint (wall)", de = "Wandfarbe" },
    { en = "wallpaper", de = "Tapete" },
    { en = "landscaping", de = "Gartengestaltung" },

    -- Nebenkosten und Haushaltsführung
    { en = "electricity bill", de = "Stromrechnung" },
    { en = "water bill", de = "Wasserrechnung" },
    { en = "gas bill", de = "Gasrechnung" },
    { en = "utility", de = "Versorgungsleistung" },
    { en = "chore", de = "Hausarbeit" },
    { en = "errand", de = "Erledigung" },

    -- Kindheit, Alter und Fürsorge
    { en = "toddler", de = "Kleinkind" },
    { en = "infant", de = "Säugling" },
    { en = "teenager", de = "Teenager" },
    { en = "elderly", de = "älterer Mensch" },
    { en = "nursing home", de = "Pflegeheim" },
    { en = "caregiver", de = "Pflegekraft" },
    { en = "disability", de = "Behinderung" },
    { en = "wheelchair", de = "Rollstuhl" },
    { en = "accessibility", de = "Zugänglichkeit" },

    -- Sucht und Genesung
    { en = "addiction", de = "Sucht" },
    { en = "rehabilitation", de = "Rehabilitation" },
    { en = "relapse", de = "Rückfall" },
    { en = "counseling", de = "Beratung (Therapie)" },
    { en = "support group", de = "Selbsthilfegruppe" },

    -- Strafjustiz und Gefängnis
    { en = "inmate", de = "Häftling" },
    { en = "parole", de = "Bewährung" },
    { en = "probation", de = "Bewährungsstrafe" },
    { en = "guard (prison)", de = "Wärter" },

    -- Migration und Zuflucht
    { en = "immigration", de = "Einwanderung" },
    { en = "emigration", de = "Auswanderung" },
    { en = "refugee", de = "Flüchtling" },
    { en = "asylum", de = "Asyl" },
    { en = "migrant", de = "Migrant" },
    { en = "residency permit", de = "Aufenthaltsgenehmigung" },
    { en = "deportation", de = "Abschiebung" },
    { en = "integration", de = "Integration" },

}

for _, entry in ipairs(vocab8) do
    table.insert(CT_Dictionary.words, entry)
end

local function BuildIndex(sourceTable, destIndex)
    for _, entry in ipairs(sourceTable) do
        for srcLang, srcText in pairs(entry) do
            local key = srcText:lower()
            for tgtLang, tgtText in pairs(entry) do
                if tgtLang ~= srcLang then
                    destIndex[tgtLang] = destIndex[tgtLang] or {}
                    destIndex[tgtLang][key] = tgtText
                end
            end
        end
    end
end

CT_Dictionary.wordIndex = CT_Dictionary.wordIndex or {}
BuildIndex(CT_Dictionary.words, CT_Dictionary.wordIndex)