| line | !l | l&&!r | l&&r | condition | 
 
| 70 | 0 | 0 | 0 | $double_slashes_special and $path =~ s[^(//[^/]+)/?\z][]s || $path =~ s[^(//[^/]+)/][/]s | 
 
| 192 | 0 | 0 | 0 | defined $_ and -d $_ | 
 
|  | 0 | 0 | 0 | defined $_ and -d $_ and -w _ | 
 
| 197 | 0 | 0 | 0 | defined $tmpdir && $self->canonpath($tmpdir) | 
 
| 366 | 0 | 0 | 0 | $directory ne '' and $file ne '' | 
 
|  | 0 | 0 | 0 | $directory ne '' and $file ne '' and substr($directory, -1) ne '/' | 
 
|  | 0 | 0 | 0 | $directory ne '' and $file ne '' and substr($directory, -1) ne '/' and substr($file, 0, 1) ne '/' | 
 
| 412 | 0 | 0 | 0 | defined $base and length $base | 
 
| 434 | 0 | 0 | 0 | not length $base_directories and $self->file_name_is_absolute($base) | 
 
| 455 | 0 | 0 | 0 | @pathchunks and @basechunks | 
 
|  | 0 | 0 | 0 | @pathchunks and @basechunks and $self->_same($pathchunks[0], $basechunks[0]) | 
 
| 472 | 0 | 0 | 0 | @reverse_base and $reverse_base[0] eq $self->updir | 
 
| 573 | 0 | 0 | 0 | @dirs and $dirs[-1] eq '' | 
 
| 577 | 0 | 0 | 0 | $dir eq $updir and @collapsed | 
 
|  | 0 | 0 | 0 | $dir eq $updir and @collapsed and length $collapsed[-1] | 
 
|  | 0 | 0 | 0 | $dir eq $updir and @collapsed and length $collapsed[-1] and $collapsed[-1] ne $updir | 
 
|  | 0 | 0 | 0 | $dir eq $updir and @collapsed and length $collapsed[-1] and $collapsed[-1] ne $updir and $collapsed[-1] ne $curdir |