SDI 1302 assignment 4