code: def get_next_future_timerange_valid(self, timestamp):
          
          sec_from_morning = get_sec_from_morning(timestamp)
          starts = []
          for timerange in self.timeranges:
              tr_start = timerange.hstart * 3600 + timerange.mstart * 60
              if tr_start >= sec_from_morning:
                  starts.append(tr_start)
          if starts != []:
              return min(starts)
  
          return None
docs: Get the next valid timerange (next timerange start in timeranges attribute)
  
          :param timestamp: base time
          :type timestamp: int
          :return: next time when a timerange is valid
          :rtype: None | int