time diff miscalculation on 32-bit systems