What about the case ```fc = 0```?
The polynomial ```x**4 + x**3 + x```  does not factor with ```False```, but it does with ```True```.