A new (better?) way of templating