code: def coding_exons(self):
          
          # drop the trailing comma
          starts = (long(s) for s in self.exonStarts[:-1].split(","))
          ends = (long(s) for s in self.exonEnds[:-1].split(","))
          return [(s, e) for s, e in zip(starts, ends)
                                            if e > self.cdsStart and
                                               s < self.cdsEnd]
docs: includes the entire exon as long as any of it is > cdsStart and <
          cdsEnd