part 1 done.