Extensive updates to solution.