revision of homework_zero