| line | true | false | branch | 
 
| 36 | 3 | 40 | if (@_ == 1 and ref $_[0] eq 'HASH') { } | 
 
|  | 1 | 39 | elsif (@_ == 1 and ref $_[0] eq 'ARRAY' and @{$_[0];} % 2 == 0) { } | 
 
|  | 0 | 39 | elsif (@_ % 2 == 0) { } | 
 
|  | 39 | 0 | elsif (@_ == 1 and not defined $_[0]) { } | 
 
| 68 | 3 | 26 | unless defined $line | 
 
| 75 | 0 | 26 | unless ($line =~ /^(Node-path|Revision-number): /) | 
 
| 82 | 128 | 0 | if ($line =~ /^([^:]+):\s*(.*)$/) { } | 
 
| 103 | 358 | 214 | unless exists $$self{$key} | 
 
| 121 | 0 | 0 | unless (eval {
	do {
	$fh->isa('IO::Handle')
}
} or ref $fh eq 'GLOB' or ref \$fh eq 'GLOB') | 
 
| 140 | 4 | 5 | if (exists $$header{'Revision-number'}) { } | 
 
|  | 0 | 5 | elsif (not exists $$header{'Node-path'}) { } | 
 
|  | 0 | 5 | elsif (not exists $$header{'Node-action'}) { } | 
 
| 141 | 0 | 4 | unless (exists $$header{'Prop-content-length'} and exists $$header{'Content-length'}) | 
 
| 162 | 0 | 5 | if ($action eq 'delete') { } | 
 
|  | 5 | 0 | elsif ($action eq 'add' or $action eq 'replace') { } | 
 
|  | 0 | 0 | elsif ($action eq 'change') { } | 
 
| 163 | 0 | 0 | exists $$header{'Node-kind'} ? : | 
 
| 166 | 0 | 0 | if (keys %$header != $num_headers_expected) | 
 
| 177 | 0 | 5 | if (not exists $$header{'Node-kind'}) { } | 
 
|  | 2 | 3 | elsif ($$header{'Node-kind'} eq 'file') { } | 
 
|  | 3 | 0 | elsif ($$header{'Node-kind'} eq 'dir') { } | 
 
| 182 | 0 | 0 | unless (exists $$header{'Text-content-length'} and exists $$header{'Text-content-md5'} and not exists $$header{'Node-copyfrom-rev'} ^ exists $$header{'Node-copyfrom-path'} or exists $$header{'Node-copyfrom-rev'} and exists $$header{'Node-copyfrom-path'} and not exists $$header{'Text-content-length'} ^ exists $$header{'Text-content-md5'}) | 
 
| 210 | 0 | 3 | if (exists $$header{'Text-content-length'} or exists $$header{'Text-content-md5'}) |