final version of HW1