solved the problem, but there is a subtlety im still curious about related to having evaluate_poly in the while statement vs the body of the loop