more implementaion of solution