eval solution
class eval solution
solution with block (step 3), more flexability