code: def timetuple(self):
          
          return time.struct_time((
              self.year,
              self.month,
              self.day,
              0,
              0,
              0,
              self.weekday(),
              self.dayofyear(),
              -1
          ))
docs: It's equivalent to:
  
              >>> time.struct_time((d.year, d.month, d.day, d.hour, d.minute, d.second, d.weekday(), dayofyear, [-1|1|0])) # doctest: +SKIP
              time.struct_time(tm_year=2015, tm_mon=7, tm_mday=28, tm_hour=0, tm_min=0, tm_sec=0, tm_wday=1, tm_yday=209, tm_isdst=-1)
  
  
          The tm_isdst flag of the result is set according to the dst() method: `tzinfo`
          is None or dst() returns None, tm_isdst is set to -1; else if dst()
          returns a non-zero value, tm_isdst is set to 1; else tm_isdst is set to 0.
  
  
          :return: A :py:class:`time.struct_time` such as returned by time.localtime().
          :rtype: :py:class:`time.struct_time`