code: def next(self, day_of_week=None, keep_time=False):
          
          if day_of_week is None:
              day_of_week = self.day_of_week
  
          if day_of_week < SUNDAY or day_of_week > SATURDAY:
              raise ValueError("Invalid day of week")
  
          if keep_time:
              dt = self
          else:
              dt = self.start_of("day")
  
          dt = dt.add(days=1)
          while dt.day_of_week != day_of_week:
              dt = dt.add(days=1)
  
          return dt
docs: Modify to the next occurrence of a given day of the week.
          If no day_of_week is provided, modify to the next occurrence
          of the current day of the week.  Use the supplied consts
          to indicate the desired day_of_week, ex. DateTime.MONDAY.
  
          :param day_of_week: The next day of week to reset to.
          :type day_of_week: int or None
  
          :param keep_time: Whether to keep the time information or not.
          :type keep_time: bool
  
          :rtype: DateTime