solution for 1 and 2