Refactoring the internal modules.