[Meyer, Tony] OK, you did this print: print start_pos, start_pos-1.0, abs(start_pos-1.0), 0.001, 0.0 < 0.001 and it displayed 1.0 0.0 0.0 0.0 False > ... > So it's 0.0 < 0.001 that fails. And specifically because "0.001" is being treated as exactly 0. Which locale was in effect? This is starting to get odd <wink>.