| line | !l | l&&!r | l&&r | condition | 
 
| 208 | 0 | 0 | 0 | defined $fh and defined $encoding | 
 
|  | 0 | 0 | 0 | defined $fh and defined $encoding and $] >= 5.008 | 
 
| 233 | 0 | 0 | 0 | &blessed($uri) and $uri->isa('URI') | 
 
| 303 | 0 | 0 | 0 | &blessed($url) and $url->isa('URI') | 
 
| 304 | 0 | 0 | 0 | $uri eq $url || URI::Escape::uri_unescape($uri) eq $url and $url =~ m[^\s*[[:alnum:]]+://] | 
 
| 322 | 0 | 0 | 0 | &blessed($href) and $href->isa('URI') | 
 
| 370 | 0 | 0 | 0 | &blessed($f1) && $f1->isa('URI') | 
 
| 371 | 0 | 0 | 0 | &blessed($f2) && $f2->isa('URI') | 
 
| 374 | 0 | 0 | 0 | not ref $f1 || ref $f2 and $^O ne 'MSWin32' | 
 
|  | 0 | 0 | 0 | not ref $f1 || ref $f2 and $^O ne 'MSWin32' and -f $f1 | 
 
|  | 0 | 0 | 0 | not ref $f1 || ref $f2 and $^O ne 'MSWin32' and -f $f1 and -f $f2 | 
 
| 393 | 0 | 0 | 0 | $d1 == $d2 && $i1 != 0 && $i1 == $i2 | 
 
| 418 | 0 | 0 | 0 | -x $Treex::PML::IO::gzip and -x $Treex::PML::IO::zcat | 
 
| 496 | 0 | 0 | 0 | eval {
	do {
	require IO::Zlib;
$tmp = 'IO::Zlib'->new
}
} and $tmp | 
 
| 572 | 0 | 0 | 0 | get_protocol($file) eq 'file' and _is_gzip($uri) | 
 
| 579 | 0 | 0 | 0 | eval {
	do {
	require IO::Zlib;
$tmp = 'IO::Zlib'->new
}
} and $tmp | 
 
| 613 | 0 | 0 | 0 | $status and $status->is_error | 
 
|  | 0 | 0 | 0 | $status and $status->is_error and $status->code == 401 | 
 
| 656 | 0 | 0 | 0 | $Treex::PML::IO::ssh and -x $Treex::PML::IO::ssh | 
 
|  | 0 | 0 | 0 | $Treex::PML::IO::ssh and -x $Treex::PML::IO::ssh and $proto =~ /^(ssh|fish|sftp)$/ | 
 
| 668 | 0 | 0 | 0 | $Treex::PML::IO::kioclient and -x $Treex::PML::IO::kioclient | 
 
| 677 | 0 | 0 | 0 | $Treex::PML::IO::curl and -x $Treex::PML::IO::curl | 
 
|  | 0 | 0 | 0 | $Treex::PML::IO::curl and -x $Treex::PML::IO::curl and $proto =~ /^(?:https?|ftps?|gopher)$/ | 
 
| 687 | 0 | 0 | 0 | defined $user_pipe and not $user_pipe =~ /^\|/ | 
 
| 713 | 0 | 0 | 0 | $Treex::PML::IO::ssh and -x $Treex::PML::IO::ssh | 
 
|  | 0 | 0 | 0 | $Treex::PML::IO::ssh and -x $Treex::PML::IO::ssh and $proto =~ /^(ssh|fish|sftp)$/ | 
 
| 724 | 0 | 0 | 0 | $Treex::PML::IO::kioclient and -x $Treex::PML::IO::kioclient | 
 
| 733 | 0 | 0 | 0 | $Treex::PML::IO::curl and -x $Treex::PML::IO::curl | 
 
|  | 0 | 0 | 0 | $Treex::PML::IO::curl and -x $Treex::PML::IO::curl and $proto =~ /^(?:ftps?)$/ | 
 
| 802 | 0 | 0 | 0 | $Treex::PML::IO::ssh and -x $Treex::PML::IO::ssh | 
 
|  | 0 | 0 | 0 | $Treex::PML::IO::ssh and -x $Treex::PML::IO::ssh and $proto =~ /^(ssh|fish|sftp)$/ | 
 
| 812 | 0 | 0 | 0 | $Treex::PML::IO::kioclient and -x $Treex::PML::IO::kioclient | 
 
| 840 | 0 | 0 | 0 | $proto1 eq 'file' and $proto2 eq 'file' | 
 
| 862 | 0 | 0 | 0 | $Treex::PML::IO::ssh and -x $Treex::PML::IO::ssh | 
 
|  | 0 | 0 | 0 | $Treex::PML::IO::ssh and -x $Treex::PML::IO::ssh and $proto =~ /^(ssh|fish|sftp)$/ | 
 
| 866 | 0 | 0 | 0 | $uri2 =~ m[^\s*(?:ssh|sftp|fish):(?://)?([^-/][^/]*)(/.*)$] and $1 eq $host | 
 
| 878 | 0 | 0 | 0 | $Treex::PML::IO::kioclient and -x $Treex::PML::IO::kioclient | 
 
| 946 | 0 | 0 | 0 | &blessed($fh) and $fh->isa('IO::Zlib') | 
 
| 949 | 0 | 0 | 0 | ref $fh && $fh->close | 
 
| 975 | 0 | 0 | 0 | $is_temporary and $local_file ne $uri | 
| line | l | !l | condition | 
 
| 78 | 1 | 0 | eval {
	do {
	require File::Which;
\&File::Which::which
}
} || sub {
	
} | 
 
| 97 | 0 | 1 | $Treex::PML::IO::ssh_opts ||= '-C' | 
 
| 98 | 0 | 1 | $Treex::PML::IO::reject_proto ||= '^(pop3?s?|imaps?)\\$' | 
 
| 234 | 0 | 0 | $uri->scheme || 'file' | 
 
| 420 | 0 | 0 | "| $pipe | $Treex::PML::IO::gzip $Treex::PML::IO::gzip_opts > " . quote_filename($file) || undef $fh | 
 
| 422 | 0 | 0 | "$Treex::PML::IO::zcat $Treex::PML::IO::zcat_opts < " . quote_filename($file) . " | $pipe |" || undef $fh | 
 
| 429 | 0 | 0 | "| $pipe > " . quote_filename($file) || undef $fh | 
 
| 431 | 0 | 0 | "$pipe < " . quote_filename($file) . ' |' || undef $fh | 
 
| 700 | 0 | 0 | $cmd || undef $fh | 
 
| 910 | 0 | 0 | open_file($filename, $rw) || undef | 
 
| 912 | 0 | 0 | get_store_fh($filename) || undef | 
 
| 974 | 0 | 0 | open_backend($local_file, 'r') || (return) | 
| line | l | !l&&r | !l&&!r | condition | 
 
| 59 | 0 | 0 | 0 | $role eq 'IO' or $role eq 'Treex::PML::IO' | 
 
| 92 | 0 | 1 | 0 | $Treex::PML::IO::zcat ||= _find_exe('zcat') | 
 
| 93 | 0 | 1 | 0 | $Treex::PML::IO::gzip ||= _find_exe('gzip') | 
 
| 94 | 0 | 0 | 1 | $Treex::PML::IO::kioclient ||= _find_exe('kioclient') | 
 
| 95 | 0 | 1 | 0 | $Treex::PML::IO::ssh ||= _find_exe('ssh') | 
 
| 96 | 0 | 0 | 1 | $Treex::PML::IO::curl ||= _find_exe('curl') | 
 
| 161 | 0 | 0 | 0 | ref $handler eq 'CODE' or ref $handler eq 'ARRAY' | 
 
| 304 | 0 | 0 | 0 | $uri eq $url || URI::Escape::uri_unescape($uri) eq $url | 
 
| 374 | 0 | 0 | 0 | ref $f1 || ref $f2 | 
 
| 530 | 0 | 0 | 0 | $proto eq 'ntred' or $proto =~ /$Treex::PML::IO::reject_proto/ | 
 
| 712 | 0 | 0 | 0 | $proto eq 'http' or $proto eq 'https' | 
 
| 756 | 0 | 0 | 0 | $proto eq 'ntred' or $proto =~ /$Treex::PML::IO::reject_proto/ |