REFACTOR: templates => generate