first version of the solution to p16