COMP528.pdf