added assignment 3 solution