updated prime_factors