part_2 nearly compleet
part_2 completed