the end refactorée