// Package diceware generates random passphrases from a small word list (1296 words). Words are joined with dashes.
package diceware

import (
	"math"
	"strings"

	"github.com/sethvargo/go-diceware/diceware"
)

const English = "en"
const German = "de"

// Entropy generates a passphrase with a given entropy between 41 bits (resulting in five words) and 124 bits (resulting in twelve words).
func Entropy(entropy int, lang string) (string, error) {
	var length = int(math.Ceil(float64(entropy) / 10.34)) // 10.34 = log_2(1296)
	if length < 5 {
		length = 5
	}
	if length > 12 {
		length = 12
	}
	return Length(length, lang)
}

// Entropy generates a passphrase with a given number of words.
func Length(length int, lang string) (string, error) {
	var words []string
	var err error
	switch lang {
	case German:
		words, err = diceware.GenerateWithWordList(length, WordListGermanSmall)
	default:
		words, err = diceware.GenerateWithWordList(length, diceware.WordListEffSmall())
	}
	return strings.Join(words, "-"), err
}

type wordlist struct {
	digits int
	words  map[int]string
}

func (w *wordlist) Digits() int {
	return w.digits
}

func (w *wordlist) WordAt(i int) string {
	return w.words[i]
}

// German diceware word list: https://github.com/dys2p/wordlists-de/blob/main/de-1296-v1-diceware.txt
var WordListGermanSmall = &wordlist{
	digits: 4,
	words: map[int]string{
		1111: "abbild",
		1112: "abbruch",
		1113: "abdruck",
		1114: "abend",
		1115: "abfall",
		1116: "abflug",
		1121: "abgrund",
		1122: "abitur",
		1123: "abkommen",
		1124: "ablauf",
		1125: "abreise",
		1126: "abriss",
		1131: "abschied",
		1132: "absicht",
		1133: "abstand",
		1134: "abteil",
		1135: "abwarten",
		1136: "achse",
		1141: "acht",
		1142: "acker",
		1143: "adapter",
		1144: "adler",
		1145: "adresse",
		1146: "advent",
		1151: "affe",
		1152: "agent",
		1153: "ahorn",
		1154: "akademie",
		1155: "akte",
		1156: "aktie",
		1161: "akustik",
		1162: "akzent",
		1163: "alarm",
		1164: "albatros",
		1165: "album",
		1166: "alge",
		1211: "allee",
		1212: "allianz",
		1213: "alltag",
		1214: "alpen",
		1215: "alptraum",
		1216: "alter",
		1221: "altglas",
		1222: "altstadt",
		1223: "alufolie",
		1224: "amboss",
		1225: "ameise",
		1226: "ampel",
		1231: "amsel",
		1232: "amulett",
		1233: "ananas",
		1234: "anfang",
		1235: "angel",
		1236: "anker",
		1241: "anlage",
		1242: "anruf",
		1243: "anstalt",
		1244: "antik",
		1245: "antrag",
		1246: "antwort",
		1251: "anwalt",
		1252: "anwesen",
		1253: "anwohner",
		1254: "anzahl",
		1255: "anzug",
		1256: "apfel",
		1261: "apotheke",
		1262: "april",
		1263: "arbeit",
		1264: "archiv",
		1265: "armband",
		1266: "aroma",
		1311: "arzt",
		1312: "asche",
		1313: "asphalt",
		1314: "atelier",
		1315: "atem",
		1316: "athlet",
		1321: "atlas",
		1322: "atom",
		1323: "aufgabe",
		1324: "aufstand",
		1325: "auftrag",
		1326: "aufzug",
		1331: "auge",
		1332: "august",
		1333: "auktion",
		1334: "aula",
		1335: "ausbruch",
		1336: "ausflug",
		1341: "ausgang",
		1342: "auto",
		1343: "baby",
		1344: "bach",
		1345: "backen",
		1346: "baden",
		1351: "bagger",
		1352: "bahn",
		1353: "balkon",
		1354: "ball",
		1355: "balsam",
		1356: "bambus",
		1361: "banane",
		1362: "band",
		1363: "bank",
		1364: "bargeld",
		1365: "barsch",
		1366: "bart",
		1411: "basteln",
		1412: "batterie",
		1413: "bauch",
		1414: "bauer",
		1415: "baum",
		1416: "baumarkt",
		1421: "bauplan",
		1422: "bausatz",
		1423: "bauwagen",
		1424: "bauzaun",
		1425: "beben",
		1426: "becher",
		1431: "becken",
		1432: "beere",
		1433: "befund",
		1434: "beifall",
		1435: "beil",
		1436: "bein",
		1441: "beitrag",
		1442: "benzin",
		1443: "berg",
		1444: "beruf",
		1445: "besen",
		1446: "besuch",
		1451: "beton",
		1452: "betrieb",
		1453: "bett",
		1454: "beule",
		1455: "beute",
		1456: "bewegen",
		1461: "bewohner",
		1462: "bezahlen",
		1463: "biber",
		1464: "biene",
		1465: "bier",
		1466: "biest",
		1511: "bieten",
		1512: "bild",
		1513: "binden",
		1514: "biologie",
		1515: "biotonne",
		1516: "birke",
		1521: "birne",
		1522: "blasen",
		1523: "blatt",
		1524: "blau",
		1525: "blech",
		1526: "blick",
		1531: "blitz",
		1532: "blume",
		1533: "boden",
		1534: "bogen",
		1535: "bohne",
		1536: "bohren",
		1541: "boje",
		1542: "bolzen",
		1543: "bombe",
		1544: "bonus",
		1545: "boot",
		1546: "bord",
		1551: "botanik",
		1552: "bote",
		1553: "boxen",
		1554: "braten",
		1555: "braun",
		1556: "brei",
		1561: "bremsen",
		1562: "brennen",
		1563: "brett",
		1564: "brief",
		1565: "brille",
		1566: "bringen",
		1611: "brokkoli",
		1612: "bronze",
		1613: "brosche",
		1614: "brot",
		1615: "bruder",
		1616: "brunnen",
		1621: "brust",
		1622: "bube",
		1623: "buch",
		1624: "bude",
		1625: "bunker",
		1626: "bunt",
		1631: "burg",
		1632: "busch",
		1633: "busfahrt",
		1634: "bussard",
		1635: "butter",
		1636: "campen",
		1641: "caravan",
		1642: "chaos",
		1643: "chemie",
		1644: "chor",
		1645: "clown",
		1646: "code",
		1651: "computer",
		1652: "couch",
		1653: "creme",
		1654: "dach",
		1655: "dame",
		1656: "damm",
		1661: "dampf",
		1662: "darm",
		1663: "datei",
		1664: "dattel",
		1665: "dauer",
		1666: "daumen",
		2111: "decke",
		2112: "deich",
		2113: "delfin",
		2114: "delle",
		2115: "denkmal",
		2116: "detektiv",
		2121: "dezember",
		2122: "dichter",
		2123: "dieb",
		2124: "dienstag",
		2125: "digital",
		2126: "dill",
		2131: "diskette",
		2132: "distel",
		2133: "doktor",
		2134: "dokument",
		2135: "dolch",
		2136: "donner",
		2141: "dorf",
		2142: "dorn",
		2143: "dose",
		2144: "drache",
		2145: "draht",
		2146: "dreck",
		2151: "drei",
		2152: "drossel",
		2153: "drucker",
		2154: "ducken",
		2155: "duft",
		2156: "dunkel",
		2161: "durst",
		2162: "dusche",
		2163: "ebbe",
		2164: "echo",
		2165: "echse",
		2166: "ecke",
		2211: "efeu",
		2212: "eichel",
		2213: "eidechse",
		2214: "eier",
		2215: "eimer",
		2216: "eingang",
		2221: "einladen",
		2222: "einrad",
		2223: "eins",
		2224: "eisberg",
		2225: "eisen",
		2226: "eistee",
		2231: "eisvogel",
		2232: "elch",
		2233: "elefant",
		2234: "element",
		2235: "elster",
		2236: "eltern",
		2241: "engel",
		2242: "enkel",
		2243: "ente",
		2244: "entwurf",
		2245: "erbe",
		2246: "erbse",
		2251: "erdbeere",
		2252: "erde",
		2253: "erdgas",
		2254: "erdnuss",
		2255: "erfinden",
		2256: "erfolg",
		2261: "erhalten",
		2262: "erinnern",
		2263: "erkennen",
		2264: "ernte",
		2265: "ersatz",
		2266: "esel",
		2311: "essen",
		2312: "essig",
		2313: "esstisch",
		2314: "etage",
		2315: "etappe",
		2316: "ethik",
		2321: "etikett",
		2322: "eule",
		2323: "event",
		2324: "experte",
		2325: "export",
		2326: "express",
		2331: "fabel",
		2332: "fabrik",
		2333: "fach",
		2334: "fackel",
		2335: "faden",
		2336: "fahne",
		2341: "fahrrad",
		2342: "falke",
		2343: "fallen",
		2344: "falter",
		2345: "familie",
		2346: "fangen",
		2351: "fantasie",
		2352: "farbe",
		2353: "farn",
		2354: "fasching",
		2355: "fass",
		2356: "faultier",
		2361: "fauna",
		2362: "faust",
		2363: "favorit",
		2364: "februar",
		2365: "feder",
		2366: "fegen",
		2411: "feier",
		2412: "feile",
		2413: "feld",
		2414: "fell",
		2415: "fels",
		2416: "fenchel",
		2421: "fenster",
		2422: "ferien",
		2423: "fern",
		2424: "ferse",
		2425: "fest",
		2426: "feuer",
		2431: "fichte",
		2432: "fieber",
		2433: "figur",
		2434: "filiale",
		2435: "film",
		2436: "filter",
		2441: "finden",
		2442: "finger",
		2443: "fink",
		2444: "firma",
		2445: "fisch",
		2446: "flach",
		2451: "flamme",
		2452: "flasche",
		2453: "fleck",
		2454: "fliege",
		2455: "flocke",
		2456: "floh",
		2461: "flora",
		2462: "flucht",
		2463: "flugzeug",
		2464: "flur",
		2465: "fluss",
		2466: "flut",
		2511: "folie",
		2512: "forelle",
		2513: "forst",
		2514: "foto",
		2515: "foyer",
		2516: "fracht",
		2521: "frage",
		2522: "frau",
		2523: "frech",
		2524: "freizeit",
		2525: "freude",
		2526: "freund",
		2531: "frieden",
		2532: "friseur",
		2533: "frosch",
		2534: "frucht",
		2535: "fuchs",
		2536: "futter",
		2541: "gabel",
		2542: "galerie",
		2543: "gang",
		2544: "ganove",
		2545: "gans",
		2546: "garage",
		2551: "gardine",
		2552: "garn",
		2553: "garten",
		2554: "gasse",
		2555: "gast",
		2556: "gauner",
		2561: "gazelle",
		2562: "geben",
		2563: "gebiet",
		2564: "geboren",
		2565: "gecko",
		2566: "gedanke",
		2611: "gedicht",
		2612: "geduld",
		2613: "gegend",
		2614: "gehirn",
		2615: "geier",
		2616: "geige",
		2621: "geist",
		2622: "gelb",
		2623: "geld",
		2624: "gelee",
		2625: "genie",
		2626: "gepard",
		2631: "gerade",
		2632: "gericht",
		2633: "gern",
		2634: "gerste",
		2635: "geruch",
		2636: "geschenk",
		2641: "gespenst",
		2642: "gestalt",
		2643: "gesund",
		2644: "getreide",
		2645: "gewitter",
		2646: "gewonnen",
		2651: "giebel",
		2652: "gipfel",
		2653: "gips",
		2654: "giraffe",
		2655: "gitarre",
		2656: "gitter",
		2661: "glas",
		2662: "gleis",
		2663: "glitzer",
		2664: "globus",
		2665: "glocke",
		2666: "glut",
		3111: "gold",
		3112: "golf",
		3113: "gondel",
		3114: "gorilla",
		3115: "grab",
		3116: "grafik",
		3121: "granit",
		3122: "gras",
		3123: "grau",
		3124: "greifen",
		3125: "griff",
		3126: "grill",
		3131: "grinsen",
		3132: "grotte",
		3133: "grube",
		3134: "gruft",
		3135: "grund",
		3136: "gruppe",
		3141: "gulasch",
		3142: "gully",
		3143: "gummi",
		3144: "gurke",
		3145: "gurt",
		3146: "haar",
		3151: "habicht",
		3152: "hacken",
		3153: "hafen",
		3154: "hagel",
		3155: "hahn",
		3156: "haken",
		3161: "halle",
		3162: "halm",
		3163: "hals",
		3164: "halten",
		3165: "hammer",
		3166: "hamster",
		3211: "hand",
		3212: "hanger",
		3213: "hantel",
		3214: "harfe",
		3215: "harke",
		3216: "hart",
		3221: "hase",
		3222: "haufen",
		3223: "haus",
		3224: "haut",
		3225: "hebamme",
		3226: "hebel",
		3231: "hecht",
		3232: "hecke",
		3233: "heft",
		3234: "heilen",
		3235: "heim",
		3236: "heizung",
		3241: "held",
		3242: "helfen",
		3243: "hell",
		3244: "helm",
		3245: "hemd",
		3246: "henkel",
		3251: "herbst",
		3252: "herd",
		3253: "hering",
		3254: "herz",
		3255: "heute",
		3256: "himbeere",
		3261: "himmel",
		3262: "hirte",
		3263: "hitze",
		3264: "hoch",
		3265: "holen",
		3266: "holunder",
		3311: "holz",
		3312: "honig",
		3313: "hopfen",
		3314: "horizont",
		3315: "horn",
		3316: "hose",
		3321: "hotel",
		3322: "hufeisen",
		3323: "huhn",
		3324: "hummer",
		3325: "hund",
		3326: "hunger",
		3331: "hupe",
		3332: "husten",
		3333: "hydrant",
		3334: "idee",
		3335: "igel",
		3336: "imbiss",
		3341: "imker",
		3342: "impfen",
		3343: "ingwer",
		3344: "insel",
		3345: "jacht",
		3346: "jacke",
		3351: "jagd",
		3352: "jaguar",
		3353: "januar",
		3354: "jazz",
		3355: "joggen",
		3356: "joghurt",
		3361: "juli",
		3362: "jung",
		3363: "juni",
		3364: "juwel",
		3365: "kabel",
		3366: "kabine",
		3411: "kaffee",
		3412: "kajak",
		3413: "kakao",
		3414: "kaktus",
		3415: "kalender",
		3416: "kalt",
		3421: "kamera",
		3422: "kamin",
		3423: "kamm",
		3424: "kampf",
		3425: "kanal",
		3426: "kandidat",
		3431: "kanister",
		3432: "kanne",
		3433: "kante",
		3434: "kanu",
		3435: "kapelle",
		3436: "kapsel",
		3441: "karneval",
		3442: "karotte",
		3443: "karte",
		3444: "kasse",
		3445: "kasten",
		3446: "katalog",
		3451: "katze",
		3452: "kaufhaus",
		3453: "kauz",
		3454: "kegel",
		3455: "kehren",
		3456: "keks",
		3461: "kelch",
		3462: "keller",
		3463: "keramik",
		3464: "kern",
		3465: "kerze",
		3466: "kessel",
		3511: "ketchup",
		3512: "kette",
		3513: "keule",
		3514: "kiefer",
		3515: "kiesel",
		3516: "kind",
		3521: "kino",
		3522: "kiosk",
		3523: "kirsche",
		3524: "kissen",
		3525: "kiste",
		3526: "kittel",
		3531: "kiwi",
		3532: "klammer",
		3533: "klavier",
		3534: "kleben",
		3535: "klee",
		3536: "kleid",
		3541: "klettern",
		3542: "klinik",
		3543: "klon",
		3544: "klopfen",
		3545: "klotz",
		3546: "kneipe",
		3551: "knie",
		3552: "knochen",
		3553: "knopf",
		3554: "knoten",
		3555: "koala",
		3556: "kochen",
		3561: "koffer",
		3562: "kohle",
		3563: "koje",
		3564: "kolibri",
		3565: "kollege",
		3566: "konzert",
		3611: "kopf",
		3612: "kopie",
		3613: "korb",
		3614: "korn",
		3615: "krabbe",
		3616: "kraft",
		3621: "kralle",
		3622: "kran",
		3623: "kraut",
		3624: "krawatte",
		3625: "krebs",
		3626: "kredit",
		3631: "kreis",
		3632: "kresse",
		3633: "kreuz",
		3634: "krokodil",
		3635: "krone",
		3636: "krug",
		3641: "krumm",
		3642: "kuchen",
		3643: "kugel",
		3644: "kuhstall",
		3645: "kulisse",
		3646: "kultur",
		3651: "kunde",
		3652: "kunst",
		3653: "kupfer",
		3654: "kurier",
		3655: "kurz",
		3656: "kuss",
		3661: "kutsche",
		3662: "labor",
		3663: "lachen",
		3664: "lack",
		3665: "laden",
		3666: "ladung",
		4111: "lager",
		4112: "lama",
		4113: "lamm",
		4114: "lampe",
		4115: "lang",
		4116: "lappen",
		4121: "larve",
		4122: "laterne",
		4123: "latte",
		4124: "laub",
		4125: "lauch",
		4126: "laufen",
		4131: "lavendel",
		4132: "lawine",
		4133: "leer",
		4134: "legen",
		4135: "lehm",
		4136: "lehrer",
		4141: "leicht",
		4142: "leim",
		4143: "leinwand",
		4144: "leiste",
		4145: "leiter",
		4146: "lemming",
		4151: "lenken",
		4152: "leopard",
		4153: "lernen",
		4154: "lesen",
		4155: "lesung",
		4156: "leuchte",
		4161: "leute",
		4162: "lexikon",
		4163: "libelle",
		4164: "licht",
		4165: "lied",
		4166: "liegen",
		4211: "lila",
		4212: "lilie",
		4213: "limette",
		4214: "linde",
		4215: "lineal",
		4216: "linie",
		4221: "lippe",
		4222: "liste",
		4223: "loch",
		4224: "locke",
		4225: "lohn",
		4226: "luchs",
		4231: "luft",
		4232: "lunge",
		4233: "lupe",
		4234: "lustig",
		4235: "made",
		4236: "magazin",
		4241: "magen",
		4242: "magie",
		4243: "magnet",
		4244: "mais",
		4245: "malen",
		4246: "mama",
		4251: "mango",
		4252: "mann",
		4253: "mantel",
		4254: "marder",
		4255: "markt",
		4256: "marmor",
		4261: "maschine",
		4262: "maske",
		4263: "mast",
		4264: "matrose",
		4265: "matte",
		4266: "mauer",
		4311: "maulwurf",
		4312: "maus",
		4313: "medaille",
		4314: "medizin",
		4315: "meer",
		4316: "mehl",
		4321: "mehrweg",
		4322: "melden",
		4323: "melken",
		4324: "melone",
		4325: "mensch",
		4326: "messer",
		4331: "metall",
		4332: "miene",
		4333: "milan",
		4334: "milch",
		4335: "minigolf",
		4336: "minze",
		4341: "mittag",
		4342: "mode",
		4343: "molch",
		4344: "monat",
		4345: "mond",
		4346: "monitor",
		4351: "monster",
		4352: "montag",
		4353: "moos",
		4354: "moped",
		4355: "morgen",
		4356: "motor",
		4361: "motte",
		4362: "mulde",
		4363: "mund",
		4364: "muschel",
		4365: "museum",
		4366: "musik",
		4411: "muskel",
		4412: "muster",
		4413: "mutter",
		4414: "nacht",
		4415: "nacken",
		4416: "nadel",
		4421: "nagel",
		4422: "nahrung",
		4423: "napf",
		4424: "narbe",
		4425: "narr",
		4426: "narzisse",
		4431: "nase",
		4432: "nashorn",
		4433: "nass",
		4434: "natter",
		4435: "natur",
		4436: "nebel",
		4441: "nehmen",
		4442: "nektar",
		4443: "nest",
		4444: "nett",
		4445: "netz",
		4446: "neubau",
		4451: "neun",
		4452: "nilpferd",
		4453: "nobel",
		4454: "norden",
		4455: "note",
		4456: "november",
		4461: "nudel",
		4462: "null",
		4463: "nuss",
		4464: "oase",
		4465: "oben",
		4466: "objekt",
		4511: "obst",
		4512: "ofen",
		4513: "ohren",
		4514: "ohrring",
		4515: "oktober",
		4516: "olive",
		4521: "omelett",
		4522: "oper",
		4523: "orgel",
		4524: "orkan",
		4525: "ostern",
		4526: "otter",
		4531: "paket",
		4532: "palast",
		4533: "palette",
		4534: "palme",
		4535: "panda",
		4536: "papagei",
		4541: "papier",
		4542: "pappe",
		4543: "paprika",
		4544: "parade",
		4545: "park",
		4546: "party",
		4551: "pause",
		4552: "pavian",
		4553: "pedal",
		4554: "pegel",
		4555: "peitsche",
		4556: "pelikan",
		4561: "pelz",
		4562: "pendel",
		4563: "perle",
		4564: "person",
		4565: "pfad",
		4566: "pfahl",
		4611: "pfanne",
		4612: "pfau",
		4613: "pfeffer",
		4614: "pfeil",
		4615: "pferd",
		4616: "pfirsich",
		4621: "pflaume",
		4622: "pflegen",
		4623: "pflug",
		4624: "pforte",
		4625: "pfosten",
		4626: "pfote",
		4631: "physik",
		4632: "picknick",
		4633: "pigment",
		4634: "pille",
		4635: "pilot",
		4636: "pilz",
		4641: "pinguin",
		4642: "pink",
		4643: "pinsel",
		4644: "pinzette",
		4645: "pirat",
		4646: "pixel",
		4651: "plakat",
		4652: "planet",
		4653: "platz",
		4654: "podest",
		4655: "podium",
		4656: "pokal",
		4661: "pollen",
		4662: "polster",
		4663: "pommes",
		4664: "pony",
		4665: "pool",
		4666: "portrait",
		5111: "post",
		5112: "praxis",
		5113: "probe",
		5114: "produkt",
		5115: "profil",
		5116: "projekt",
		5121: "prospekt",
		5122: "pudding",
		5123: "puder",
		5124: "puls",
		5125: "pulver",
		5126: "puma",
		5131: "pumpe",
		5132: "punkt",
		5133: "punsch",
		5134: "puppe",
		5135: "pute",
		5136: "putzen",
		5141: "puzzel",
		5142: "pyjama",
		5143: "pyramide",
		5144: "quadrat",
		5145: "qualle",
		5146: "quark",
		5151: "quelle",
		5152: "quittung",
		5153: "quiz",
		5154: "rabe",
		5155: "radio",
		5156: "radtour",
		5161: "radweg",
		5162: "rahmen",
		5163: "rakete",
		5164: "rampe",
		5165: "rand",
		5166: "rang",
		5211: "ranke",
		5212: "raps",
		5213: "rasen",
		5214: "rast",
		5215: "ratgeber",
		5216: "rathaus",
		5221: "ratte",
		5222: "rauch",
		5223: "raum",
		5224: "raupe",
		5225: "raus",
		5226: "rechnen",
		5231: "reden",
		5232: "redner",
		5233: "regal",
		5234: "regen",
		5235: "rehkitz",
		5236: "reibe",
		5241: "reifen",
		5242: "reihe",
		5243: "reim",
		5244: "reise",
		5245: "reiten",
		5246: "rekord",
		5251: "rennen",
		5252: "rentier",
		5253: "reporter",
		5254: "reptil",
		5255: "residenz",
		5256: "respekt",
		5261: "retten",
		5262: "rezept",
		5263: "riechen",
		5264: "riegel",
		5265: "riesig",
		5266: "rind",
		5311: "ring",
		5312: "rinnsaal",
		5313: "riss",
		5314: "ritter",
		5315: "robbe",
		5316: "roboter",
		5321: "rock",
		5322: "roggen",
		5323: "rohr",
		5324: "roller",
		5325: "roman",
		5326: "rosa",
		5331: "rose",
		5332: "rosine",
		5333: "rost",
		5334: "rotkohl",
		5335: "rucksack",
		5336: "rudel",
		5341: "rufen",
		5342: "ruhig",
		5343: "ruine",
		5344: "rummel",
		5345: "rund",
		5346: "rute",
		5351: "rutsche",
		5352: "saal",
		5353: "saat",
		5354: "sack",
		5355: "safran",
		5356: "saft",
		5361: "sahne",
		5362: "saison",
		5363: "salat",
		5364: "salbe",
		5365: "saloon",
		5366: "salz",
		5411: "samen",
		5412: "sammeln",
		5413: "samstag",
		5414: "samt",
		5415: "sand",
		5416: "sardine",
		5421: "satellit",
		5422: "sattel",
		5423: "sauber",
		5424: "sauna",
		5425: "saurier",
		5426: "schabe",
		5431: "schaf",
		5432: "schere",
		5433: "schirm",
		5434: "schlange",
		5435: "schmuck",
		5436: "schnee",
		5441: "schrank",
		5442: "schuh",
		5443: "schwan",
		5444: "sechs",
		5445: "seefahrt",
		5446: "seehund",
		5451: "seekuh",
		5452: "seestern",
		5453: "segel",
		5454: "sehen",
		5455: "seide",
		5456: "seife",
		5461: "seil",
		5462: "seite",
		5463: "sekunde",
		5464: "sellerie",
		5465: "selten",
		5466: "semester",
		5511: "seminar",
		5512: "senden",
		5513: "senf",
		5514: "senior",
		5515: "sense",
		5516: "serie",
		5521: "serum",
		5522: "server",
		5523: "sessel",
		5524: "shop",
		5525: "sichel",
		5526: "sieb",
		5531: "siedlung",
		5532: "signal",
		5533: "silber",
		5534: "singen",
		5535: "sirene",
		5536: "sirup",
		5541: "sitzen",
		5542: "skizze",
		5543: "skulptur",
		5544: "socke",
		5545: "sofa",
		5546: "sohle",
		5551: "sohn",
		5552: "soja",
		5553: "sommer",
		5554: "sonne",
		5555: "sorte",
		5556: "spachtel",
		5561: "spagat",
		5562: "spange",
		5563: "spargel",
		5564: "spaten",
		5565: "specht",
		5566: "speise",
		5611: "spende",
		5612: "sperling",
		5613: "spiegel",
		5614: "spinne",
		5615: "spion",
		5616: "spitze",
		5621: "sport",
		5622: "sprechen",
		5623: "springen",
		5624: "sprotte",
		5625: "sprung",
		5626: "spur",
		5631: "stabil",
		5632: "stachel",
		5633: "stadt",
		5634: "stahl",
		5635: "stall",
		5636: "stamm",
		5641: "standort",
		5642: "stapel",
		5643: "stark",
		5644: "station",
		5645: "staub",
		5646: "stehen",
		5651: "stein",
		5652: "stempel",
		5653: "steppe",
		5654: "stern",
		5655: "stier",
		5656: "stift",
		5661: "still",
		5662: "stimme",
		5663: "stirn",
		5664: "stock",
		5665: "stoff",
		5666: "stoppen",
		6111: "storch",
		6112: "strand",
		6113: "strecke",
		6114: "strom",
		6115: "strumpf",
		6116: "stube",
		6121: "studium",
		6122: "stufe",
		6123: "stuhl",
		6124: "stumm",
		6125: "stunde",
		6126: "sturm",
		6131: "suche",
		6132: "summe",
		6133: "suppe",
		6134: "surfen",
		6135: "szenario",
		6136: "tabelle",
		6141: "tacker",
		6142: "tafel",
		6143: "tagebuch",
		6144: "tango",
		6145: "tanne",
		6146: "tante",
		6151: "tanz",
		6152: "tapir",
		6153: "tarnen",
		6154: "tasche",
		6155: "tasse",
		6156: "tastatur",
		6161: "taube",
		6162: "tauchen",
		6163: "taxi",
		6164: "team",
		6165: "technik",
		6166: "teekanne",
		6211: "teer",
		6212: "teesieb",
		6213: "teich",
		6214: "teig",
		6215: "teilen",
		6216: "telefon",
		6221: "teller",
		6222: "tennis",
		6223: "teppich",
		6224: "termin",
		6225: "terrasse",
		6226: "teuer",
		6231: "text",
		6232: "theater",
		6233: "tief",
		6234: "tier",
		6235: "tiger",
		6236: "tinte",
		6241: "tisch",
		6242: "tochter",
		6243: "toilette",
		6244: "tomate",
		6245: "tonband",
		6246: "tonne",
		6251: "topf",
		6252: "torbogen",
		6253: "torte",
		6254: "tracht",
		6255: "tragen",
		6256: "training",
		6261: "trapez",
		6262: "trasse",
		6263: "traum",
		6264: "treffen",
		6265: "treppe",
		6266: "tresor",
		6311: "triangel",
		6312: "trinken",
		6313: "trommel",
		6314: "tropfen",
		6315: "truhe",
		6316: "trunk",
		6321: "truthahn",
		6322: "tuch",
		6323: "tukan",
		6324: "tulpe",
		6325: "tunnel",
		6326: "turbine",
		6331: "turm",
		6332: "turnen",
		6333: "tusche",
		6334: "ufer",
		6335: "uhrwerk",
		6336: "umbau",
		6341: "umfrage",
		6342: "umhang",
		6343: "umkreis",
		6344: "umriss",
		6345: "umsonst",
		6346: "umwelt",
		6351: "umzug",
		6352: "unfall",
		6353: "unikat",
		6354: "unrat",
		6355: "urkunde",
		6356: "urlaub",
		6361: "vanille",
		6362: "vase",
		6363: "vater",
		6364: "veranda",
		6365: "verband",
		6366: "verein",
		6411: "verkehr",
		6412: "video",
		6413: "vieh",
		6414: "vier",
		6415: "villa",
		6416: "virus",
		6421: "vitamine",
		6422: "vitrine",
		6423: "vogel",
		6424: "voliere",
		6425: "voll",
		6426: "vorbild",
		6431: "vorort",
		6432: "vorrat",
		6433: "vortrag",
		6434: "vulkan",
		6435: "waage",
		6436: "wachs",
		6441: "wade",
		6442: "waffel",
		6443: "wagen",
		6444: "waggon",
		6445: "wahl",
		6446: "wald",
		6451: "walnuss",
		6452: "walze",
		6453: "wand",
		6454: "wanne",
		6455: "ware",
		6456: "warm",
		6461: "warten",
		6462: "waschen",
		6463: "wasser",
		6464: "webstuhl",
		6465: "wechsel",
		6466: "wecker",
		6511: "weich",
		6512: "weide",
		6513: "wein",
		6514: "weit",
		6515: "weizen",
		6516: "welle",
		6521: "welpe",
		6522: "welt",
		6523: "werbung",
		6524: "werfen",
		6525: "werkzeug",
		6526: "wespe",
		6531: "weste",
		6532: "wetter",
		6533: "widder",
		6534: "wiegen",
		6535: "wiese",
		6536: "wimper",
		6541: "wind",
		6542: "winter",
		6543: "winzig",
		6544: "wippe",
		6545: "wischen",
		6546: "wisent",
		6551: "wissen",
		6552: "witz",
		6553: "woche",
		6554: "wohnen",
		6555: "wolf",
		6556: "wolke",
		6561: "wolle",
		6562: "wurm",
		6563: "wurzel",
		6564: "zahl",
		6565: "zahn",
		6566: "zander",
		6611: "zange",
		6612: "zapfen",
		6613: "zauber",
		6614: "zaun",
		6615: "zebra",
		6616: "zecke",
		6621: "zehe",
		6622: "zehn",
		6623: "zeichen",
		6624: "zeigen",
		6625: "zeit",
		6626: "zelt",
		6631: "zement",
		6632: "zentrum",
		6633: "zettel",
		6634: "ziege",
		6635: "ziehen",
		6636: "ziel",
		6641: "ziffer",
		6642: "zimmer",
		6643: "zimt",
		6644: "zirkus",
		6645: "zitrone",
		6646: "zocken",
		6651: "zollfrei",
		6652: "zorn",
		6653: "zucchini",
		6654: "zucker",
		6655: "zufall",
		6656: "zugang",
		6661: "zukunft",
		6662: "zunge",
		6663: "zwei",
		6664: "zwiebel",
		6665: "zwilling",
		6666: "zwirn",
	},
}
