Done qn 1 - 3