Major (Solution) : rework all