cs12b_assignment2