Major (Solution) : many changes