refactoring + commentaires