Ajout des checks et factorisation du code