using System.Collections.Generic;
public static void Main()
var adjectives = new List<string> {"practical", "famous", "healthy", "unusual", "happy", "logical", "severe", "federal", "immediate", "responsible", "lucky", "additional", "suspicious", "intelligent", "strong", "existing", "careful", "distinct", "psychological", "desperate", "serious", "odd", "eastern", "political", "similar", "anxious", "legal", "useful", "tiny", "sudden", "aware", "interesting", "technical", "basic", "strict", "embarrassed", "significant", "aggressive", "nervous", "traditional", "mad", "typical", "medical", "recent", "various", "unable", "electronic", "cultural", "administrative", "sorry", "competitive", "unhappy", "hungry", "huge", "difficult", "remarkable", "informal", "used", "lonely", "rare", "global", "expensive", "critical", "exciting", "southern", "realistic", "tall", "hot", "accurate", "environmental", "helpful", "dangerous", "ugly", "several", "entire", "willing", "large", "emotional", "nice", "conscious", "wooden", "different", "historical", "important", "obviously", "curious", "acceptable", "capable", "latter", "powerful", "automatic", "successful", "comprehensive", "angry", "impressive", "visible", "united", "efficient", "afraid", "asleep", "strange", "actual", "consistent", "numerous", "confident", "available", "civil", "popular", "dramatic", "scared", "able", "impossible", "inner", "known", "boring", "old", "unlikely", "mental", "relevant", "substantial", "foreign", "every", "suitable", "poor", "pleasant", "cute", "weak", "wonderful"};
var adverbs = new List<string> {"quietly", "dutifully", "carefully", "crossly", "unethically", "helplessly", "lightly", "only", "intently", "angrily", "curiously", "evenly", "almost", "politely", "sadly", "mockingly", "unbearably", "loftily", "elegantly", "majestically", "quickly", "excitedly", "tediously", "upright", "needily", "questionably", "instantly", "uselessly", "helpfully", "warmly", "confidently", "virtually", "briskly", "brightly", "bleakly", "neatly", "hopelessly", "wrongly", "somewhat", "slightly", "always", "valiantly", "deftly", "eagerly", "unexpectedly", "bashfully", "vastly", "verbally", "justly", "cautiously", "sharply", "hastily", "rarely", "oddly", "utterly", "madly", "ultimately", "deeply", "selfishly", "fully", "repeatedly", "noisily", "crazily", "originally"};
var nouns = new List<string> {"cats", "dogs", "elephants", "mice", "snakes", "sheep", "cows", "flies", "lions", "dragons", "slugs", "eagles", "frogs", "parrots", "alligators", "sharks", "monkeys", "tigers", "moles", "badgers", "snails", "chickens", "rooster", "koalas", "kangaroos", "turtles", "iguanas", "antelopes", "springboks", "armadillos", "foxes", "zebras", "impalas", "llamas", "jaguars", "baboons", "horses", "porcupines", "pigs", "crocodiles", "bats", "sloths", "buffalo", "hamster", "wombat", "kittens", "puppies", "rats", "reindeer", "donkeys", "alpacas", "owls", "rabbits", "gophers", "cheetahs", "gorillas", "wolves", "beetles", "pandas", "newts", "beavers", "chimpanzees", "bees", "crows", "raccoons", "toads", "ferrets", "whales", "dolphins", "apes", "deer"};
var verbs = new List<string> {"exist", "discharge", "settle", "disappear", "coincide", "proceed", "test", "cancel", "request", "lean", "enclose", "march", "compose", "leave", "breed", "wander", "win", "set", "endorse", "bear", "spare", "gather", "hire", "cease", "subject", "back", "sing", "float", "greet", "recall", "touch", "lose", "proclaim", "burn", "hunt", "disagree", "consume", "apply", "fix", "couple", "estimate", "conform", "tour", "weigh", "deposit", "own", "convince", "suffer", "end", "limit", "operate", "round", "refuse", "speak", "declare", "exploit", "become", "steal", "remove", "belong", "force", "impose", "plunge", "stir", "express", "cool", "result", "undermine", "allocate", "cheer", "use", "sum", "squeeze", "store", "induce", "acquire", "absorb", "cast", "report", "manipulate", "presume", "rely", "schedule", "list", "account", "identify", "going", "remind", "judge", "call", "maintain", "in", "risk", "classify", "split", "compensate", "realize", "calculate", "compare", "provide", "bring", "time", "range", "invite", "underline", "point", "study", "review", "obey", "prescribe", "deny", "reach", "depend", "arise", "wash", "edit", "carry", "transmit", "perform", "find", "exercise", "shoot", "satisfy", "strip", "drag", "wonder", "sound", "want"};
var pickRandomNumber = () => rnd.Next(2, 33).ToString();
var pickAdjective = () => adjectives.OrderBy(x => rnd.Next()).First();
var pickAdverb = () => adverbs.OrderBy(x => rnd.Next()).First();
var pickNoun = () => nouns.OrderBy(x => rnd.Next()).First();
var pickVerb = () => verbs.OrderBy(x => rnd.Next()).First();
var generateId = () => string.Join("-", new List<string> { pickRandomNumber(), pickAdjective(), pickNoun(), pickVerb(), pickAdverb(), });
Console.WriteLine(generateId());