added combine factors functionality