Homework 3 final commit.