cleaned part 2