Refactoring Component