requiring the template