Updated with Yi-Chen's suggestions.