some revision based on Nana's comments