final version of hw3