cleaning & refactorisation