improve according code review