docs: def add_timezone(value, tz=None):
      """If the value is naive, then the timezone is added to it.
  
      If no timezone is given, timezone.get_current_timezone() is used.
      """
      tz = tz or timezone.get_current_timezone()
      try:
          if timezone.is_naive(value):
              return timezone.make_aware(value, tz)
      except AttributeError:  # 'datetime.date' object has no attribute 'tzinfo'
          dt = datetime.datetime.combine(value, datetime.time())
          return timezone.make_aware(dt, tz)
      return value