Submission of Assignment 5 for CSC207