cs301 assignment 2 solution 2022