refactoring packages