using template