- structure refactoring