| line | true | false | branch | 
 
| 608 | 0 | 102 | unless ref($transcript) =~ /seqfeature/i | 
 
| 616 | 682 | 690 | if ($type =~ /exon/i) { } | 
 
|  | 690 | 0 | elsif ($type =~ /cds|utr|untranslated/i) { } | 
 
|  | 0 | 0 | elsif ($type =~ /rna|transcript/i) { } | 
 
| 630 | 102 | 0 | if (@exons) { } | 
 
|  | 0 | 0 | elsif (@cdss) { } | 
 
|  | 0 | 0 | elsif (@transcripts) { } | 
 
| 651 | 0 | 0 | if (defined $list[$i + 1]) | 
 
| 652 | 0 | 0 | if ($list[$i + 1]->start - $list[$i]->end <= 1) | 
 
| 669 | 0 | 0 | unless $Bio::ToolBox::GeneTools::a->[1] <=> $Bio::ToolBox::GeneTools::b->[1] | 
 
| 678 | 102 | 0 | wantarray ? : | 
 
| 685 | 1 | 14 | if $k eq 'common' | 
 
| 686 | 1 | 13 | if $k eq 'uncommon' | 
 
| 689 | 1 | 0 | if (@alts) | 
 
| 695 | 1 | 0 | wantarray ? : | 
 
| 700 | 1 | 0 | wantarray ? : | 
 
| 705 | 1 | 0 | wantarray ? : | 
 
| 717 | 0 | 42 | unless ref($transcript) =~ /seqfeature/i | 
 
| 722 | 0 | 42 | unless @exons | 
 
| 723 | 0 | 42 | if scalar @exons == 1 | 
 
| 729 | 42 | 0 | if ($transcript->strand >= 0) { } | 
 
| 767 | 0 | 0 | if (@introns) | 
 
| 769 | 0 | 0 | unless $Bio::ToolBox::GeneTools::a->[1] <=> $Bio::ToolBox::GeneTools::b->[1] | 
 
| 776 | 42 | 0 | wantarray ? : | 
 
| 783 | 1 | 14 | if $k eq 'common' | 
 
| 784 | 1 | 13 | if $k eq 'uncommon' | 
 
| 787 | 1 | 0 | if (@alts) | 
 
| 793 | 1 | 0 | wantarray ? : | 
 
| 798 | 1 | 0 | wantarray ? : | 
 
| 803 | 1 | 0 | wantarray ? : | 
 
| 814 | 0 | 6 | unless @_ | 
 
| 815 | 6 | 0 | if (scalar @_ == 1) { } | 
 
|  | 0 | 0 | elsif (scalar @_ > 1) { } | 
 
| 817 | 0 | 6 | unless ref($_[0]) =~ /seqfeature/i | 
 
| 832 | 0 | 6 | unless @transcripts | 
 
| 835 | 0 | 6 | if (scalar @transcripts == 1) | 
 
| 838 | 0 | 0 | $do_exon ? : | 
 
| 846 | 39 | 39 | $do_exon ? : | 
 
| 860 | 81 | 84 | if (scalar @names == 1) { } | 
 
|  | 0 | 84 | elsif (scalar @names == $trx_number) { } | 
 
| 883 | 0 | 9 | unless $gene | 
 
| 884 | 0 | 9 | unless ref($gene) =~ /seqfeature/i | 
 
| 885 | 0 | 9 | if $gene->primary_tag =~ /rna|transcript/i | 
 
| 890 | 106 | 0 | if ($subf->primary_tag =~ /rna|transcript|\bprocessed/i) { } | 
 
|  | 0 | 0 | elsif ($subf->primary_tag =~ /^(?:cds|exon|\w+codon)$/i) { } | 
 
| 901 | 0 | 9 | if (not @transcripts and @exons) { } | 
 
|  | 0 | 18 | elsif (not @transcripts || @exons and @other) { } | 
 
| 922 | 0 | 217 | unless $Bio::ToolBox::GeneTools::a->[1] <=> $Bio::ToolBox::GeneTools::b->[1] | 
 
| 925 | 9 | 0 | wantarray ? : | 
 
| 931 | 0 | 1 | unless @_ | 
 
| 933 | 0 | 1 | if (scalar @_ == 1) { } | 
 
|  | 1 | 0 | elsif (scalar @_ > 1) { } | 
 
| 936 | 0 | 0 | unless @transcripts | 
 
| 937 | 0 | 0 | if scalar @transcripts == 1 | 
 
| 951 | 0 | 1 | unless (@exons) | 
 
| 957 | 0 | 1 | unless @exons | 
 
| 961 | 0 | 324 | unless $Bio::ToolBox::GeneTools::a->[1] <=> $Bio::ToolBox::GeneTools::b->[1] | 
 
| 981 | 5 | 79 | if ($ns == $os and $ne > $oe) { } | 
 
|  | 0 | 79 | elsif ($ns > $os and $ns < $oe and $ne > $oe) { } | 
 
|  | 13 | 66 | elsif ($ns > $oe) { } | 
 
| 1017 | 0 | 4 | unless ref($transcript) =~ /seqfeature/i | 
 
