refactoring for module support
numbers part 1