Re-organized solution.