Improved definition of templates

Using different method to preserve compatibility