consistent naming for template types