revise from comments