Program assignment 2