added challenge 1, 2 & 3