done with part1