added solution for part 1