code: def for_sponsor(self, sponsor, include_cancelled=False):
          
          sponsoring_filter = (Q(sponsors=sponsor) | (Q(sponsors=None) & Q(activity__sponsors=sponsor)))
          sched_acts = (EighthScheduledActivity.objects.exclude(activity__deleted=True).filter(sponsoring_filter).distinct())
          if not include_cancelled:
              sched_acts = sched_acts.exclude(cancelled=True)
  
          return sched_acts
docs: Return a QueryList of EighthScheduledActivities where the given EighthSponsor is
          sponsoring.
  
          If a sponsorship is defined in an EighthActivity, it may be overridden
          on a block by block basis in an EighthScheduledActivity. Sponsors from
          the EighthActivity do not carry over.
  
          EighthScheduledActivities that are deleted or cancelled are also not
          counted.