updated using classnotes as template