pgm assignment 3