code: def dst(self, dt):
      if dt is None or dt.tzinfo is None:
          # An exception may be sensible here, in one or both cases.
          # It depends on how you want to treat them.  The default
          # fromutc() implementation (called by the default astimezone()
          # implementation) passes a datetime with dt.tzinfo is self.
          return ZERO
      assert dt.tzinfo is self
  
      # Find first Sunday in April & the last in October.
      start = first_sunday_on_or_after(DSTSTART.replace(year=dt.year))
      end = first_sunday_on_or_after(DSTEND.replace(year=dt.year))
  
      # Can't compare naive to aware objects, so strip the timezone from
      # dt first.
      if start <= dt.replace(tzinfo=None) < end:
          return HOUR
      else:
          return ZERO
  
imports: from datetime import tzinfo, timedelta, datetime
  from pytz import HOUR, ZERO, UTC
  import time
label_desc: Use image node_id 5 for calling the USTimeZone obj's underlying member method code with example usage: obj.dst(dt) and returns: ZERO, HOUR, ZERO