Some minor changes according to Zoubin's suggestions
Simple merge