fixed based on feedback