Code for CSC369 course