| line | true | false | branch | 
 
| 142 | 3761 | 56257 | unless exists $$self{'buffer'} | 
 
| 155 | 3753 | 14 | unless ($c == 255) | 
 
| 168 | 0 | 0 | unless ($c == 0) | 
 
| 186 | 0 | 60010 | unless defined $$self{'counter'} | 
 
| 189 | 3750 | 56260 | if (++$$self{'subpos'} == $$self{'blksize'}) | 
 
| 199 | 1 | 0 | unless ($$self{'subpos'} == 0) | 
 
| 203 | 0 | 0 | if $$self{'counter'} =~ /\A\0*\z/ | 
 
| 211 | 0 | 7 | if $length < 0 | 
 
| 212 | 1 | 6 | unless defined $_[1] | 
 
| 213 | 4 | 3 | if (not defined $offset) { } | 
 
|  | 1 | 2 | elsif ($offset < 0) { } | 
 
|  | 1 | 1 | elsif ($offset > length $_[1]) { } | 
 
| 217 | 0 | 1 | if $offset < -length($_[1]) | 
 
| 229 | 5 | 3 | if ($length < $avail) | 
 
| 253 | 20 | 0 | if (defined $ctr) { } | 
 
| 254 | 0 | 20 | if $ctr =~ /\A.{4,}[^\0]/s | 
 
| 255 | 0 | 20 | if $$self{'blksize'} < 4 | 
 
| 258 | 0 | 0 | if $$self{'blksize'} >= 4 | 
 
| 262 | 0 | 20 | unless ($pos - $$self{'subpos'}) / $$self{'blksize'} == $nblocks | 
 
| 272 | 11 | 8 | if ($whence == 0) { } | 
 
|  | 7 | 1 | elsif ($whence == 1) { } | 
 
|  | 1 | 0 | elsif ($whence == 2) { } | 
 
| 274 | 3 | 8 | if $offset < 0 | 
 
| 278 | 0 | 8 | if ($$self{'blksize'} < 4) { } | 
 
| 280 | 0 | 0 | unless my $chopped = substr($ctr, $$self{'blksize'}, 4 - $$self{'blksize'}, '') | 
 
| 282 | 0 | 0 | if ($chopped =~ /\A\x{01}\0*\z/ and $subpos == 0) { } | 
 
|  | 0 | 0 | elsif (not $chopped =~ /\A\0+\z/) { } | 
 
| 299 | 0 | 7 | if $pos == -1 | 
 
| 303 | 0 | 1 | if $offset > 0 | 
 
| 304 | 1 | 0 | if $$self{'blksize'} >= 4 | 
 
| 307 | 0 | 0 | unless $pos / $$self{'blksize'} == $nblocks | 
 
| 314 | 4 | 3 | (shift())->sysseek(@_) ? : | 
 
| 323 | 0 | 1 | unless rand $pos and @$pos == 2 | 
 
| 325 | 1 | 0 | unless (not defined $ctr and $subpos == 0) | 
 
| 326 | 0 | 1 | unless rand $ctr and length $ctr == $$self{'blksize'} and is_number $subpos and $subpos >= 0 and $subpos < $$self{'blksize'} |