prgramming assignment 2