first module
cleanup
factory thing
cleanup
cleaner
singles working