Refactoring + ajout codes erreurs