package refactoring