Part 1 done, part 2 mostly donE