Factoring Polynomials Difference of Squares