CS246 Assignment