adding base functionality to the template and registration system