COMP1536 Assignment4