code: def get_sources(self, plate, plate_value, sources=None):
          if sources is None:
              sources = []
          if self.sources:
              for si, source in enumerate(self.sources):
                  if len(source.streams) == 1 and None in source.streams:
                      sources.append(source.streams[None])
                  elif plate_value in source.streams:
                      sources.append(source.streams[plate_value])
                  else:
                      pass
          if not plate.is_root:
              parent_plate_value = tuple(pv for pv in plate_value if pv[0] != plate.meta_data_id)
              sources = self.get_sources(plate.parent, parent_plate_value, sources)
          return sources