cs169.1x HW2 Parts 1-3 submitted personal code