Modularization part 2
Modularization part 2