code: def _local_times_from_hours_since_midnight(times, hours):
      
      tz_info = times.tz  # pytz timezone info
      naive_times = times.tz_localize(None)  # naive but still localized
      # normalize local, naive times to previous midnight and add the hours until
      # sunrise, sunset, and transit
      return pd.DatetimeIndex(
          (naive_times.normalize().astype(np.int64) +
           (hours * NS_PER_HR).astype(np.int64)).astype('datetime64[ns]'),
          tz=tz_info)
docs: converts hours since midnight from an array of floats to localized times