| 1018 | 0 | 4 | if ($transcript->primary_tag =~ /gene$/i) | 
 
| 1040 | 0 | 3 | unless $transcript | 
 
| 1041 | 0 | 3 | unless ref($transcript) =~ /seqfeature/i | 
 
| 1042 | 0 | 3 | if ($transcript->primary_tag =~ /gene$/i) | 
 
| 1050 | 1 | 2 | if $transcript->primary_tag =~ /mrna/i | 
 
| 1051 | 0 | 2 | if $transcript->source =~ /protein.?coding/i | 
 
| 1052 | 0 | 2 | if ($transcript->has_tag('transcript_biotype')) { } | 
 
|  | 2 | 0 | elsif ($transcript->has_tag('biotype')) { } | 
 
|  | 0 | 0 | elsif ($transcript->has_tag('gene_biotype')) { } | 
 
| 1055 | 0 | 0 | $biotype =~ /protein.?coding/i ? : | 
 
| 1060 | 0 | 2 | $biotype =~ /protein.?coding/i ? : | 
 
| 1067 | 0 | 0 | if $biotype =~ /protein.?coding/i | 
 
| 1071 | 0 | 0 | if $_->primary_tag eq 'CDS' | 
 
| 1078 | 0 | 13 | unless $transcript | 
 
| 1079 | 0 | 13 | unless ref($transcript) =~ /seqfeature/i | 
 
| 1082 | 43 | 127 | if $subfeat->primary_tag eq 'CDS' | 
 
| 1084 | 6 | 7 | unless @cds | 
 
| 1089 | 1 | 6 | wantarray ? : | 
 
| 1094 | 0 | 4 | unless ref($transcript) =~ /seqfeature/i | 
 
| 1096 | 2 | 2 | unless $cds | 
 
| 1097 | 2 | 0 | if ($transcript->strand >= 0) { } | 
 
| 1103 | 0 | 0 | if ($codon) { } | 
 
| 1104 | 0 | 0 | $codon->start < $cds->[0]->start ? : | 
 
| 1115 | 0 | 4 | unless ref($transcript) =~ /seqfeature/i | 
 
| 1117 | 2 | 2 | unless $cds | 
 
| 1118 | 2 | 0 | if ($transcript->strand >= 0) { } | 
 
| 1120 | 2 | 0 | if ($codon) { } | 
 
| 1121 | 0 | 2 | $codon->end > $cds->[-1]->end ? : | 
 
| 1134 | 0 | 4 | unless ref($transcript) =~ /seqfeature/i | 
 
| 1137 | 40 | 13 | unless $subf->primary_tag eq 'CDS' | 
 
| 1145 | 0 | 0 | unless ref($transcript) =~ /seqfeature/i | 
 
| 1150 | 0 | 0 | if $subfeat->primary_tag =~ /start.?codon/i | 
 
| 1152 | 0 | 0 | if $start_codon | 
 
| 1156 | 0 | 0 | unless $cdss | 
 
| 1157 | 0 | 0 | if ($transcript->strand >= 0) { } | 
 
| 1186 | 0 | 2 | unless ref($transcript) =~ /seqfeature/i | 
 
| 1191 | 0 | 37 | if $subfeat->primary_tag =~ /stop.?codon/i | 
 
| 1193 | 0 | 2 | if $stop_codon | 
 
| 1199 | 0 | 2 | unless $cdss | 
 
| 1200 | 2 | 0 | if ($transcript->strand >= 0) { } | 
 
| 1229 | 0 | 13 | unless ref($transcript) =~ /seqfeature/i | 
 
| 1238 | 104 | 120 | if ($type =~ /exon/i) { } | 
 
|  | 78 | 42 | elsif ($type =~ /cds/i) { } | 
 
|  | 42 | 0 | elsif ($type =~ /utr|untranslated/i) { } | 
 
|  | 0 | 0 | elsif ($type =~ /rna|transcript/i) { } | 
 
| 1254 | 12 | 1 | if (@utrs) { } | 
 
|  | 0 | 1 | elsif (@transcripts) { } | 
 
|  | 0 | 1 | elsif (@exons and @cdss) { } | 
 
| 1280 | 0 | 0 | if ($exon->end < $firstCDS->start) { } | 
 
|  | 0 | 0 | elsif ($exon->overlaps($firstCDS)) { } | 
 
|  | 0 | 0 | elsif ($exon->start > $firstCDS->end and $exon->end < $lastCDS->start) { } | 
 
|  | 0 | 0 | elsif ($exon->overlaps($lastCDS)) { } | 
 
|  | 0 | 0 | elsif ($exon->start > $lastCDS->end) { } | 
 
| 1283 | 0 | 0 | $transcript->strand >= 0 ? : | 
 
| 1291 | 0 | 0 | unless $pieces | 
 
| 1293 | 0 | 0 | $transcript->strand >= 0 ? : | 
 
| 1307 | 0 | 0 | unless $pieces | 
 
| 1309 | 0 | 0 | $transcript->strand >= 0 ? : | 
 
| 1319 | 0 | 0 | $transcript->strand >= 0 ? : | 
 
| 1336 | 2 | 10 | wantarray ? : | 
 
