implemented all the levels