integrate ramji's corrections
read through