Improved based on feedback from review