>> > h = (h * SOMEPRIME) % n; >> > - h = (h >= 0) ? h : h + n; > > Unless either h or n is unsigned, the C language doesn't define > the sign of h % n. > > So the deleted line is required to ensure the returned h is positive. h is unsigned. So doing a h >= 0 will always evaluate true. E -- Erik Hovland erik@xxxxxxxxxxx http://hovland.org/