Improved factoring