implemented all review changes