Understanding the use cases of the template macro