more descriptive names of template variables and of new method