docs: def reads(self):
          '''
          The reads in this PileupCollection. All reads will have an alignment
          that overlaps at least one of the included loci.
  
          Since SAM (and pysam) have no real notion of a "read", the returned
          instances are actually pysam.AlignedSegment instances, (i.e. 
          alignments). However, only one alignment will be returned by this
          method per read.
          
          Returns
          ----------
          List of pysam.AlignedSegment instances. If a particular read has more
          than one alignment in this PileupCollection (e.g. one primary and one
          secondary), then the alignment returned is the one with the highest
          mapping quality.
          '''
          # TODO: Optimize this.
  
          def alignment_precedence(pysam_alignment_record):
              return pysam_alignment_record.mapping_quality
  
          result = {}
          for pileup in self.pileups.values():
              for e in pileup.elements:
                  key = read_key(e.alignment)
                  if key not in result or (
                          alignment_precedence(e.alignment) >
                          alignment_precedence(result[key])):
                      result[key] = e.alignment
          return list(result.values())