hw5 code