completed programming assignment 2