cs4008w at2 assignment