Final version of Assignment 1.