my complete code for assignment 2