refactor
improving templates