finished the solution, but has not debugged