Comp540 Assignment