code: def AddStopObject(self, stop, problem_reporter=None):
      
      assert stop._schedule is None
      if not problem_reporter:
        problem_reporter = self.problem_reporter
  
      if not stop.stop_id:
        return
  
      if stop.stop_id in self.stops:
        problem_reporter.DuplicateID('stop_id', stop.stop_id)
        return
  
      stop._schedule = weakref.proxy(self)
      self.AddTableColumns('stops', stop._ColumnNames())
      self.stops[stop.stop_id] = stop
      if hasattr(stop, 'zone_id') and stop.zone_id:
        self.fare_zones[stop.zone_id] = True
docs: Add Stop object to this schedule if stop_id is non-blank.