cleaned up solution