successful solutions to problems 3 and 4