code: def intervals_ms(self, timeout_ms):
          
          if timeout_ms is config.FOREVER:
              while True:
                  yield self.try_length_ms
          else:
              whole_intervals, part_interval = divmod(timeout_ms, self.try_length_ms)
              for _ in range(whole_intervals):
                  yield self.try_length_ms
              yield part_interval
docs: Generate a series of interval lengths, in ms, which
          will add up to the number of ms in timeout_ms. If timeout_ms
          is None, keep returning intervals forever.