finally finish hw4