Added abstract and updated solution.