completed hw5 except challenge problem