Restructuring and refactoring