code: def parse_timezone(matches, default_timezone=UTC):
      
  
      if matches["timezone"] == "Z":
          return UTC
      # This isn't strictly correct, but it's common to encounter dates without
      # timezones so I'll assume the default (which defaults to UTC).
      # Addresses issue 4.
      if matches["timezone"] is None:
          return default_timezone
      sign = matches["tz_sign"]
      hours = to_int(matches, "tz_hour")
      minutes = to_int(matches, "tz_minute", default_to_zero=True)
      description = "%s%02d:%02d" % (sign, hours, minutes)
      if sign == "-":
          hours = -hours
          minutes = -minutes
      return FixedOffset(hours, minutes, description)
docs: Parses ISO 8601 time zone specs into tzinfo offsets