interim commit of the factory changes. still trying things out