-- ChatTranslateDictionary_Vocab7.lua
--
-- Siebtes EN-DE Wortschatz-Modul: weitere Tiere, Pflanzen, wissenschaftliche
-- Berufe, Wirtschaft, Technik, Haushalt, Kleidung, Möbel, Werkzeuge,
-- Wetter, Mathematik, Farben, Emotionen, körperliche Verben, Musikgenres 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 vocab7 = {
    -- Weitere Säugetiere
    { en = "ferret", de = "Frettchen" },
    { en = "hamster", de = "Hamster" },
    { en = "guinea pig", de = "Meerschweinchen" },
    { en = "chinchilla", de = "Chinchilla" },
    { en = "hyena", de = "Hyäne" },
    { en = "jackal", de = "Schakal" },
    { en = "mongoose", de = "Mungo" },
    { en = "sloth", de = "Faultier" },
    { en = "armadillo", de = "Gürteltier" },
    { en = "platypus", de = "Schnabeltier" },
    { en = "meerkat", de = "Erdmännchen" },
    { en = "lemur", de = "Lemur" },
    { en = "orangutan", de = "Orang-Utan" },
    { en = "bison", de = "Bison" },
    { en = "moose", de = "Elch" },
    { en = "elk", de = "Wapiti" },
    { en = "antelope", de = "Antilope" },
    { en = "gazelle", de = "Gazelle" },
    { en = "cheetah", de = "Gepard" },
    { en = "leopard", de = "Leopard" },
    { en = "jaguar", de = "Jaguar" },
    { en = "puma", de = "Puma" },
    { en = "lynx", de = "Luchs" },
    { en = "narwhal", de = "Narwal" },
    { en = "mole", de = "Maulwurf" },
    { en = "weasel", de = "Wiesel" },
    { en = "badger", de = "Dachs" },

    -- Weitere Meerestiere
    { en = "stingray", de = "Stachelrochen" },
    { en = "manta ray", de = "Mantarochen" },
    { en = "pufferfish", de = "Kugelfisch" },
    { en = "hermit crab", de = "Einsiedlerkrebs" },
    { en = "barnacle", de = "Seepocke" },
    { en = "sea sponge", de = "Meeresschwamm" },
    { en = "sea cucumber", de = "Seegurke" },
    { en = "krill", de = "Krill" },

    -- Weitere Pflanzen und Blumen
    { en = "hibiscus", de = "Hibiskus" },
    { en = "jasmine", de = "Jasmin" },
    { en = "daffodil", de = "Narzisse" },
    { en = "poppy", de = "Mohn" },
    { en = "dandelion", de = "Löwenzahn" },
    { en = "clover", de = "Klee" },
    { en = "ivy", de = "Efeu" },
    { en = "algae", de = "Algen" },
    { en = "seaweed", de = "Meeresalgen" },
    { en = "marigold", de = "Ringelblume" },
    { en = "carnation", de = "Nelke" },
    { en = "iris (flower)", de = "Schwertlilie" },
    { en = "peony", de = "Pfingstrose" },
    { en = "chrysanthemum", de = "Chrysantheme" },

    -- Weitere Berufe wissenschaftlich
    { en = "economist", de = "Ökonom" },
    { en = "statistician", de = "Statistiker" },
    { en = "biologist", de = "Biologe" },
    { en = "chemist (job)", de = "Chemiker" },
    { en = "physicist", de = "Physiker" },
    { en = "geologist", de = "Geologe" },
    { en = "astronomer", de = "Astronom" },
    { en = "historian", de = "Historiker" },
    { en = "archivist", de = "Archivar" },
    { en = "curator", de = "Kurator" },
    { en = "choreographer", de = "Choreograf" },
    { en = "screenwriter", de = "Drehbuchautor" },
    { en = "proofreader", de = "Korrekturleser" },
    { en = "cartographer", de = "Kartograf" },

    -- Weitere Wirtschaft
    { en = "startup", de = "Startup" },
    { en = "franchise", de = "Franchise" },
    { en = "monopoly", de = "Monopol" },
    { en = "cartel", de = "Kartell" },
    { en = "stakeholder", de = "Interessenvertreter" },
    { en = "portfolio", de = "Portfolio" },
    { en = "asset", de = "Vermögenswert" },
    { en = "liability", de = "Verbindlichkeit" },
    { en = "equity", de = "Eigenkapital" },
    { en = "valuation", de = "Bewertung (Finanz)" },
    { en = "acquisition", de = "Übernahme" },
    { en = "outsourcing", de = "Outsourcing" },

    -- Weitere Technik
    { en = "blockchain", de = "Blockchain" },
    { en = "cryptocurrency", de = "Kryptowährung" },
    { en = "API", de = "Programmierschnittstelle" },
    { en = "firmware", de = "Firmware" },
    { en = "bug fix", de = "Fehlerbehebung" },
    { en = "open source", de = "Open Source" },
    { en = "machine learning", de = "maschinelles Lernen" },
    { en = "automation", de = "Automatisierung" },
    { en = "prototype", de = "Prototyp" },

    -- Weitere Haushaltsgeräte
    { en = "thermostat", de = "Thermostat" },
    { en = "air conditioner", de = "Klimaanlage" },
    { en = "heater", de = "Heizgerät" },
    { en = "fan (device)", de = "Ventilator" },
    { en = "humidifier", de = "Luftbefeuchter" },
    { en = "dehumidifier", de = "Luftentfeuchter" },
    { en = "blender", de = "Mixer" },
    { en = "toaster", de = "Toaster" },
    { en = "food processor", de = "Küchenmaschine" },

    -- Weitere Kleidung
    { en = "poncho", de = "Poncho" },
    { en = "cardigan", de = "Cardigan" },
    { en = "blazer", de = "Blazer" },
    { en = "vest", de = "Weste" },
    { en = "overalls", de = "Latzhose" },
    { en = "onesie", de = "Onesie" },
    { en = "trench coat", de = "Trenchcoat" },
    { en = "windbreaker", de = "Windjacke" },
    { en = "raincoat", de = "Regenmantel" },
    { en = "swimsuit", de = "Badeanzug" },
    { en = "bikini", de = "Bikini" },
    { en = "nightgown", de = "Nachthemd" },
    { en = "robe", de = "Bademantel" },
    { en = "apron", de = "Schürze" },

    -- Weitere Möbel
    { en = "ottoman", de = "Ottomane" },
    { en = "recliner", de = "Relaxsessel" },
    { en = "futon", de = "Futon" },
    { en = "vanity (furniture)", de = "Frisierkommode" },
    { en = "sideboard", de = "Sideboard" },
    { en = "nightstand", de = "Nachttisch" },
    { en = "bunk bed", de = "Etagenbett" },
    { en = "chest of drawers", de = "Kommode" },

    -- Weitere Werkzeuge
    { en = "caliper", de = "Messschieber" },
    { en = "vise", de = "Schraubstock" },
    { en = "clamp", de = "Klemme" },
    { en = "sandpaper", de = "Schleifpapier" },
    { en = "crowbar", de = "Brechstange" },
    { en = "mallet", de = "Holzhammer" },

    -- Weitere Wetterbegriffe
    { en = "sleet", de = "Graupel" },
    { en = "overcast", de = "bedeckt (Himmel)" },
    { en = "mist", de = "feiner Nebel" },
    { en = "gust", de = "Windstoß" },
    { en = "breeze", de = "Brise" },
    { en = "heatstroke", de = "Hitzschlag" },
    { en = "frostbite", de = "Erfrierung" },
    { en = "gale", de = "Sturmwind" },

    -- Weitere Mathematik
    { en = "percentage", de = "Prozentsatz" },
    { en = "exponent", de = "Exponent" },
    { en = "logarithm", de = "Logarithmus" },
    { en = "factorial", de = "Fakultät (Mathematik)" },
    { en = "coefficient", de = "Koeffizient" },
    { en = "polynomial", de = "Polynom" },
    { en = "sequence (math)", de = "Folge (Mathematik)" },
    { en = "symmetry", de = "Symmetrie" },

    -- Weitere Farbnuancen
    { en = "cyan", de = "Cyan" },
    { en = "amber", de = "Amber" },
    { en = "rust (color)", de = "Rostrot" },
    { en = "emerald", de = "Smaragdgrün" },
    { en = "ruby (color)", de = "Rubinrot" },
    { en = "sapphire (color)", de = "Saphirblau" },
    { en = "jade (color)", de = "Jadegrün" },
    { en = "burgundy", de = "Burgunderrot" },
    { en = "khaki", de = "Khaki" },

    -- Weitere Emotionen
    { en = "contentment", de = "Zufriedenheit (Gefühl)" },
    { en = "bitterness", de = "Bitterkeit" },
    { en = "irritation", de = "Reizung (Gefühl)" },
    { en = "apprehension", de = "Beklemmung" },
    { en = "elation", de = "Hochgefühl" },
    { en = "dread", de = "Furcht (Bangen)" },
    { en = "relief", de = "Erleichterung (Gefühl)" },
    { en = "triumph", de = "Triumph" },

    -- Körperliche Verben
    { en = "to whistle", de = "pfeifen" },
    { en = "to sneeze", de = "niesen" },
    { en = "to yawn", de = "gähnen" },
    { en = "to hiccup", de = "schlucken haben (Schluckauf)" },
    { en = "to snore", de = "schnarchen" },
    { en = "to blush", de = "erröten" },
    { en = "to sweat", de = "schwitzen" },
    { en = "to shiver", de = "zittern (Kälte)" },
    { en = "to tremble", de = "zittern (Angst)" },
    { en = "to itch", de = "jucken" },
    { en = "to scratch", de = "kratzen" },
    { en = "to swallow", de = "schlucken" },
    { en = "to chew", de = "kauen" },
    { en = "to spit", de = "spucken" },
    { en = "to sniff", de = "schnuppern" },

    -- Texturadjektive
    { en = "sturdy", de = "stabil" },
    { en = "elastic", de = "elastisch" },
    { en = "rigid", de = "starr (Material)" },
    { en = "porous", de = "porös" },
    { en = "transparent", de = "transparent" },
    { en = "opaque", de = "undurchsichtig" },
    { en = "glossy", de = "glänzend" },
    { en = "matte", de = "matt" },
    { en = "shiny", de = "glänzend (Oberfläche)" },
    { en = "bumpy", de = "holprig" },
    { en = "slippery", de = "rutschig" },
    { en = "sticky", de = "klebrig" },
    { en = "greasy", de = "fettig" },
    { en = "crisp", de = "knusprig" },

    -- Alltagsgegenstände weitere
    { en = "lantern", de = "Laterne" },
    { en = "candle", de = "Kerze" },
    { en = "matchstick", de = "Streichholz" },
    { en = "lighter", de = "Feuerzeug" },
    { en = "thermos", de = "Thermoskanne" },
    { en = "cooler", de = "Kühlbox" },
    { en = "picnic basket", de = "Picknickkorb" },
    { en = "clothesline", de = "Wäscheleine" },
    { en = "hanger", de = "Kleiderbügel" },
    { en = "doormat", de = "Fußmatte" },

    -- Weitere Landformen
    { en = "isthmus", de = "Landbrücke" },
    { en = "fjord", de = "Fjord" },
    { en = "lagoon", de = "Lagune" },
    { en = "estuary", de = "Flussmündung" },
    { en = "steppe", de = "Steppe" },
    { en = "wetland", de = "Feuchtgebiet" },
    { en = "dune", de = "Sanddüne" },
    { en = "crater", de = "Krater" },
    { en = "ridge", de = "Bergkamm" },

    -- Weitere Sportarten
    { en = "curling", de = "Curling" },
    { en = "bowling", de = "Bowling" },
    { en = "darts", de = "Darts" },
    { en = "billiards", de = "Billard" },
    { en = "squash (sport)", de = "Squash" },
    { en = "diving (sport)", de = "Kunstspringen" },
    { en = "water polo", de = "Wasserball" },
    { en = "handball", de = "Handball" },
    { en = "lacrosse", de = "Lacrosse" },

    -- Musikgenres
    { en = "jazz", de = "Jazz" },
    { en = "blues", de = "Blues" },
    { en = "reggae", de = "Reggae" },
    { en = "punk", de = "Punk" },
    { en = "classical music", de = "klassische Musik" },
    { en = "folk music", de = "Volksmusik" },
    { en = "hip hop", de = "Hip-Hop" },
    { en = "electronic music", de = "elektronische Musik" },
    { en = "pop music", de = "Popmusik" },
    { en = "country music", de = "Country-Musik" },

    -- Fernsehen und Serien
    { en = "sitcom", de = "Sitcom" },
    { en = "soap opera", de = "Seifenoper" },
    { en = "reality show", de = "Reality-Show" },
    { en = "talk show", de = "Talkshow" },
    { en = "cartoon", de = "Zeichentrickfilm" },
    { en = "anime", de = "Anime" },
    { en = "trailer (film)", de = "Trailer" },
    { en = "cast (film)", de = "Besetzung" },
    { en = "episode", de = "Episode" },
    { en = "season (tv)", de = "Staffel" },

    -- Weitere Verben Emotional
    { en = "to comfort", de = "beruhigen (tröstig)" },
    { en = "to console", de = "trösten" },
    { en = "to reassure", de = "versichern (beruhigen)" },
    { en = "to irritate", de = "reizen (nerven)" },
    { en = "to annoy", de = "ärgern" },
    { en = "to disappoint", de = "enttäuschen" },
    { en = "to satisfy", de = "befriedigen" },
    { en = "to inspire", de = "inspirieren" },
    { en = "to motivate", de = "motivieren" },
    { en = "to discourage", de = "entmutigen" },

    -- Weitere Substantive Beziehungen
    { en = "trust", de = "Vertrauen" },
    { en = "betrayal", de = "Verrat" },
    { en = "commitment", de = "Verpflichtung" },
    { en = "intimacy", de = "Intimität" },
    { en = "conflict", de = "Konflikt" },
    { en = "compromise", de = "Kompromiss" },
    { en = "reconciliation", de = "Versöhnung" },
    { en = "connection", de = "Verbindung" },
    { en = "support (relationship)", de = "Unterstützung" },

    -- Weitere Zeitwörter Abstrakt
    { en = "moment", de = "Moment" },
    { en = "instant", de = "Augenblick" },
    { en = "duration", de = "Dauer" },
    { en = "interval", de = "Zeitintervall" },
    { en = "phase", de = "Phase" },
    { en = "period (time)", de = "Zeitraum" },
    { en = "span", de = "Zeitspanne" },

}

for _, entry in ipairs(vocab7) 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)