got rid of excessive modularization