private string InflectTo(string name, Case @case, RuleSet ruleSet)
{
var nameChunks = WordPreparer.GetChunks(name);
return string.Join("-", nameChunks.Select((chunk, index) =>
{
bool firstWord = index == 0 && nameChunks.Count > 1;
return FindAndApply(chunk, @case, ruleSet, new Dictionary<string, bool> { { "first_word", firstWord } });
}));
}