tp2 exo1: initial commit