added factor functionality, but need to fix wateruse_tests