hw2,3,4