completed hw0, hw1, how2