refactoring package