Adding answer for exercice 1, 2 and 3.