Refactoring !!