first version of the solution to p14