global module refactoring after review comments