puzzle 3 works still need to validate