exercise 1 with extra credit