code: def merge(self, *others):
          '''
          Return a new PileupCollection that is the union of self and the other
          specified collections.
          '''
          new_pileups = {}
          for collection in (self,) + others:
              for (locus, pileup) in collection.pileups.items():
                  if locus in new_pileups:
                      new_pileups[locus].update(pileup)
                  else:
                      new_pileups[locus] = Pileup(locus, pileup.elements)
          return PileupCollection(new_pileups, parent=selff merge(self, *others):
          '''
          Return a new PileupCollection that is the union of self and the other
          specified collections.
          '''
          new_pileups = {}
          for collection in (self,) + others:
              for (locus, pileup) in collection.pileups.items():
                  if locus in new_pileups:
                      new_pileups[locus].update(pileup)
                  else:
                      new_pileups[locus] = Pileup(locus, pileup.elements)
          return PileupCollection(new_pileups, parent=self)
docs: Return a new PileupCollection that is the union of self and the other
          specified collections.