The final solution

Details