code: def _UpdateAndMigrateUnmerged(self, not_merged_stops, zone_map, merge_map,
                                  schedule):
      
      # for the unmerged stops, we use an already mapped zone_id if possible
      # if not, we generate a new one and add it to the map
      for stop, migrated_stop in not_merged_stops:
        if stop.zone_id in zone_map:
          migrated_stop.zone_id = zone_map[stop.zone_id]
        else:
          migrated_stop.zone_id = self.feed_merger.GenerateId(stop.zone_id)
          zone_map[stop.zone_id] = migrated_stop.zone_id
        if stop.parent_station:
          parent_original = schedule.GetStop(stop.parent_station)
          migrated_stop.parent_station = merge_map[parent_original].stop_id
        self.feed_merger.merged_schedule.AddStopObject(migrated_stop)
docs: Correct references in migrated unmerged stops and add to merged_schedule.
  
      For stops migrated from one of the input feeds to the output feed update the
      parent_station and zone_id references to point to objects in the output
      feed. Then add the migrated stop to the new schedule.
  
      Args:
        not_merged_stops: list of stops from one input feed that have not been
          merged
        zone_map: map from zone_id in the input feed to zone_id in the output feed
        merge_map: map from Stop objects in the input feed to Stop objects in
          the output feed
        schedule: the input Schedule object