Finally, the solution