Added all requirements in HW3