CR Changes: Refactor Module G, create separate files for classes
Implemented: Module L