Assignment 1 for COMP30070.