The is Assignment3 code for CSC418