| line | !l | l&&!r | l&&r | condition | 
 
| 86 | 0 | 0 | 0 | $leg_in->{'contact'} ne $old_out->{'contact'} and not sip_uri_eq($leg_in->{'contact'}, $old_out->{'contact'}) | 
 
| 104 | 0 | 0 | 0 | $leg_out->{'contact'} ne $old_in->{'contact'} and not sip_uri_eq($leg_out->{'contact'}, $old_in->{'contact'}) | 
 
| 306 | 0 | 0 | 0 | $family && $host | 
 
| 376 | 0 | 1 | 0 | $ol and @$ol | 
 
| 390 | 0 | 0 | 1 | not @legs and $param->{'maddr'} | 
 
| 547 | 1 | 6 | 0 | $outgoing_leg != $incoming_leg || $self->{'force_rewrite'} and my(@contact) = $packet->get_header('contact') | 
 
| 561 | 0 | 0 | 0 | $addr =~ /^(\w+)(\@.*)/ and my $newaddr = invoke_callback($rewrite_contact, $1, $incoming_leg, $outgoing_leg) | 
 
| 580 | 1 | 0 | 6 | $outgoing_leg != $incoming_leg and $packet->is_request | 
 
| 646 | 0 | 0 | 0 | $response and $response->method eq 'INVITE' | 
| line | l | !l&&r | !l&&!r | condition | 
 
| 46 | 2 | 0 | 0 | delete $args{'dispatcher'} || croak('no dispatcher given') | 
 
| 47 | 0 | 2 | 0 | delete $args{'rewrite_contact'} || do {
	my $crypt = $args{'rewrite_crypt'} || \&Net::SIP::StatelessProxy::_stupid_crypt;
[\&Net::SIP::StatelessProxy::_default_rewrite_contact, $crypt, $disp]
} | 
 
| 67 | 0 | 0 | 7 | $force_rewrite or $contact =~ /\@/ | 
 
| 307 | 0 | 0 | 0 | $port ||= $proto eq 'tls' ? 5061 : 5060 | 
 
| 308 | 0 | 0 | 0 | $param->{'received'} || $param->{'maddr'} | 
 
| 318 | 0 | 0 | 0 | $host || $addr | 
 
| 374 | 1 | 0 | 0 | $route[0] =~ /<([^\s>]+)>/ && $1 || $route[0] | 
 
| 387 | 1 | 0 | 0 | $port ||= $proto eq 'tls' ? 5061 : 5060 | 
 
| 428 | 1 | 6 | 0 | $entry->{'nexthop'} ||= $entry->{'packet'}->uri | 
 
| 547 | 6 | 0 | 1 | $outgoing_leg != $incoming_leg || $self->{'force_rewrite'} | 
 
| 621 | 0 | 0 | 7 | $self->{'nathelper'} || do {
	DEBUG(100, 'no nathelper');
return
} | 
 
| 653 | 0 | 0 | 0 | $body or $method eq 'ACK' | 
 
|  | 0 | 0 | 0 | $body or $method eq 'ACK' or $method eq 'CANCEL' | 
 
|  | 0 | 0 | 0 | $body or $method eq 'ACK' or $method eq 'CANCEL' or $method eq 'BYE' |