programming assignement 2