hw7 complete, closes #8