| 1341 | 0 | 2 | unless ref($transcript) =~ /seqfeature/i | 
 
| 1352 | 0 | 4 | unless ref($transcript) =~ /seqfeature/i | 
 
| 1356 | 0 | 4 | unless scalar @$utrs | 
 
| 1359 | 2 | 2 | wantarray ? : | 
 
| 1364 | 0 | 4 | unless ref($transcript) =~ /seqfeature/i | 
 
| 1368 | 0 | 4 | unless scalar @$utrs | 
 
| 1371 | 2 | 2 | wantarray ? : | 
 
| 1406 | 0 | 0 | unless ref($feature) =~ /seqfeature/i | 
 
| 1409 | 0 | 0 | if ($feature->primary_tag =~ /gene$/i and not defined $gene) | 
 
| 1419 | 0 | 0 | unless @exons | 
 
| 1423 | 0 | 0 | if ($gene) { } | 
 
| 1442 | 0 | 0 | if ($gene_biotype) | 
 
| 1447 | 0 | 0 | if ($biotype) | 
 
| 1451 | 0 | 0 | if ($tsl) | 
 
| 1463 | 0 | 0 | unless $Bio::ToolBox::GeneTools::a->[1] <=> $Bio::ToolBox::GeneTools::b->[1] | 
 
| 1466 | 0 | 0 | defined $subf->score ? : | 
 
|  | 0 | 0 | $subf->strand < 0 ? : | 
 
|  | 0 | 0 | defined $subf->phase ? : | 
 
| 1485 | 0 | 0 | unless ref($feature) =~ /seqfeature/i | 
 
| 1489 | 0 | 0 | if ($feature->primary_tag =~ /gene$/i) { } | 
 
|  | 0 | 0 | elsif ($feature->primary_tag =~ /rna|transcript/i) { } | 
 
| 1493 | 0 | 0 | if $ucsc | 
 
| 1499 | 0 | 0 | if $ucsc | 
 
| 1527 | 0 | 0 | unless ref($feature) =~ /seqfeature/i | 
 
| 1531 | 0 | 0 | if ($feature->primary_tag =~ /gene$/i) { } | 
 
|  | 0 | 0 | elsif ($feature->primary_tag =~ /rna|transcript/i) { } | 
 
| 1535 | 0 | 0 | if $ucsc | 
 
| 1541 | 0 | 0 | if $ucsc | 
 
| 1578 | 0 | 0 | unless $gene | 
 
| 1584 | 0 | 0 | if (ref($gene) =~ /seqfeature/i) { } | 
 
|  | 0 | 0 | elsif (ref $gene eq 'ARRAY') { } | 
 
| 1593 | 0 | 0 | unless @transcripts | 
 
| 1605 | 0 | 0 | if ($min_tsl eq 'best') { } | 
 
|  | 0 | 0 | elsif ($min_tsl =~ /^best(\d)$/) { } | 
 
|  | 0 | 0 | elsif ($min_tsl =~ /^\d$/) { } | 
 
|  | 0 | 0 | elsif ($min_tsl eq 'NA') { } | 
 
| 1608 | 0 | 0 | if (scalar @{$results{$tsl};}) | 
 
| 1618 | 0 | 0 | if (scalar @{$results{$tsl};}) | 
 
| 1619 | 0 | 0 | if ($tsl <= $max) { } | 
 
|  | 0 | 0 | elsif (not @keepers and $tsl > $max) { } | 
 
| 1629 | 0 | 0 | if (scalar @keepers == 0 and scalar @{$results{'NA'};}) { } | 
 
|  | 0 | 0 | elsif (scalar @keepers == 0 and scalar @{$results{'Missing'};}) { } | 
 
| 1647 | 0 | 0 | unless @keepers | 
 
| 1655 | 0 | 0 | unless $gene | 
 
| 1659 | 0 | 0 | if (ref($gene) =~ /seqfeature/i) { } | 
 
|  | 0 | 0 | elsif (ref $gene eq 'ARRAY') { } | 
 
| 1668 | 0 | 0 | unless @transcripts | 
 
| 1674 | 0 | 0 | if ($basic and $basic eq 'basic') | 
 
| 1686 | 0 | 1 | unless $gene | 
 
| 1688 | 0 | 1 | unless $check | 
 
| 1692 | 1 | 0 | if (ref($gene) =~ /seqfeature/i) { } | 
 
|  | 0 | 0 | elsif (ref $gene eq 'ARRAY') { } | 
 
| 1701 | 0 | 1 | unless @transcripts | 
 
| 1709 | 2 | 11 | if ($value and $value =~ /$check/i) | 
 
| 1728 | 0 | 0 | $transcript->strand < 0 ? : | 
 
| 1744 | 0 | 0 | if ($gene) { } | 
 
| 1754 | 0 | 0 | if (is_coding($transcript)) { } | 
 
| 1757 | 0 | 0 | if ($start and $stop) { } | 
 
| 1787 | 1 | 0 | if (ref($gene) =~ /seqfeature/i) { } | 
 
| 1789 | 0 | 1 | if ($gene->primary_tag =~ /transcript|rna/i) |