Part 2 done completely