Only material for CPSC 301 course.