final version of template