Separate template logic