code: def _normalize_value_ms(cls, value):
          
          value = round(value / 1000) * 1000  # Ignore fractions of second
  
          sorted_units = sorted(cls.UNITS_IN_MILLISECONDS.items(),
                                key=lambda x: x[1], reverse=True)
          for unit, unit_in_ms in sorted_units:
              unit_value = value / unit_in_ms
              if unit_value.is_integer():
                  return int(unit_value), unit
          return value, MILLISECOND
docs: Normalize a value in ms to the largest unit possible without decimal places.
  
          Note that this ignores fractions of a second and always returns a value _at least_
          in seconds.
  
          :return: the normalized value and unit name
          :rtype: Tuple[Union[int, float], str]