refactoring et ajouts