Lab source code for COMP61542