Broken. Trying to reduce duplication with templates.