C S 314H assignment #4