More modular refactoring
More modular refactoring