be consistent about where template name logic lives