refactoring and modulize